Submitted by gouki on 2009, November 20, 4:19 PM
套用网上流行的一句:哥聊的不是天,哥聊的是寂寞,我也要在这里说,我讨论的不是wordpress,我讨论的是sablog
其实很有意思啦,明明是wordpress的新闻发布,结果评论却是sablog的拥护者在与wordpress拥护者火拼。偶尔也插上一个bo-blog用户的感慨
当然,这几个程序我都用过,最早在bo-blog出mysql版前,我也用过文本版的,那时候的程序很简单,安全性和实用性也一般。现在当然不一样了。
SAblog嘛,我就不说了,你看我的博客建立有多久,sablog就用了有多久。除了改过一些模版,程序我就几乎没有动过(当然前段时间sablog评论被攻击的时候,还是改了一下程序),虽然程序简单,但也毕竟几乎2年没有出过啥大漏洞。挺不错了除了模版是类似 phpwind 我不习惯外,其他都好
wordpress嘛。大而全,普通人上手也能用,后台也可以自动安装插件等,确实不错,只是后台嘛,略慢一点。别说我没有发言权,我在现在的服务器上有正好有三个BLOG,大家可以尝试一下
1、sablog ,就是本勃客啦。。。
2、bo-blog,http://www.fotonomad.org
3、wordpress,http://g.52cd.net
以下内容来自cnbeta。。。
WordPress 2.8.6安全更新刚刚几天,今天,11月16日,WordPress官方发布了WordPress 2.9的第一个测试版本:WordPress 2.9 beta 1。
beta版本都不太稳定,不喜欢折腾的朋友可以暂时不用升级,等正式版出来了再说;喜欢折腾的朋友,可以试试Wopus下面几篇文章中提到的新功能,特别 是WordPress 2.9提供的数据库修复、优化功能。现在WordPress官方还为在后台提示更新(目前的提示更新版本依然是:WordPress 2.8.6),所以需要测试的朋友,可以在文章最底下下载WordPress 2.9 beta 1,解压,上传覆盖。
两个老生常谈的问题:升级前请备份数据库;测试请尽量用官方英文版,请不要使用中文版。
WordPress 2.9对空间欢迎的要求:
数据库版本: MySQL 4.1.2 or 更高 (老版本只需要 4.0),之前Wopus也有过一篇文章:WordPress 2.9对空间环境要求更高:
WordPress 2.9对空间环境要求:
- PHP 5
- MySQL 4.1.2 or greater
- The mod_rewrite Apache module
WordPress 2.9新增功能:(功能详解请查看原文)
WordPress 2.9功能:在线编辑图片
WordPress 2.9新功能:回收站
WordPress 2.9新功能:批量升级插件
WordPress 2.9新功能:修复、优化数据库
除了Wopus列出来的,还有很多功能,但基本上我们都体会不到,也就没有再一一列举。除此之外,WordPress 2.9对主题和插件的函数也有改动。详细请查看这里。
比较引人瞩目的是,WordPress官方目前提供了两种下载格式,一种是IIS的,也就是Win系统服务器。现在加上伪静态的模块,Win系统服务器也可以完美的支持WordPress了。
WordPress 2.9 beta 1下载:
官方下载:Linux服务器版本 | IIS版本
地址为:http://www.cnbeta.com/articles/97982.htm
Tags: wordpress, sablog, bo-blog
PHP | 评论:1
| 阅读:22053
Submitted by gouki on 2009, November 10, 11:39 AM
这个,又是老王的文章,队列,确实还是需要用到的。不过,我倒真没有想过用专业的队列消息数据库等来处理。我最初只是想把一些要队列的信息用SQLITE来处理,一边是往里推,一边是往外拉。拉一条删除一条。等到数据量太大的时候,就清除掉。
老王还是有介绍的,我在PHPRPC群里也听缘起缘灭和廖羽雷他们谈过专业的队列处理,但,我目前做的事情,还是用不了专业的队列处理,所以也就没有放在心上,不过,既然老王有介绍,也可以稍看看【原本我计划做个短信定时发送也就是准备用队列处理的,但最后没做,因为139邮箱里居然有类似功能,NND,抢我饭碗】
Web应用中为什么会需要消息队列?主要原因是由于在高并发环境下,由于来不及同步处理,请求往往会发生堵塞,比如说,大量的insert,update 之类的请求同时到达mysql,直接导致无数的行锁表锁,甚至最后请求会堆积过多,从而触发too many connections错误。通过使用消息队列,我们可以异步处理请求,从而缓解系统的压力。在Web2.0的时代,高并发的情况越来越常见,从而使消息 队列有成为居家必备的趋势,相应的也涌现出了很多实现方案,像Twitter以前就使用RabbitMQ实现消息队列服务,现在又转而使用Kestrel来实现消息队列服务,此外还有很多其他的选择,比如说:ActiveMQ,ZeroMQ等。
上述消息队列的软件中,大多为了实现AMQP,STOMP,XMPP之类的协议,变得极其重量级,但在很多Web应用中的实际情况是:我们只是想找到一个缓解高并发请求的解决方案,不需要杂七杂八的功能,一个轻量级的消息队列实现方式才是我们真正需要的。
第一感觉是能不能使用memcached来 实现消息队列?稍加考虑后就会发现它不合适,因为memcached仅仅支持键值方式的操作,没有排序之类的功能,所以如果要用它来实现消息队列,则必须 自己通过某个键来保存数组形式的队列,不过这样的话,在操作队列的时候很容易丢失数据,比如说我们要添加一个消息,则需先取出现有队列,然后把消息保存到 队列尾部,最后保存队列,单纯使用memcached的话,由于我们无法保证整个过程的原子性,所以当处理若干个并发请求时,各个请求间可能会互相覆盖, 丢失数据就在所难免。另外,memcached只是内存键值缓存而已,一旦宕机,数据就消失了。
memcacheq的出现解决了上面的问题,它在memcached的基础上实现了消息队列,以php客户端为例:
消息从尾部入栈:memcache_set
消息从头部出栈:memcache_get
memcacheq依附于memcached之上,所以你可以通过现有的memcached工具来操作它,这无疑是它的一大优势,但它也有一个很大的缺点,那就是memcacheq本身的开发维护似乎并不活跃,如果遇到问题的话,你很可能需要自己动手解决。
目前看来,我更推荐下面这种解决方案,那就是redis,如果不了解,可以参考我以前的文章,表面上看,redis和memcached差不多,也是键值操作,但是redis本身实现了list,相关操作也可以保证是原子的,所以可以很自然的通过list来实现消息队列:
消息从尾部入栈:RPUSH
消息从头部出栈:LPOP
redis本身虽然是一个新项目,但很有朝气,开发维护也很活跃,如果你的下一个Web应用里需要使用轻量级的消息队列,不妨使用它。
此外,还有不少其他的选择可供尝试,比如说MySQL第三方的Q4M引擎,通过扩展SQL语法来操作消息队列,也是一个不错的选择。
套用网络流行语:那些重量级软件实现的不是你要的功能,而只是独在高处不胜寒的寂寞,所以不必迷恋其中,它们只是传说而已。
--EOF--
原文链接:http://hi.baidu.com/thinkinginlamp/blog/item/27a18202578f3d054bfb511f.html
PHP | 评论:0
| 阅读:24571
Submitted by gouki on 2009, November 9, 11:35 AM
在一些PHP的群内,很多人在提问前,都说,我刚学PHP,遇到一点问题,能不能帮我解决,然后刷刷刷的就是几屏代码。
在这种情况下,如果有人有精力有欲望回答他们的问题,估计才真的是奇怪。
网上流传的那篇:《提问的艺术》,估计很多人看过,但有多少人是这样提问的呢?至少我在遇到自己不会的情况下,先找手册,然后问google、百度,最后才问群里或者MSN中的高手们,即使这样,我也很把我遇到的问题和解决的方式说出来,这样,他们在回答的时候,也不会多次尝试。当然或许我一 说出来,他们就知道问题的解决方案了。但你不能保证每个人都是这样的高手吧?
以上都是废话。但还是有点参考价值。以下才是肉戏。
1、IBM的网站,http://www.ibm.com/developerworks
2、ZEND的网站:http://devzone.zend.com/,这里还有为新手写的文章 :http://devzone.zend.com/tag/PHP101
3、PHP官方网站,如果遇到点问题,发现代码好象没问题,但结果就是不正确,很去搜索一下buglist,或许就是你发现了这个BUG也有可能啊?
4、曾经的PHPE.net,没落的网站
5、喜悦村,也在逐步走向没落,大多数情况下,也是被这种无聊的提问而使得很多人不愿意回答问题吧?
6、phpchina。知名PHP网站,可惜吵架贴远多于知识贴
7、PHP100,在开发工具上提供了一些便 利,还有一些视频可以参考
8、本人的网站,哇哈哈哈。其实本人网站真的只属于一般,但我会努力转贴,当然也不是随便就乱转了。。。技术型的,一般总要看一遍再转的。
其实,你还可以搜索google reader之类的订阅网站,然后以某个关键字为搜索,并订阅这些内容,恐怕也可以让你达到一些效果,但订阅这个玩意,还是以少而精为主,否则,你还是没有精力去一篇篇看,走马观花的,反而会让你错过很多。
PHP | 评论:1
| 阅读:18809
Submitted by gouki on 2009, November 7, 8:39 PM
这段代码我最早是在boblog里看到,那时候他有一个批量去除BOM的程序,就是用的这个方法,代码如下:
PHP代码
- function replace_utf8bom($str)
- {
- $charset[1] = substr($str,0,1);
- $charset[2] = substr($str,1,1);
- $charset[3] = substr($str,2,1);
- if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191)
- {
- return substr($str,3);
- }
- else
- {
- return false;
- }
- }
很明显,这就是前面三个字符是固定的原因,当然可以这样判断了。。。说白了很简单,但如果不知道就真的很痛苦了。顺便说一下,它来自:http://www.phptext.net/technology.php?vid=53
PHP | 评论:1
| 阅读:27309
Submitted by gouki on 2009, November 5, 11:05 AM
说起PHP的模版引擎,大多数人第一个就会想起smarty,但是随着PHP的发展,而smarty一直在兼顾着老版本的PHP,慢慢的,慢慢的也就没落了。。。
如今,他好象又准备回来了。你看:
Yes, yes I know. The Smarty 3 beta is taking much longer than expected, but we wanted to be sure we had everything right. Our preliminary performance tests are already showing us very promising speed improvements over Smarty 2 (2-5x on average), and we're not done! To recap, Smarty 3 is a 100% rewrite from the ground up, and it is PHP 5 only. We will be getting a feature list up with the Beta, but let me give a quick summary:
- PHP5 OO design
- SPEED
- Object Chaining
- Exception Error Handling
- Assigned Data Objects
- Multiple Template Objects
- Static Object Access
- Pure PHP Template Option
- Powerful Parser/Lexer
- Tons of Template Syntax Enhancements
- Improved Data Scoping Features
- Variable Filters (ie. auto-html-escape)
- In-template Functions (easy recursion)
- Template Inheritance
- PHP Streams Support (per template/variable/include)
- Smart javascript/css handling (no more {literal} tags)
- Improved Cache handling (per template/variable/function)
- Many other things too numerous!
There are many folks using the Alpha in production, and with this feedback we feel the Beta is going to be very stable to begin with. Feel free to grab the Alpha and give it a test! We want feedback!
You can checkout Smarty 3 Alpha with SVN:
svn checkout http://smarty-php.googlecode.com/svn/branches/Smarty3Alpha/
想知道更多的信息?去http://www.smarty.net去看吧。也可以订阅他们的maillist哦。
PHP | 评论:0
| 阅读:17415