google-app-engineactivemq-classicpublish-subscribepypubsub

publish-subscribe pattern within an application versus between applications


Are publish-subscribe systems (e.g. ActiveMQ, Google App Engine pub/sub, and pypubsub) mainly for message communication between applications running over multiple machines with different memory spaces? Or can they be used for handling efficiently message communication between components of a single application running within a single machine?


Solution

  • PyPubSub was designed to provide message communication between components of a single application. This does not imply running within a single machine, although a single machine would be the typical scenario. If a "network distributed" application (one that consists of severa collaborating components spread across multiple machines) takes care of marshalling data between the machines, pypubsub could still be used to great effect.