Submitted by Sean Farmar
We usually think of monitoring as something the Operations team will take care of. In a "monolithic" system that might be enough. But we like to distribute our systems. We deploy microservices with persistent queues and automated retries. We allow them to tolerate failure, at least for short periods of time. Sometimes it may seem everything is running OK. No heavy load, no memory or CPU surges, no immediately observable slow-downs. But in fact, the system may not be functioning and effective performance is degrading. Messages are piling up in queues. Business SLA's are starting to get breached. With distributed systems, we need to do more than basic monitoring. Let's talk about how we can do a better job at keeping the lights on and ensuring our systems are functioning as designed. I'll introduce various aspects of monitoring and the things we need to think about when writing code. I'll show how you can optimize your distributed systems and find performance bottlenecks. You'll discover how you can win if you give monitoring a bit more love :-)
Sean Farmar holds the world record for answering the most NServiceBus questions - even more than Udi :-). With over 20 years of experience, he specializes in providing simple solutions for complex business requirements using NServiceBus and applying SOA principles inspired by Udi Dahan. As a solution architect with Particular Software, the creators of NServiceBus, Sean provides support, training and consulting for customers using NServiceBus and the Particular Platform.