Design patterns in Microservices using Gilmour
Submitted by Piyush Verma (@meson10) on Friday, 26 February 2016
Microservices are a talk of the town and the newer tools, frameworks like Kafka, Consul, grpc convinces us to be armchair architects. But let’s take a step back to understand the common design principles of a services architecture and the commonality between Unix and microservices.
Microservices have rapidly evolved over the years as a popular way of developing applications, but they bring their own set of challenges in the form of what design pattern to use, monitoring, logging, error detection, scaling and service discovery.
We will explore the common characteristics and design patterns to be considered while dealing with service oriented architectures. We talk about Signal-Slots, RPC architectures, monitoring, log and error handling, function point scaling, and common unix philosohies that help you design scalable distributes systems.
Diving into code samples, demos and production deployments; I would like to showcase Gilmour (http://github.com/gilmour-libs): a cross language library we have authored for effective microservices that exchange data over non-HTTP transports.
Piyush Verma is a Platform and Infrastructure Engineer with http://datascale.io. He is an ex-KDE developer and codes for Coffee and House music. He likes Multiprocessing, Distributed systems, APIs and automating everything. Previously, he created http://siminars.com When not coding, he can be found running or cycling around the town.