基于ESB SQS
项目描述
Amazon SQS的ESB客户端实现。
简单用法
# Default transport config transport = { 'prefix': 'dev-%(hostname)s-', 'priorities': ['low', 'medium', 'high'], 'polling_interval': 20, # Default queue polling interval 'retention_period': 864000, # Default queue retention period 'visibility_timeout': 30, # Default queue visibility timeout 'sleep_time': 0, # Default queue sleep time 'region': 'eu-west-1' } bus = SwarmBus('LOGIN', 'PASSWORD', **transport) bus.connect() queue_config = { 'visibility_timeout': 5 } # Now we register a new queue bus.register_queue('new_queue', **queue_config) # Disconnect the bus to finish bus.disconnect()
用作生产者
with SwarmBus('LOGIN', 'PASSWORD', **transport) as producer: producer.register_queue('new_queue') producer.publish( 'new_queue', {'id': 42} ) producer.publish( 'new_queue', {'id': 84}, priority=1, # Priority index, correspond to 'medium' delay=5 # Delay of the message )
用作消费者
def handle_message(body, message): print(body) message.delete() def error_handler(body, message): raise ValueError('Error while processing message') with SwarmBus('LOGIN', 'PASSWORD', **transport) as consumer: consumer.register_queue('new_queue') consumer.consume( 'new_queue', handle_message, error_handler )
项目详情
下载文件
下载适用于您平台的应用程序文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
swarm-bus-5.18.tar.gz (7.4 kB 查看哈希值)
构建分布
swarm_bus-5.18-py3-none-any.whl (9.1 kB 查看哈希值)