Python Twisted - потенциальный брокер и серверные Deender - PullRequest
2 голосов
/ 14 января 2011

Справочная информация: У меня есть клиент GTK, который использует витой и перспективный брокер для выполнения удаленных объектов и взаимодействия сервер / клиент. Это прекрасно работает для меня, и было легко начать работать.

У меня есть службы amqp (Message Queue / MQ), с которыми мне также необходимо связаться с клиентом. У меня есть модель безопасности для клиента и сервера через витую систему, и я не хочу, чтобы клиенты напрямую общались с сервером очереди сообщений, и при этом я не хочу, чтобы клиенты зависели от библиотек amqp.

В идеале я хотел бы, чтобы клиент отправлял запрос на сервер через перспективного брокера, сервер перспективного брокера отправлял запрос amqp на другой сервер от имени клиента, а клиент получал подтверждение, когда сервер PB получает ответ от сервера очереди сообщений.

Вопрос: На стороне сервера, как мне отложить ответ внутри одного из методов pb серверов? Что еще более важно, каков наиболее эффективный способ соединить исходящий запрос обратно с входящим запросом и при этом сохранить парадигмы, основанные на событиях Twisted?

1 Ответ

3 голосов
/ 14 января 2011

На стороне сервера, как мне отложить ответ внутри одного из методов pb сервера?

Easy. Верните Deferred из метода remote_. Готово.

...