分类:
2009-06-08 13:14:39
G——Gearman
Gearman是Brad Fitzpatrick 的一个作品,用Perl写的任务调度程序,提供一个服务器端和多种语言的客户端接口,包括 C/Perl/Python/Ruby 等。
gearman可以用在各个方面,最简单就是在不同语言之间架起一座桥梁。比如你可能希望你的php程序调用一个c 函数,那么用gearman就可以实现了,当然了实际你可以通过写一个php扩展来实现同样的工作,但是比如你要php调用java,perl,或者 python那么,gearman就非常棒了。
gearman另一个应用方面是负载分担,你可以将worker放在不同的服务器(或者一些列服务器)上,比如你的php程序需要图片转换,但是不希望本地服务器有太多的这样图片转换的进程,那么你可以建立一系列服务器,在上面加载worker处理图片转换。这样你的web服 务器将不受图片转换的影响,同时你得到了负载均衡的功能,因为job server会在请求到来的时候,将这个请求发给空闲的worker.同样对于多核的服务器,你可以在同一机器上创建同样数目的worker. 你可能担心,job server处于一个中心,那么这会是一个单点的瓶颈,如果死了,会怎么样?对于这样的情况,你可以运行多个job server。这样如果一个job server down了,client和worker会自动迁移到另一台job server上。
M——Memcached
memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。
PHP社区的看法是,LAMP组合已经越来越不能满足很多网站的需要,其他工具的介入是必然趋势。数据库方面,号称memcached杀手应用 的Drizzle有可能会替代MySQL。在MySQL被Sun收购的那一年,人们关心MySQL是否将会继续让LAMP架构发扬光大;而在Sun又被甲 骨文收购,MySQL创始人宣布创建开源数据库联盟,MySQL即将四分五裂之际,Drizzle是否能够做为MySQL的延伸,令GLAMMP发扬光大下去呢?
不过我也许说错了,这样的话,GLAMMP大概应该改名叫做GLAMPD才是。