The concept of microservices is hot and it draws many developers from a diverse background. Unfortunately, we see a lot of ideas from the past rebranded as microservices; whereas the thinking behind microservices implies and promises a bigger change. This talk will go over the details of what actually makes a microservices architecture and how other distributed systems — that rely on queues and other mechanisms to function — fail to fulfill the promise.
A modern microservices implementation should be;
- Zero-configuration: any microservices system will likely have hundreds of services. Therefore, a manual configuration of IP addresses, ports and API capabilities is infeasible.
- Highly-redundant: service failures are very common in this scenario. So it should be very cheap to have copies of such services at disposal with proper fail-over mechanisms.
- Fault-tolerant: the system should tolerate and gracefully handle miscommunication, errors in message processing, timeouts and more.
- Self-healing: it’s normal for outages and failures to occur. The implementation should automatically recover any lost service and functionality.
- Auto-discovery: the services should automatically identify other new services that are introduced to the system to start communication without manual intervention or downtime.
April 8 @ 10:00
10:00 — 10:45 (45′)