依托现有基础组件的gearman部署方案 |
发布: 2012-12-27 09:49 |
gearman属于异步任务框架,目前实现了gearman框架相关封装管理工作, *) 包括启动停止管理php程序编写的worker相关程序, *) 包括启动信息管理gearmand job server的相关脚本程序 *) 一些动态检测gearman集群状态及部署状态的核心worker 本gearman部署方案及实现有以下功能, *) 支持worker的集中部署方式,所有项目的worker部署在一个大型的gearman集群中,给gearman专用 *) 支持worker按项目分散式部署,如部署在各自项目的web服务器上 *) 支持混合式部署,各项目的worker可以部署在gearman专用的集群中,也可以部署在各项目的web前端 *) 支持任意worker节点上的worker崩溃自动化检测与重启动 *) 支持任意worker节点上的worker状态查询 *) 支持任意worker节点上的服务器即时状态信息查询 *) 支持任意节点的worker程序部署即时生效功能,即实现了worker代码的修改并部署后的自动检测与自动加载 *) 支持worker执行结果自动暂存储功能,有一定过期时间 *) 支持worker运行在按IP地址指定的某个指定节点上 *) 支持worker运行在按项目名称/域名指定的某个节点上 *) 支持worker能最大限度使用框架及项目已经实现功能, 项目相关的worker(框架action命令行模式)与项目代码一同部署 worker管理程序自动生效并能调用项目的worker 这个部署方案的需求, *) gearmand (job server),必须是一个集群,否则无法做到统一管理,只能按多个gearmand/worker集群管理 *) worker节点服务器的php版本,php-5.3+ 实现, *) 启动停止脚本目前使用shell实现 *) worker的管理使用php脚本实现,常驻内存daemon进程 *) worker在注册时会给worker分配别名,所有的别名指向worker实现时的函数名,功能完全相同 实现指定worker运行在某个特定节点上,或者一批特定节点上 如,对于dummy worker,加载管理程序会为其注册以下几个别名, I: [2012-12-17 17:10:46] W-3. Servering dummy .... I: [2012-12-17 17:10:46] W-3. Servering gmworker_node_10.207.0.248_dummy .... I: [2012-12-17 17:10:46] W-3. Servering gmworker_node_127.0.0.1_dummy .... I: [2012-12-17 17:10:46] W-3. Servering project_test_com_cn_dummy .... I: [2012-12-17 17:10:46] W-3. Servering gmworker_node_10.207.0.248_project_test_com_cn_dummy .... I: [2012-12-17 17:10:46] W-3. Servering gmworker_node_127.0.0.1_project_test_com_cn_dummy |
原文: http://qtchina.tk/?q=node/705 |
Powered by zexport
|