varnish安装记录

varnish和squid相比最大的优势就是简单快速,简单是安装和配置都简单,快速是运行速度比squid更快,当然,快的前提是varnish比squid占用更多的内存,估计当年设计squid的时候内存还是很贵的东西,所以更多的侧重硬盘,使用内存多,当然还有一个很显而易见的弱点是机器冷启动时候恢复缓存的时间相比squid要长。

wget http://downloads.sourceforge.net/project/varnish/varnish/2.0.6/varnish-2.0.6.tar.gz?use_mirror=ncu

tar zxvf varnish-2.0.6.tar.gz
cd varnish-2.0.6
./configure  –prefix=/srv/varnish
make
make install

启动命令:
/srv/varnish/sbin/varnishd -a :8088 -b localhost:8080

由于我指定了安装目录,所以加上了路径,-a参数表示varnish的监听端口,正常情况下应该监听是80端口,也就是web服务端口,我测试机上被使用掉了,所以用了8088端口, -b 是表示后端(backend)的地址,如果backend在这里指定,那么只能指定一个后端,如果使用的配置文件可以指定多个backend,我的配置文件位置位于/srv/varnish/etc/varnish。

在web服务器的目录中创建一个index.html文件,然后通过varnish进行代理访问.

第一次访问结果如下:

2

第二次访问结果如下:
3

根据请求头,我们看到的确是通过vanish来代理访问后端的,第一次访问age 为0 ,第二次访问age为71,说明这个文件已经在varnish中缓存了,此时可以通过/srv/varnish/bin/varnishstat 来查看一些参数,其中Hitrate 一行应该为1,因为命中了一次。
varnish 配置文件还是很有搞头的一个东西,有点类似与Nginx的语法,虽然不是很像,比如对正则的支持,可以绑定和去除head、Cookie等等功能,有时间的话,翻译一下varnish的introduction

HTML重构的一些最佳实践

以下所有内容都摘自《重构HTML这本书》,留在这里做个笔记。版权属于原作者。

1、将名称改为小写。所有的元素和属性的名称都要小写,大部分实体名称也要小写,当然设计大写字母的除外。
2、给所有的属性都加上引号。
3、补足遗漏的属性值。为所有不带属性值的属性加上属性值。如:<input type=”radio” checked>应该改成:<input type=”radio” checked=”checked”>
4、将空标签替换成空元素标签,如将<br>这样的元素替换为<br class=”empty” />
5、添加结束标签。关闭所有的段落、清单项目、表格单元格和其他非空的元素
6、消除重叠,在父级元素上关闭每个子元素
7、把文本转换成UTF-8,因为他是唯一全平台支持的字符集
8、转义小于号,尽管有些浏览器有时候能够复原未转义的小于号,但并不是所有的浏览器都能。一个未转义的小于号更有可能导致浏览器中的内容被隐藏。就算你没有完全转换成XHTML,这也是一个需要修复的问题。
9、转义&符号,把&转换成&amp;尽管大部分浏览器都可以处理空格后原始的&符号,但是如果没有空格会迷惑一小部分浏览器。未经转义的&符号会对读者隐藏。
10、替换虚构的实体引用,如将&copyright; 替换成&copy;
11、加入根元素,确保每个页面都一个html根元素。

迟到的2009总结

2008年末在车东的要求下写了08总结,其实08年没有什么好总结的,干了一点点小的事情,不错也算是第一步,如果09年的是充满机遇的一年,那么08年也算是一个准备吧,刚哥也好,神仙也好,曹宇伟也好,甚至科科和小龙都给了我莫大的帮助和指导。

2009年一年实现了很多梦想,或者说是设想吧:

  1. 加入一个快速成长的公司,不为生存发愁,
  2. 能够给予父母一些物质上的反哺,能够一年回两次家
  3. 能够住一次5星级酒店,
  4. 能够出门旅游一次,
  5. 能够方便的回去见女友,
  6. 能够在同学、老师、朋友面前证明自己的价值,
  7. 能够读完30本书
  8. 玩一次黑莓
  9. 买一台mac
  10. 参加一次技术聚会

