November 22, 2004Zend [Tech ]
不过从他的 PPT 演示中,感觉出 PHP 会越来越走向商业化、努力来迎合企业级应用,从 Java 及 .Net 手中抢一口饭吃。其实这点从 PHP5 的 ZendEngine2 就看出来了,不过这次感受更深切。祝 PHP 一路走好…… Posted by xdanger at November 22, 2004 10:42 PM | Comments (0) | TrackBackNovember 20, 2004Google 的 Firefox 主页 [Tech ]Firefox 1.0 正式版推出 2 星期,下载量达到 500 万,发布第一天网站根本打不开。如果是新安装 1.0 正式版的话,肯定会发现默认的主页竟然是 Google 为 Firefox 定制的一个页面,就像为 Linux 定制页面一样,Firefox 的成就可见一斑。 同期,邮件客户端 Thunderbired 也更新至 0.9 版本了,看来历史悠久的 Mozilla 寒窗多年之后终于爆发了,而且其势势不可挡,正应了鲁迅爷爷的那句话…… 我老早把 IE/MyIE/Outlook/Foxmail 扔进回忆里了,不久会做一个 Mozilla 的中文专题站,域名都注册好咯(汗……好多站要做啊……),把好东西推荐并教会大家用最开心了^_^ 有那么优秀的开源软件摆在面前,What are you waiting for... Posted by xdanger at November 20, 2004 10:56 PM | Comments (1) | TrackBackNovember 19, 2004GFans.org [Tech ]长久以来深受 Google 文化影响,前天注册了 GFans.org 的域名,准备做个 Google 的专题站,今天先凑了点 Google 公益广告的资料:
November 18, 2004还是VeryCD... [Tech ]今天重新配置了两台静态网页服务器,去掉了 NFS,改由 ssh 定时同步目录,关于这个话题,Dash 已经 Blog 掉了……哈哈,去掉两台静态页服务器的负担,原本的 NFS 服务器(兼数据库)一下子轻松了,想象原来真笨,都是静态页干吗要 NFS 嘛……汗死了…… 自从 VeryCD 实行推荐注册之后,网友们明显开始珍惜自己的帐号了,而且有一种光荣感和使命感了……想不到学 Google 的这招还真管用~~ Posted by xdanger at November 18, 2004 09:44 PM | Comments (0) | TrackBack November 16, 2004Apache日志轮巡/合并/分析 [Tech ]今天在 VeryCD 服务器上设置了访问日志的轮巡、合并、分析。 VeryCD 目前的网页服务器配置结构
构思上个月 VeryCD 使用的是章文嵩博士的 Linux Virtual Server 软件,该系统针对高可伸缩、高可用网络服务的需求,给出了基于IP层和基于内容请求分发的负载平衡调度解决方法,它通过前端一个负载调度器(Load Balancer)无缝地将网络请求调度到真实服务器上,从而使得服务器集群的结构对客户是隐藏的, 客户访问集群系统提供的网络服务就像访问一台高性能、高可用的服务器一样。因此整个网站的访问统计的取样就显得很简单,只要在一台 Web 服务器上分析自己的日志就行了,其他服务器的请求就是它的一个线性分布,系数大致就是硬件的性能比。 而现在整个网站由多个 Web 服务器 DNS 轮巡构成,网站结构对于用户是透明的,因此不能使用简单的抽样分析方法,分析日志的过程就比单个服务器的情况复杂得多。于是希望构建一套系统,能实现自动综合分析多个 Web 服务器的日志,给出准确直观的网站访问状况报告,而不是某台服务器单个的访问状况报告。 注:千万不能将日志记录到同一个远程(NFS)文件里。如果使用远程文件系统记录日志,带来的麻烦远比你获得的方便多的多! Apache 日志分割、轮巡使用 cronolog,到官方网站上下载 1.6.2 版,编译: #tar -xzf cronolog-1.6.2.tar.gz Copy 到 Apache 的 bin 目录:#cd cronolog-1.6.2 #./configure #make #cp src/cronolog /usr/local/apache2/bin/cronolog 然后编辑 Apache 的 httpd.conf:#vi /usr/local/apache2/conf/httpd.conf 这里我自定义了一个 LogFormat "all":Format "%v %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" all 就是在 Apache 默认的 combined 格式的最前面加了 %v 以区别不同的虚拟主机访问。如果该 Web 服务器没有设置虚拟主机的话,%v 出来的将是星号(*)。查了 Apache 手册后,没找到能反映 HTTP/1.1 协议中 Host 字段所对应的变量。为了能和其他日志格式兼容,我用了个笨办法——直接将该服务器所对应的域名写在里面,于是,没有设置虚拟主机的 Appache 的日志格式成了类似: Format "bbs.verycd.com %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" all 修改 CustomLog,实现按天分割、按周轮巡:CustomLog "|/usr/local/apache2/bin/cronolog /var/log/httpd/%w.log" all 重起 Apache,OK。 随后要做的是每天定时将前一天的 Log 发送到日志分析服务器,并删除五天前的那份 Log: #crontab -u root -e 每天凌晨 0:10 Copy 前一天的日志到日志分析服务器,我这就是 NFS 的路径;1:40删除旧日志:10 0 * * * /bin/cp -f /var/log/httpd/`date -d yesterday +\%w`.log /var/hosts/com/verycd/host1.log 10 1 * * * /bin/rm -f /var/log/httpd/`date --date "5 days ago" +\%w`.log 到此,Apache 分割、轮巡,定时发送、删除日志的工作就做好了。 合并日志现在日志分析服务器上已经有全部完整的、按日期精确分割的 Log 文件了,如何定时将它们合并在一起送交分析软件呢?在日志分析服务器上: #crontab -u root -e 每天 1:30 将host2.log、host3.log、host4.log、host5.log 按照时间排序合并到 all.log:30 1 * * * /bin/sort -m -t : -k 2,4 -o /var/hosts/com/verycd/all.log /var/hosts/com/verycd/host2.log /var/hosts/com/verycd/host3.log /var/hosts/com/verycd/host4.log /var/hosts/com/verycd/host5.log 完成日志合并工作。 分析日志由于以前只接触过 Windows 系列服务器,因此我已经习惯使用跨平台的 AwStats 分析日志,那还是继续使用吧。在官方网站上就有下载,有 tgz 包和 rpm 安装包,还有 For Win32 的 .exe 安装程序……安装我这就不多说了,只是需要 Perl > 5.0。 使用也非常简便,只要按照他的设置修改几处地方即可,修改 awstats.model.conf:
新建 awstats.lib.verycd.conf awstats.bbs.verycd.conf awstats.emule.org.cn.conf 等配置文件(awstats.自定义配置名称.conf),保存于 awstats.pl 相同目录下,内容大致如下: Include "awstats.model.conf" # 引入主配置文件,共享参数 # 各自配置 SiteDomain="lib.verycd.com" # 主机名 HostAliases="www.verycd.com" # 主机别名 将 wwwroot 目录下所有文件复制到网站的某个目录,例如,/log。在 Apache 中开放 awstats.pl 所在目录的 ExecCGI 权限: AddHandler cgi-script .cgi .pl <Directory /var/hosts/com/verycd/lib/log> Options +ExecCGI </Directory> 另外,如果访问是500错误的话,修改 awstats.pl 的权限试试看。 接下去是设置定时分析日志:
DemoVeryCD 的访问统计可见 http://www.verycd.com/log/ 参考文档:
November 14, 2004xdanger-Blog restart [Life ]做事贵在坚持,很简单的道理,不过这段时间才有很深的体会。 自认为兴趣算很广泛了,不过认真数来,也只有做做网站稍微Professional一点了。即使做网站,一个接一个,不管是自己做,还是打工,还是全职工作,都没能定下心来好好做,眼看机会就这么一个一个都从我身边Pass by了,只因为不够专心。 以前女朋友老说我这人不定心的,从我买东西就看出来了,总是犹豫不决;其实,我就想挑个最好的。她形容我的话应该还有下半句:我选定了,就决不放弃。 既然如此,那就从Blog开始吧。前段时间先是忙于学习(毕业),后来忙于感情(分手),又接着是工作(接手VeryCD时真是惨不忍睹),现在都总算都告个段落,自己的头绪也渐渐清晰了,于是决定重拾Blog。 今天更新了这套MT,加上了基于Bayesian算法的垃圾/广告评论过滤插件,打算一直用下去了(关于这套插件我以后会详细介绍的)。虽然MT3.0+的协议已经是付费软件,GPL的PHP Blog系统也有很多写得非常不错的,不过总感觉用MT的感觉很舒服。好比是Linux虽然写得够漂亮,但是气质上怎么都比不过Apple。大概已经被MT的文化浸湿了吧。 Posted by xdanger at November 14, 2004 11:27 PM | Comments (1) | TrackBack
|