Microservices Resources

Are you interested in finding out more about Microservices from basic to more complex patterns? This is a collection of resources that you might find useful.

INTRODUCTION TO MICROSERVICES

Title: Microservice Architecture: A brief overview and why you should use it in your next project
Author: Md Kamaruzzaman
Summary: Companies often want to parallelize the development by hiring more developers to have a competitive advantage or to catch the low hanging fruits. Developers cannot work autonomously on a giant, Monolithic, tightly coupled code base and often needs extra synchronization, guard not to bump into each other’s work.
Website: https://towardsdatascience.com/microservice-architecture-a-brief-overview-and-why-you-should-use-it-in-your-next-project-a17b6e19adfd

Title: What are microservices? Your next software architecture
Author: Josh Fruhlinger
Summary: Microservices break up monolithic code into easy-to-maintain chunks and are key to the devops philosophy
Website: https://www.infoworld.com/article/3445043/what-are-microservices-your-next-software-architecture.html

Title: When To Use Microservices
Author: Charles Féval
Summary: I have frequently seen microservices being used for the wrong reasons. Amongst these: decoupling things, releasing faster, increasing code quality, enhancing the code review process, containerizing the app, modernizing it. The most common reason though, that people rarely admit but almost always transpires, is that everyone else is doing it, and it seems nice.
Website: https://www.feval.ca/posts/when-to-microservices/

Title: What are Microservices? [Costs and Benefits]
Author:
Summary: This article will explain what microservices are and their costs and benefits. We will show that although the underlying principles are nothing new, they do provide a convention for good software development practices.
Website: https://logicroom.co/blog/what-are-microservices-costs-and-benefits/

Title: Effective Microservices: 10 Best Practices
Author: Md Kamaruzzaman
Summary: Microservice Architecture is about decomposing a Software System into autonomus Modules which are independently deployable and which communicates via lightweight, language agnostic way and together they fulfill the business goal.
Website: https://towardsdatascience.com/effective-microservices-10-best-practices-c6e4ba0c6ee2

Title: What are microservices?
Author: Chris Richardson
Summary: Microservices - also known as the microservice architecture - is an architectural style that structures an application as a collection of loosely coupled services, which implement business capabilities. The microservice architecture enables the continuous delivery/deployment of large, complex applications. It also enables an organization to evolve its technology stack.
Website: http://microservices.io/

Title: Microservices 101: The good, the bad and the ugly.
Author: Toby Wolpe
Summary: Grassroots developer support is driving the adoption of microservices architecture to new heights. It's good stuff but it's not the answer to world peace, according to Red Hat middleware expert Dr Mark Little.
Website: http://www.zdnet.com/article/microservices-101-the-good-the-bad-and-the-ugly/

Title: What is Microservices Architecture?
Author: Smartbear
Summary: Microservice architecture, or simply microservices, is a distinctive method of developing software systems that has grown in popularity in recent years.  In fact, even though there isn’t a whole lot out there on what it is and how to do it, for many developers it has become a preferred way of creating enterprise applications.  Thanks to its scalability, this architectural method is considered particularly ideal when you have to enable support for a range of platforms and devices—spanning web, mobile, Internet of Things, and wearables—or simply when you’re not sure what kind of devices you’ll need to support in an increasingly cloudy future.
Website: https://smartbear.com/learn/api-design/what-are-microservices/

Title: Introduction to microservices architectures
Author: Microsoft
Summary: A microservices architecture consists of a collection of small, autonomous services. Each service is self-contained and should implement a single business capability. Here are some of the defining characteristics of microservices.
Website: https://docs.microsoft.com/en-us/azure/architecture/microservices/introduction

Title: Microservices
Author: Martin Fowler - James Lewis
Summary: The term "Microservice Architecture" has sprung up over the last few years to describe a particular way of designing software applications as suites of independently deployable services. While there is no precise definition of this architectural style, there are certain common characteristics around organization around business capability, automated deployment, intelligence in the endpoints, and decentralized control of languages and data.
Website: https://www.martinfowler.com/articles/microservices.html

Title: Best Practices for Microservices
Author: Mulesoft
Summary: Today's business environment is extraordinarily competitive. No company – no matter its size or what industry it is in – is safe from disruption. To mitigate this risk, it's important to consider implementing microservices best practices in order to change quickly, innovate easily, and meet competition wherever it arises.
Website: https://www.mulesoft.com/lp/whitepaper/api/microservices-best-practices
You’ve got to sign up, but it is well worth it.

