Twisted Python中的服务依赖和交互

时间:2011-03-13 03:10:56

标签: python service twisted

在Twisted上工作时,我想知道是否有:

  1. 一种明确定义服务依赖关系的方法(例如,在我需要解雇服务A之前启动服务B)
  2. 使两个服务通信的“pythonic”方式(例如B与A共享信息,A可以控制B执行)
  3. 由于

1 个答案:

答案 0 :(得分:3)

看看Twisted Application Documentation。听起来你想要创建一个MultiService,每个都有自己的子服务实现。您所做的是定义许多服务,实现startServicestopService并在树层次结构中安排您的服务(通过setServiceParent)以确定任意启动和关闭顺序。

如果您对分布式服务协调更感兴趣,那就稍微困难了。这是Erlang擅长的,但如果您不反对使用像Zookeeper这样的系统可能是一个解决方案。

至于你的最后一点,服务有很多种沟通方式。您可以使用类似Perspective Broker之类的内容进行对象通信,或者使用类似RabbitMQ

等更重且更通用的内容