细细数来,除了mac没买之外,其他的都实现了,貌似2009年一年没白活,那么2010年来一点更高的愿望吧

  1. 买一台笔记本,性能要好,是不是mac不重要
  2. 为女友买一台单反相机
  3. 接父母来杭州住一段时间
  4. 完成一个开源作品
  5. 好好学好两个语言,英语和Python
  6. 学会理财
  7. 参加两次以上的技术聚会
  8. 看完《代码大全》《程序设计语言原理》《high performance mysql》
  9. 再读一遍曼昆的《经济学原理》
  10. 每周至少健身一次

Google AppEngine Launcher不能启动的解决方法

好久不玩 Google AppEngine,google 居然用WXPython整出一个带界面的GAE  server管理器,有点进步,虽然这个东西在Mac早就有了,至少现在不用在艳羡用Mac的同志了,当初我就觉得,难道google的工程师都用Mac?为啥不顾及大部分开发者呢?google真的太有个性了。down了一个到本地,结果死活加载不了项目,不停的报错,打开log一看,全是如下错误信息:

Traceback (most recent call last):
File “GoogleAppEngineLauncher.py”, line 42, in <module>
File “wx\_core.pyc”, line 7913, in __init__
File “wx\_core.pyc”, line 7487, in _BootstrapApp
File “launcher\app.pyc”, line 53, in OnInit
File “launcher\app.pyc”, line 97, in _CreateModels
File “launcher\maintable.pyc”, line 35, in __init__
File “launcher\maintable.pyc”, line 86, in _LoadProjects
File “launcher\project.pyc”, line 63, in ProjectWithConfigParser
File “launcher\project.pyc”, line 250, in _LoadFromConfigParser
File “ConfigParser.pyc”, line 520, in get
ConfigParser.NoOptionError: No option ‘name’ in section: ‘1′

看样子是加载不了project的配置文件或者是project的配置文件出错了,于是乎按照当初修改picasa的逻辑,到C:\Documents and Settings\自己的用户名\Google 文件夹下,删除所有的东西,重新启动,重新添加project,启动web server,结果还是启动不起来,还是在刚才的目录下,打开配置文件一看,就差不多明白了,我放在桌面上,理论上project的存放路径中应该有汉字包含其中,结果没有,于是把项目文件夹剪切到某盘(如D盘)的根目录下,再删除google文件夹下的所有文件,重新添加project,点击启动web server按钮,居然变绿了,启动成功,看来google还不支持中文路径名。 各位大侠要小心喽

找人,招人~~

最近工作一直很忙,好久没更新博客了,大脑有点呆滞,不如给年底想换工作的朋友多一个选择吧

基于公司业务的急速腾飞和对人才储备的需求,最主要的是不差钱的原因,现在正在岁末疯狂招人中,只要你觉得自己合适,不妨投个简历试试,负责招聘的同学还是很热情的,前面说了,不差钱,并不表示我们富得流油,我们会根据您的技能和专长,给予富有竞争力的薪酬,如果您想年薪二十万,我觉得我们可以单独商量,因为公司业务的扩张,劳累在所难免,因此我们需要您有健康的身体和心理,当然偶尔身体不适也是正常的,我们提供完善的医疗和福利保障,刷了您的医保卡之后还能从商业保险那里得到一部分赔偿,这是我们福利的一部分。餐补,为加班同学提供免费的晚餐和加班打车报销之类的自然是必不可少的。更多福利和详细薪酬体系,请见我们HR,呵呵,

公司网站:phpwind

我们对以下职位有需求:

一、高级商务专员(1人)
工作地点: 杭州
职位描述:
1. 负责进行合作洽谈
2.线上线下推广活动策划
职位要求:
1. 大专或以上学历,相关专业毕业;有一定英文听说能力者优先
2. 三年以上互联网企业市场推广经验,熟悉主要线上线下媒体传播渠道
3. 对phpwind有一定的认识,对站长文化有敏锐嗅觉,从而产生独到有效的传播创意
4. 具有较强的执行能力,能独立运作线上线下推广的各个环节
5. 良好的人际关系,出色的沟通技巧
6. 吃苦耐劳,拥有强烈的上进心,热爱phpwind团队文化

