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 | | — | — | | Serverless Functions | Single-purpose functions that are hosted on managed infrasctructure, that are invoked through the internet. They are hosted and maintained by cloud computing companies, such as Lambda for AWS. They are integral to “Microservice Architecture”. PubNub | | Cloud Storage | A computing model which store data on the internet trough a cloud computing provider that manages and operates data storage as a service. It provides data storage infrastructure, allowing for more agility, scalability and durability throughout the world. Containers on AWS | | CDN | Content Delivery Network. A group of servers in differing geographical locations that work together to delivery web content as well as data and files quickly and efficiently to users. |