J9九游会AG

J9九游会AG首页  > 新闻资讯

基于PHP的虚拟化技术

时间:2014/03/10 作(zuo)者:admin

超文(wen)本预处理器(PHP,Hypertext Preprocessor)是(shi)(shi)一种(zhong)通用开(kai)源(yuan)脚本语言(yan)。在云平台(tai)采用PHP主(zhu)要(yao)是(shi)(shi)解决(jue)用户访问(wen)流量差异化与服(fu)务资源(yuan)匹配问(wen)题。对于云平台(tai)上的(de)查询(xun)服(fu)务,可能(neng)只是(shi)(shi)应答“Y or N”,由于微小流量,CPU和I/O利用率极低,也可能(neng)是(shi)(shi)视频查询(xun),需要(yao)多台(tai)服(fu)务设备。故需要(yao)一种(zhong)新的(de)虚拟化架(jia)构,能(neng)将机器的(de)粒度依据访问(wen)流量需求切分或组合。

为此(ci),在(zai)企业云平(ping)台中采用PHP的(de)轻量(liang)级虚拟化技术,为每(mei)个用户分配一组FAST CGI“常驻公共网关接(jie)口”(Fast Common Gateway Interface)进(jin)程资(zi)源,通(tong)过Web端调度,将请(qing)求(qiu)引到各自的(de)FAST CGI进(jin)程组中处理。由此(ci)可依(yi)据机器的(de)性能及进(jin)程进(jin)行(xing)虚拟化切分。

对于某网络节点流量过大(da),单机(ji)资(zi)源不够,可通过FAST CGI进(jin)程个数来(lai)(lai)调度,在多台机(ji)器(qi)上分配进(jin)程,组成(cheng)FAST CGI组,通过负(fu)载(zai)均(jun)衡机(ji)来(lai)(lai)观察各服务设备的负(fu)载(zai),从而判断是否要(yao)迁(qian)移FAST CGI进(jin)程,以此构建PHP执(zhi)行环(huan)境(jing)架构。

在实际过(guo)程中,发现网络(luo)文件系(xi)统(tong)对(dui)系(xi)统(tong)性(xing)能影(ying)响(xiang)较(jiao)大(da),为此需要对(dui)每台机器做了单(dan)机缓存(cun)。由于采用(yong)了HDFS分(fen)布(bu)式文件系(xi)统(tong),在系(xi)统(tong)中只存(cun)储代码,当(dang)Cache失效和(he)文件修改时(shi),由资源(yuan)管理服务器通知所有客户机该文件缓存(cun)失效,更新入口(kou)即可(ke),实际应用(yong)效果较(jiao)为满意(yi)。