Talk: Confidently Releasing Microservices With Consumer-Driven Contracts
Speakers directory
Speaker:
Gopinath Langote
Talk description
Title:
Confidently Releasing Microservices With Consumer-Driven Contracts
Short synopsis:
In today's micro-services architecture, in order to deliver each piece of work without affecting other functionality is the critical thing. For bringing confidence to the team of not breaking other functionality, we need to have some way of assurance in place. Then system integration tests, functional tests, sometimes manual tests are the older ways to that confidence. This process may take more than 1 day to get the go-ahead to deliver something. If the services are handled by different teams or the different company altogether, then it might go beyond 1 day for delivering some functionality. Then the question comes about the, "are we truly agile", in today's so-called "micro-services" architecture? To solve this problem and fasten the delivery process, the community came up with the idea of contracts for integrations between services. Those contracts need to pass with every build going into production to ensure the integrations with other systems/services are working fine with lesser time & early feedback. While working on micro-services architecture from last 3 years, I have seen the speed of delivering functionality has increased drastically with the help of Consumer Driven Contracts, often called "CDC". A Contract is a collection of agreements between Consumer and a Provider that describes the interactions that can take place between them. Consumer Driven Contracts(CDCs) is a pattern that drives the development of the Providers from its Consumer's point of view. It is TDD for micro-services. Considering the fact that micro-services architecture becoming so popular nowadays, we also need to move on or improve our test strategies to adopt the new architecture. At our company "N26", we deliver more than 200 micro-services, handled by more than 20 teams now. Waiting for each team to respond is the too lengthy process. Rather we are in the process of automating this with CDCs, which helps us to deliver faster and independently. By this, we get faster feedback from dependent services about breaking changes without waiting for days to get feedback, which will lead to faster delivery with the confidence of not breaking other functionality. I will be doing a small practical demo of CDC in the talk to show how exactly this works and faster than another feedback mechanism for micro-services integration. Happy CDC!
Max size: 500 chars
Long synopsis (optional):
Max size: 5000 chars
Tags:
Speaker directory:
Listed in directory
Not listed
Speakers directory