Blog Insights
-
Breathing New Life into an Old Laptop with RancherOS
While taking stock of my electronics graveyard I came across an old laptop. I had been looking for a reason to play with Docker containers and this laptop provided me an opportunity to do so. Since it was only going to be running Docker containers, I wanted a no-frills setup.... -
Node Reference - Conclusion
Prerequisites This article builds on the prior article: The “Join” Problem. Conclusion In this series, we walked the reader through the considerations of building a production-ready microservice. More important than the tools we used (e.x. NodeJS, AWS) were the questions we asked. You may choose different tools and libraries for... -
Node Reference - Change Events
The “Join” Problem Modern applications no longer exist in a silo. They need to integrate with other systems within the organization. In a microservice architecture, this is even more valid since very few business processes can be completed by involving only one service. Let us suppose that our product service... -
Node Reference - Delete
Prerequisites This article builds on the prior article: Node Reference - History. Deleting Humans make mistakes. Your users are humans, and sometimes they will create a product by mistake and will need to delete it. For that scenario, we need a DELETE REST endpoint. There are two main classes of... -
Node Reference - History
Prerequisites This article builds on the prior article: Patch. Tracking History The way our service is currently built, all modifications (PATCH requests) happen in-place to records in DynamoDB. It is common in most production applications that someone will want to know the history of a record. A business user may... -
Node Reference - Patch Product
Prerequisites This article builds on the prior article: Node Reference - Get Product by Id. Supporting Updates Sooner or later, there will be a need to modify a product. Except in the case of immutable data stores, rarely are there entities that are truely “insert only”. In order to support... -
Node Reference - Get Product by Id
Prerequisites This article builds on the prior article: Node Reference - Listing. Add Get By Id At this point, we have only one way to get Products. We have to list all products and page through them to find the one we want. However, a lot of the time, a... -
Node Reference - List Products
Prerequisites This article builds on the prior article: Node Reference - Monitoring. Add listing Clients of our service will need a way to find products. For that, we need a product listing service. DynamoDB provides an operation for listing the contents of a table called a ‘scan’. (As a table... -
Node Reference - CloudWatch
Monitoring How do we answer the question: “Is our application performing correctly?” With just one application server we could remotely log into the server, look at CPU and memory load, run grep on the log files and then determine that everything is fine. This approach is manual intensive and obviously... -
Node Reference - Integration Tests
Prerequisites This article builds on the prior article: Node Reference - Validation. Add Integration or Smoke Tests So far, our testing strategy has consisted of only Unit Testing, testing each module in isolation. While this type of testing covers most business logic, it does leave some gaps. It does not...