[发明专利]一种提升web服务器性能的文件系统及方法在审
申请号: | 201210275779.9 | 申请日: | 2012-08-03 |
公开(公告)号: | CN103577470A | 公开(公告)日: | 2014-02-12 |
发明(设计)人: | 李小勇;丁凯;单蓉胜 | 申请(专利权)人: | 上海交通大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 上海光华专利事务所 31219 | 代理人: | 李仪萍 |
地址: | 200240 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提升 web 服务器 性能 文件系统 方法 | ||
技术领域
本发明属于计算机硬件管理领域,涉及一种文件系统及方法,特别是涉及一种提升web服务器性能的文件系统及方法。
背景技术
在操作系统中,文件系统处于一个很重要的地位,随着计算机硬件性能(诸如CPU,总线带宽)的不断提升,硬盘正日益成为系统性能瓶颈所在。而文件系统用来管理磁盘上数据,如何高效地管理磁盘数据,充分发挥磁盘设备的性能一直是文件系统追求的目标。
较早的诸如ext2文件系统将磁盘按照固定大小如1024字节,2048字节,4096字节等划分成块,文件数据存放在块中,这样导致超过块大小的文件无法连续存放,小于磁盘块大小的文件可能会导致严重的磁盘碎片问题。
由Hans Reiser及其团队Namesys开发的ResierFs擅长处理小文件居多的应用环境。ResierFs对一些小文件不分配inode,而是将这些小文件打包,存放在同一个磁盘分块中。而且ReiserFS是基于快速平衡树(balanced tree)搜索,平衡树在搜索性能上非常卓越。
Silicon Graphics为IRIX操作系统开发的高性能日志文件系统XFS擅长处理大文件。它提供了基于extent的分配方式,可变块尺寸允许用户根据需要在格式化时指定块大小,从512字节到64KB不等,其在小文件应用环境下可尽量减少磁盘碎片问题,延迟分配机制可最大限度地连续存放文件数据,并且在提高性能的同时能够减少磁盘碎片问题。
上述传统文件系统采用各种思想来对文件系统性能进行优化,但由于需要为文件保存inode,dentry等数据结构,因此每次读写数据之前需要进行多次额外的磁盘操作,这样便无法保证文件数据在磁盘上连续存放的同时尽量减少磁盘碎片。传统文件系统在读文件数据之前首先需要查找文件的元数据信息,而这通常也是保存在磁盘上。这样,在读有效数据前需要多次IO操作来定位文件的存储位置。对于小文件来说,这会成倍地降低文件系统性能。虽然可以对部分文件元数据进行缓存,但由于当前文件系统的元数据信息过于复杂,缓存量不应过大。因此,读写过程的主要时间消耗在磁头定位过程,这样便对小文件IO性能产生了影响。还有传统IO操作是同步操作,同步IO请求执行过程中会阻塞应用程序,这样会影响应用程序的性能问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种提升web服务器性能的文件系统及方法,用于解决现有技术中大文件数据无法连续存放的在磁盘上,小文件数据会带来磁盘碎片、以及IO性能和应用程序性能降低的问题。
为实现上述目的及其他相关目的,本发明提供一种提升web服务器性能的文件系统,所述文件系统包括所述磁盘空间包括磁盘元数据区和磁盘数据区;所述磁盘元数据区包括文件系统超级块、文件目录项位图、卷信息数组、以及文件目录项;所述磁盘数据区包括多个大小固定的卷;其中,每个卷包括多个大小相同、连续的文件磁盘块,所述文件磁盘块用于存放web服务器中的小文件。
优选地,所述卷的大小是可调节的,从32MB增长至256MB。
优选地,所述文件磁盘块的大小是可调节的,从4KB按倍增长至128KB。
优选地,所述文件目录项包括文件名、文件磁盘块号以及文件大小,所述文件目录项缓存于内存中组织成Hash链表数组。
优选地,所述文件系统还包括简化后的应用程序接口,所述简化后的应用程序接口包括mount应用程序接口、unmount应用程序接口、read应用程序接口、write应用程序接口、delete应用程序接口、以及flush应用程序接口。
本发明提供一种提升web服务器性能的方法,其特征在于:所述方法包括:
将磁盘空间划分成磁盘元数据区和磁盘数据区;
将所述磁盘元数据区划分成文件系统超级块、文件目录项位图、卷标信息数组、以及文件目录项;
将所述磁盘数据区划分成多个大小固定的卷;其中,每个卷被划分成多个大小相同连续的文件磁盘块。
优选地,所述方法还包括查找元数据区上的信息;所述查找元数据区上的信息的实现步骤包括:
Q1,简化文件元数据区上的信息,只记录文件名、文件磁盘块号、以及文件大小;
Q2,简化应用程序接口;
Q3,将文件目录项全部缓存于内存之中;
Q4,通过文件名进行Hash查找,将所述文件目录项链入Hash链表数组中。
优选地,所述方法还包括异步执行应用程序。
优选地,当所述应用程序为read应用程序时,异步执行read应用程序的过程包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210275779.9/2.html,转载请声明来源钻瓜专利网。