浏览 6024 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-07-17
最后修改:2010-05-18
Ramdisk,即将内存作为磁盘用。内存的速度之快,是电脑存储设备中仅次于CPU缓存和显示卡显存的,当然比磁盘的IO读写要快很多了; 1、大家可以先通过ls /dev/ram*来查看有多少可供使用的Ramdisk。 2、使用其中一个来创建 mke2fs /dev/ram4,我这选用的是ram4,一般来说总共有16个 执行下来可以看到有一行1024 inodes, 4096 blocks,默认就是4M,这肯定不够的 3、 设置虚拟磁盘的大小,我装的是Red Hat Enterprise Linux Server,所以我在/etc/grub.conf中直接修改 kernel /vmlinuz-2.6.18-8.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet ramdisk_size=102400;这样,1G应该差不多了 4、加载ramdisk, mount /dev/ram4 /tmp/your real directory;如果想取消,直接umount /dev/ram4 /tmp/your real directory 5、用df -k /dev/ram4查看你用了多少虚拟磁盘了,如果不是0%或者1%,那就说明生效了 6、我的图片放tomcat下做测试的,所以在server.xml的Host标签中加上 <Context path="/images" docBase="/tmp/ramdisk4/images"/> 最后,自己通过url试一下吧 这个东西我只是抛砖引玉一下,大家如果是用apache或者lighttpd做静态资源的服务器的话,可以按照我这种方式来配置;但是有一点,这个东西当系统reboot以后,就什么都没有了,需要重新设置,所以说用户上传的东西,最好是写个shell来控制一下,及时备份;不过对于我们的生产环境,我们暂时没有把用户上传的路径做虚拟磁盘,没敢去尝试;当linux都reboot了,那就说明我们整个业务都停掉需要做调整,所以无所谓的。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-07-22
搞那么复杂,直接用tmpfs不行么?
|
|
返回顶楼 | |
发表时间:2009-07-22
恩,刚看了一下,tmpfs的方式,是要简单一些,不过都是通过挂载文件系统的方式做的,我想2者应该没什么本质的区别
|
|
返回顶楼 | |
发表时间:2009-07-22
这个,最好前面加squid.
如果图片太多,楼主这种方法就不灵了 |
|
返回顶楼 | |
发表时间:2009-07-22
最后修改:2009-07-22
xieye 写道 这个,最好前面加squid.
如果图片太多,楼主这种方法就不灵了 为什么图片太多就不太好了?squid我没试过,我只知道cdn是这么干的,请问你有没有在生产环境中 使用squid来做加速,或者能否告诉我,图片为什么太多就不好,是文件寻址速度受到影响了吗?如果 是这样的话,那我可以划分多个ram挂载文件系统,我想应该也没问题吧 |
|
返回顶楼 | |
发表时间:2009-07-22
这个用Squid、 NCache、 Varnish 来做确实更适合。
|
|
返回顶楼 | |
发表时间:2009-07-22
forthelichking 写道 恩,刚看了一下,tmpfs的方式,是要简单一些,不过都是通过挂载文件系统的方式做的,我想2者应该没什么本质的区别
mount -t tmpfs tmpfs /tmp/your_dir 一个命令搞定,而且tmpfs是动态增长,按需分配内存,不仅是“简单一些”而已。 |
|
返回顶楼 | |