二、高级PHP工程师(5人)
工作地点: 杭州
职位描述:
1. 负责产品的研发工作;
2. 负责产品产品架构设计;
3. 负责产品数据库设计;
4. 负责产品前后台功能模块开发。
职位要求:
1. 大专或以上学历,相关专业毕业优先;
2. 两年以上PHP实际项目编程经验,精通PHP与Mysql;
3. 熟练掌握HTML、JavaScript、CSS、XML、AJAX等知识,用户行为分析等web2.0关键技术;
4. 熟悉软件设计流程和软件工程规范,具备良好而规范的设计和技术文档编写能力;
5. 掌握Linux/FreeBSD/Windows等各操作系统web环境配置的各种优化方案,掌握网站访问速度的各种优化方案;
6. 有大型网站开发经验者优先,有C/C++编程经验者优先。

三、高级运营经理(1人)
工作地点: 杭州
职位描述:
1、负责公司项目的整体设计、规划运营;
2、执行公司发展策略;
3、管理团队,提升团队士气和工作质量;
4、负责协调各部门的合作。
职位要求:
1、大专以上学历,专业不限;
2、五年以上的大中型互联网公司从业经验,熟悉和热爱社区;
3、具备项目跟进、资源协调能力,熟悉社区管理、用户互动;
4、熟悉与网站产品,具有很强的用户行为分析能力;
5、成熟稳重,负责敬业,具有较强的社区管理能力;
6、熟悉互联网领域的WEB2、0产品;
7、沟通协调能力强,有团队合作精神;
8、工作主动,能承担较强工作压力。

四、大客户销售经理(1人)
工作地点:杭州
职位描述:
1、主动寻找有建站软件需求的客户,洽谈并销售phpwind各产品及增值服务,从社区网站运营角度帮助客户成长。
职位要求:
1、学历不限,专业不限;毕业后二年以上网络销售(网络营销)工作经验;
2、文字组织与表达能力强,能通过电话、Email、即时通讯工具等各种方式与客户进行沟通;
3、能吃苦耐劳,拥有强烈的上进心,热爱phpwind团队文化;
4、属于phpwind.net忠实会员者优先;
5、拥有PHP+Mysql技术以及服务器技术功底者优先考虑;
6、具有一定社区运营经验者优先考虑。

五、高级商务经理(1人)
工作地点:杭州
职位描述:
1. 负责合作洽谈、活动策划等
职位要求:
1. 学历不限,专业不限;有一定英文听说能力者优先;
2. 有五年以上互联网企业市场推广经验,熟悉主要线上线下媒体传播渠道;
3. 对phpwind有较深的认识,对站长文化有敏锐嗅觉,从而产生独到有效的传播创意;
4. 具有较强的执行能力,能独立运作线上线下推广的各个环节;
5. 良好的人际关系,出色的沟通技巧 ;
6. 能吃苦耐劳,拥有强烈的上进心,热爱phpwind团队文化 。

六、运营专员(1人)
工作地点:杭州
岗位职责:
1、负责平台信息的收集、整理、维护、更新 ;
2、承担客户服务工作;
3、收集整理用户问题与建议,定期反馈,并跟踪解决。
任职要求:
1、精通电脑各项基本操作,熟悉论坛,了解互联网应用;
2、勤奋好学,踏实细心;
3、具备良好的沟通能力和团队合作能力;
4、有论坛建站、版主经验或软件公司客服经验者优先;
5、大专以上学历,一年以上相关工作经验或拥有互联网丰富实习、创业经验的优秀应届毕业生 。

PS:  据悉,我们PHPWind 还为2010年应届毕业生提供技术类的实习岗位,如果你对Linux和PHP有一定了解和理解,又有志于在开源技术方面的开拓,不妨尝试一下,我们为应届生提供一个足以在杭州生活下去的薪水和商业保险(包括租房和生活开支,当然首先您要确定自己是节俭的,如果你大手大脚花钱花习惯了,您可以忽略本条)