PHP开发者:你GLAMMP了吗? |
本文标签:PHP LAMP GLAMMP Gearman Memcached 【51CTO综合报道】网站开发黄金组合LAMP(Linux+Apache+MySQL+PHP)已经流行了好几年 。即LAMP之后,PHP社区最近开始推广起GLAMMP组合 。这个组合在LAMP之上又加进来一个G和一个M 。这新加进来的两个字母各是什么意思呢? 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才是 。 |