- 21
- Dec
话说今天又发生了“Out of Memory“的杯具了,上一次发生是在10月20日时:悲劇發生了……Out of RAM
事情是这样的,週末的时候,把UTCOM正式放在Webfaction上内测了,然后紧接着呢,吼吼也写了个小型Django应用:GTUG报名工具(谁叫伟大的西朝鲜把Google Doc强姦了呢),就这样,这个主机上一共有3个Django应用+1个PHP的WordPress应用。
然后我今天在上班途中,就收到一封Webfaction的电邮,大致意思是:您的主机超出使用限定内存(限定80MB,实际使用了约130MB)20分钟了,因此我们将其kill掉了。
对于这个結果,我一点也不惊讶,3个Django应用+1个PHP应用,使用掉130MB的内存,不是很夸张了。最夸张的是在Mediatemplate时,我一个Django(IMTX),就把256MB内存用完了,你说Mediatemplate到底好不好呢?
对Webfaction还是比较满意的,但是未来UTCOM肯定是不能放Webfaction上了,好了,于是又决定买VPS了。折腾啊折腾!
后来,骨头给我看了篇文章,说是VPS的两种虚拟模式:Xen和Openvz的一些比较,另外还提到了ramhost.us这个相对实惠的OpenVZ式VPS虚拟机提供商。
本来是打算继续买之前买过的Linode的,因为Linode确实相当专业!但是看完这篇文章后,我打算试试使用OpenVZ技术的VPS,毕竟我很赞同一个观点,对网站来说,内存比CPU重要(实际上桌面也何尝不是如此呢)
我就稍微看了下ramhost,我不得不说,这是我见过那么多主机供应商,看起来最难看的一家了!网站设计的太难看了,LOGO居然还有锯齿,前端设计,说难听点,TX在初中的时候做的网站,就比他们漂亮了。
但我考虑了一下后,还是尝试一下他们的服务。首先,12刀每月的那档,就有512MB内存,还有峰值1GB的可能,硬盘、带宽也都不错。其他基本上没什么好说的了,后台很简陋,想想既然是VPS,后台能重启和reload就行了,对吧?
晚上的时候,ramhost给我开通了,然后我就开始折腾了,选择的服务器是Ubuntu 9.10。
我登录进去的时候,吓一跳,RAM是:1024MB!可用100%。真的假的,峰值内存,就这么可用吗?
然后我就开始装软件,装Django……不知道折腾到哪个步骤时,终于,内存占用一下子到了60%了,呃,峰值内存用不到啰。这个时候,相当于我用了512MB的中的20%了,另外还有80%空閒,也够我跑了。
不知道为什么,以前那么专业的Linode给我用,我觉得VPS维护太麻烦,这次,又土又不“专业”而且后台还超简陋的Ramhost给我用,我居然就不放在心上,一心一意地在很短的时间内就把服务器的apache,python,django,mysql还有sendmail都搞定了。
简单地纪录下最始初的设置吧,免得以后有类似工作时总是要回一遍:
Ramhost默认是一个最精简的Ubuntu 9.10+root,开始設定:
1. 增加新用户,用这条交互式指令,一步步做下去就OK。
adduser username
2. 将用户加入sudo组,并启用sudo功能
gpasswd -a username sudo
visudo
3. 禁用root帐户
passwd -l root
sudo apt-get install ubuntu-minimal #会安装一些Python、认证之类的软件包
sudo apt-get install language-pack-en #安装英文环境,这步会产生locale
sudo apt-get install vim bash-completion openssh-server byobu #分别是神器vim,bash命令补全,ssh服务,还有byobu这个超棒的screen profile。
5. 服务器工具
sudo apt-get install apache2 libapache2-mod-wsgi mysql-server-5.1 python-mysqldb python-django python-imaging python-setuptools python-gdata sendmail
不多介绍了,都是一些最基本的服务器工具,跑django用的是官方推荐的wsgi模式。有机会想试试其他如lighttpd和nginx。
初步体验ramhost还是蛮不错的,速度也相当快(指网络接入速度),最終如何就又要时间来考验了。
生命的意义在于折腾啊!
原来是这样啊,难怪下午突然不能访问
唉,我的VPS今晚也悲剧的out of memory了,只好关掉了pptpd服务
恩。之前也很中意这款VPS,等现在这个到期,也打算下手了
哈哈,这vps开得还挺快啊,不错。
不过,它默认的ubuntu系统里,难道连python都没有的?
很久以前ramhost的界面還要簡陋的。我見過的最簡略的主機商是prgmr http://prgmr.com/xen/
ramhost公布每個server的詳細status的確很贊。
嗯,我也看中ramhost能公布这些server的详情的优势,这样很透明。
prgmr……哇,好Geek!
"但是看完这篇文章后,我打算试试使用OpenVZ技术的VPS,毕竟我很赞同一个观点,对网站来说,内存比CPU重要(实际上桌面也何尝不是如此呢)"
OpenVZ通常内存是要多不少,但据说那只是“看上去”多而已。
能把你看的那篇文章给分享下么?没用过OpenVZ的VPS,想借鉴一下。
这篇文章就是Simplecd的作者写的,让我大开眼界,地址是这里:http://obmem.com/?p=296
谢谢回复。
恰好自己闲逛也看到了这个帖子,怀疑你看的是同一个,就到你这来看了下,果不其然:)
这么说,用OpenVZ的话得靠服务商不黑心了。。呵呵。貌似ramhost还不错么:)
(偶现在用的96M的xen,羞愧得要钻地缝了。。1分钟开个vi,这事经常干)
再,
这个blog,弄个有回复时自动邮件通知的功能吧:)
Ramhost确实还不错,关于邮件自动通知功能,嗯,一直拖着,不紧急所以没去开发,看什么时候有空了。嘿嘿。
我的 Django 应用,平均每个 apache 进程要吃掉 40M 内存,搞得我也非常郁闷。
你是用什么模式跑Django的?是WSGI吗?
有时间也去折腾一个玩玩。
据说Nginx性能不错,跑PHP没有问题,就是不知道能不能跑Python。
Nginx可以通过fastcgi的模式来跑Python,也有WSGI,但是好像没apache支持好。
饿,想问下,新的VPS,要花很多时间调整安全设置吗?
看具体的应用了,一般情况下给所有的东西设置上密码,也算安全设置了。
想要 low footprint 真的可以考虑 lighttpd 或者 nginx,甚至 cherokee (这个有本地 GUI 的配置界面,几乎完全傻瓜化,也可以通过 ssh tunneling 远程使用)
我之前用 apache + WSGI,现在用 lighttpd + fastcgi,感觉还不错
嗯,我也考虑用lighttpd或nginx,apache的资源占用确实有点高了。请问你的应用大概是怎么个承载力呢?
你的vps多少钱? 我们公司有独立服务器。在美国,10M接入。我装的gentoo系统。要不要考虑下?呵呵
512MB内存的12刀一个月,你们公司的大概是什么配置呢?
目前我博客使用的是burst.net的linux vps,用的是默认的操作系统centos。用了一个月感觉不错,价格是5.9USD/mon, 虚拟内存限制512M-1G,硬盘20G。他们提供2个IP。
因为我博客是使用自己的服务器软件,所以内存占用仅有几MB,基本上绰绰有余啊~~~