BUILD

Title: Designing a microservice-oriented application
Author: Microsoft
Summary: The hypothetical application handles requests by executing business logic, accessing databases, and then returning HTML, JSON, or XML responses.
Website: https://docs.microsoft.com/en-us/dotnet/architecture/microservices/multi-container-microservice-net-applications/microservice-application-design

Title: Easy microservices with Kubernetes and Istio
Author: Sendil Kumar N
Summary: Developing applications as microservices means. The applications are split into multiple small/micro/nano/macro services. These services should be capable of running anywhere and everywhere.
Website: https://dev.to/sendilkumarn/easy-microservices-with-kubernetes-and-istio-3nl3

Title: Building a Serverless Microservice CRUD RESTful API with MongoDB
Author: Richard Freeman, Ph.D.
Summary: In this post we will build a Serverless Microservice that exposes create, read, update, delete (CRUD) operations on a fully managed MongoDB NoSQL database.
Website: https://www.linkedin.com/pulse/building-serverless-microservice-crud-restful-api-freeman-ph-d-

Title: Exchanging messages in microservices
Author: George Gkirtsou
Summary: In the microservices world, we need to pass information about events that occurred from one service to another. This works well for asynchronous communication. If you want to block and wait until you get a response make a synchronous call via REST or RPC.
Website: https://www.linkedin.com/pulse/exchanging-messages-microservices-george-gkirtsou/

Title: Microservice Observability, Part 1: Disambiguating Observability and Monitoring
Author: Tyler Treat
Summary: “Pets versus cattle” has become something of a standard vernacular for describing the shift in how we build systems. It alludes to the elastic and dynamic nature of these (typically, but not necessarily) container-based systems with on-demand scaling and more transparent fault-tolerance.
Website: https://bravenewgeek.com/microservice-observability-part-1-disambiguating-observability-and-monitoring/

BOOKS

Title: Microservices Patterns (Bool)
Author:  Chris Richardson
Summary: Microservices Patterns teaches enterprise developers and architects how to build applications with the microservice architecture. Rather than simply advocating for the use the microservice architecture, this clearly-written guide takes a balanced, pragmatic approach, exploring both the benefits and drawbacks.
Website: https://www.manning.com/books/microservices-patterns

Title: .NET Microservices: Architecture for Containerized .NET Applications
Author: Microsoft
Summary: This guide is an introduction to developing microservices-based applications and managing them using containers. It discusses architectural design and implementation approaches using .NET Core and Docker containers.
Website: https://docs.microsoft.com/en-us/dotnet/architecture/microservices/index

CASE STUDIES

Title: Three Years In — Microservices, Containers and Kubernetes at Hootsuite
Author: Shelby Moore
Summary: At Hootsuite, over 120 microservices support the core dashboard product, of which the majority run on Amazon’s Elastic Kubernetes Service (EKS).
Website: https://medium.com/hootsuite-engineering/three-years-in-microservices-containers-and-kubernetes-at-hootsuite-714522f37b51

Title: Simplifying microservices with a service mesh
Author:  Chris Garvey
Summary: A service mesh is quickly becoming essential to container management. It can reduce developer effort so they don’t need to worry about all the dependencies and communications between containers. Developers simply reference an intelligent proxy or “sidecar” to link containers (and microservices) to the service mesh.
Website: https://sdtimes.com/micro/simplifying-microservices-with-a-service-mesh

FROM MONOLITH TO MICROSERVICES

Title: Musings On Software Architecture: Monoliths to Microservices
Author: Leonardo Venturini
Summary: I see small companies trying to take the “leap” to microservices, but they do not meet the criteria for such leap, mirroring themselves on big companies like Amazon and Netflix.
Website: https://medium.com/hootsuite-engineering/three-years-in-microservices-containers-and-kubernetes-at-hootsuite-714522f37b51

MISTAKES

Title: Five Microservices Worst Practices
Author: Eric Schabell
Summary: Breaking your apps into microservices isn’t enough—you have to manage them, orchestrate them and deal with the data they create and modify. Before you even touch the keyboard it’s a good idea to think about a few points of strategy to ensure success.

SUMMARY

Let us know of any useful Microservice resources
andy.coleman@uksoftwarejobs.co.uk

Register at https://www.uksoftwarejobs.co.uk/SoftwareJobs if you are interested in receiving vacancy notifications that are accurately matched to your profile.

If you are a Software Services Provider then register at this link: https://www.uksoftwarejobs.co.uk/ServiceProvider