WEB开发网
开发学院软件开发Java 跨多种环境部署 Gearman 阅读

跨多种环境部署 Gearman

 2010-10-09 08:13:21 来源:WEB开发网   
核心提示: 需要小心的一件事情是数据的共享,Gearman 不进行所交换数据的任何转换或操作,跨多种环境部署 Gearman(7),对于这里使用的简单字符串和整数没有问题,但是不能共享 PHP 中的数组值并期望能在 Java 语言中被理解,并关闭 EC2 实例,当您真正需要成百上千的机器来进行处理时,对于这

需要小心的一件事情是数据的共享。Gearman 不进行所交换数据的任何转换或操作。对于这里使用的简单字符串和整数没有问题,但是不能共享 PHP 中的数组值并期望能在 Java 语言中被理解。对于这种类型的交互,可以使用很多结构化数据标准中的一种,比如 JavaScript Object Notation (JSON) 或 XML。另外,如果您在处理来自数据库的信息,只要共享 ID 或者找到需要处理的数据时要用到的信息即可,或者使用 memcached 这样的透明方法(尽管可能仍然需要 JSON 或等价物)。

下面我们来看其他一些 Gearman 部署的例子。

在动态环境中部署 Gearman

当然,具有这样一个灵活的环境对于使用它是一个理想的环境,此时具有灵活的服务器云(例如 Amazon 的 EC2)或者现有的大规模基础设施(比如 Web 服务器场,这里有未被充分利用或者能够处理小型离散任务的机器)。

在云环境中使用时,您利用 Gearman 的灵活特点来运行可用的工人。将工人添加到 Gearman 系统所需要做的就是让工人脚本在引导时间执行。

所以请考虑 图 2 中的布局。您具有一个标准的 Gearman 环境,使用标准工人组来满足客户机的需求。当环境中的负载突然增加时,您可以引导 EC2 实例,运行工人脚本来注册它们完成工作的能力,并挑选和处理信息。因此,EC2 实例是临时的,您可以根据需要注册和注销实例。

图 2. 使用标准工人组的标准 Gearman 环境
跨多种环境部署 Gearman

如果有明确表达信息时涉及到的处理和准备,这才会真正有用。在本例中,您可以启动 EC2 实例,通过 Gearman 执行工作,比较响应,并关闭 EC2 实例。当您真正需要成百上千的机器来进行处理时,这可以节省资金。

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:多种 环境 部署

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接