Designing the automation system

With some understanding of how ZeroMQ and request-reply systems work, we will now design the automation system. We'll start by going over some design considerations and use cases.

Pairing one client and one server

Normally, a server deals with many clients, usually concurrently. It can do this because of the design of most servers: all state changes, like withdrawing money from a bank account, happen in something like a database. The server processes themselves are stateless. The web server translating a web request to a database call does not remember anything relevant about the transaction. Databases are designed to allow multiple readers and writers to work simultaneously on shared state.

We do not have this luxury ...

Get Practical Maya Programming with Python now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.