What if your Mendix application always functioned perfectly and you never had to concern yourself with performance? While that is a pleasant thought, it’s just not possible. As the Support coordinator and senior technical consultant at Mansystems, I am the first to know that as an application becomes more complex and popular among users, it will begin to experience performance issues. The question is what to do about those issues—and when.
In this blog, I will not go in to details about performance best practices or how to solve performance issues. I will speak about three fundamental aspects of performance testing for Mendix developers. This is essential information because, as we all know, performance plays a major role in the success of an application. For example, Google found that a half-second delay caused a 20% drop in traffic and killed user satisfaction. Every company must be aware of the level of performance that is acceptable to its users. Organizations also need to develop criteria for new applications as well as those that have already been in use for some time- particularly when these apps no longer meet performance requirements.
To preface the forthcoming steps, performance should be an integral part of any Mendix application development project. You must approach managing performance as a series of layers, each of which must be addressed throughout the development process.
First, you will need Mendix development rules. These rules must be taught, applied, checked by two people using the four-eyes principle, and ideally, automatically checked by software. If you are a Mendix Developer, you must learn how to design for performance upfront while continuously prioritizing it throughout the span of the project. The performance best practices on the Mendix website will help you get started:
Next, you should be able to test and measure your application against sufficient sample data- we call this production alike. Obviously, if an application does not perform on your laptop, it most certainly will not perform well in a production environment. However, even if it does perform well on your laptop, there is still a chance that it will not perform well in production. Within each of your test environments, you should have access to a large production like database.
Lastly, begin measuring and monitoring how your app acts. Application performance monitoring (APM) tools can be used to measure the duration of microflows and actions. The Mendix Application Performance Monitor has been built specifically for Mendix and points exactly to the processes that consume the most time. This way, you immediately know where to start improving performance. Monitoring should be done during development, test, and production phases to ensure that any and all performance issues are detected as early as possible.
I hope this blog has given you an idea of how to manage performance issues throughout development stages. It is vital to remember that you should not wait for the first huge fire to begin and then rely on support to fix performance issues. You must be proactive and take performance into consideration from the beginning of your development process. If you would like to know more about optimizing the performance of your Mendix applications, please do not hesitate to contact us.