As a programmer you are writing code. As a designer you are creating solid designs and if you are wise, the code is a good reflection of your design. My previous post was about Domain Driven Design. One of the things I want to repeat is the strong relation between the domain, the design and the code. The best way to accomplish this is to combine the role of designer and implementer. That way you get the best representation of the domain in your solution.
Why this introduction, when I promised to write about performance and monitoring? For performance I see the same relationship. A tester creates the test plan, including the performance test. If you are lucky requirements for monitoring are available as well. Ok, I do not want to combine the role of tester and developer. Still they should both have a very good idea about what the other one does and how you can help each other. Real performance testing is hard and should not be taken to light. Monitoring however can be done on a low level during development. How often have you written log statements like: This method X is executed. Sometimes with a start and end time. Some of you might have used there own aspects to be non intrusive and other might have used a framework.
This blog post is about using a framework to do basic performance measurement and monitoring. The framework I am going to discuss is the Beet framework.
Beet records user behavior and performance data for your Spring-based Java application. It can thus help you to analyze usage patterns and research production performance issues.
Read on to learn about my experiences with the framework and why I like it to do some basic monitoring.
Continue reading Using Beet to monitor your (spring framework) application