Reading notes for Code Fellows!
FIFO queues have the same features as standard queues. However, they also support “exactly-once” processing and ordering of the queue. FIFO queues also have options that help prevent duplicate messages from being generated or received.
Subscribers to the messages should be configured to emit a “received’ event back to the server to confirm receipt of a message. Upon detecting the “received” event, the server can then safely remove the message from the queue.
Event driven programming best represents the observer pattern of software design, in which a subject maintains a list of its observers and notifies them automatically of any state changes, typically by calling one of their methods.
The easiest tests to implement on event driven systems are unit tests which test individual components of differing parts of the sytems. Tests can be performed to verify the server and clients are communicating correctly. Otherwise, event changes can be mocked or simulated and the resulting output from the system can be observed/monitored.
“Testing Event-Driven Systems”
| Vocabulary Term | Definition | | — | — | | FIFO Queue | Utilized by Amazon SQS, First-In-First-Out queues enhance messaging between applications with an emphasis on the sequencing of events and operations. They also provide “exactly-once” processing and prevention of duplicates within the system. aws.amazon.com | | Pub/Sub | An asynchronous messaging service available in all Google Cloud regions that offers durable message storage and “real-time” message delivery. Google Cloud Docs |