Covis Pharmacy

Key Benefits

Challenge: Limited view of performance in production

COVIS needed to ensure that its customer service applications were up and running, but also that response times stayed below one second, even under heavy loads.

“With our distributed architecture, this means communication between the front-end, caches, database and services has to be robust, scalable and fast, as nearly every request touches more than one of these components,” said Kristof Berger, Chief Software Architect at COVIS. “Furthermore, if our application is not meeting its SLAs, it's important to us to be able to see which components are not meeting SLA criteria so we can troubleshoot quickly.”

COVIS relied on its developers to use trace tools to test and resolve performance issues before they reached production, where finding performance problems became “a nightmare.” These tools gave insight into a single component, but could not provide visibility across the company's entire distributed environment.

“The downsides of this method are obvious,” said Berger. “In development you always have a rather reduced perspective of what the application does. In production there usually is no application- or performance-centric monitoring, only infrastructure monitoring, which in most cases is misleading?a server in good health might still perform miserably due to miserable code.”

“I never thought I'd say this, but I've actually started looking forward to problems since they're so easy to find and fix.”

Kristof Berger, Chief Software Architect, COVIS

About Covis

German-based Dr. Glinz COVIS GmbH provides enterprise-level custom CRM solutions. Its custom-built CRM applications are used across large organizations, from the service desk to production, consolidating all customer data in one UI. Customer concerns like complaints, orders and questions about products or contracts are handled by the application and coupled with a BPM platform. The largest of these applications handles up to 200,000 transactions an hour during peak times, filing 14 million customer complaints and questions per year and servicing more than 4,000 users within client organizations.

AppDynamics provided wide visibility and deep insight

What COVIS needed was an application performance management (APM) tool that could provide both wide visibility across a distributed application as well as deep insight into the functioning of specific components, all in a live production environment.

“Our vision of what we wanted was a tool that could monitor transactions across all our tiers, gathering and storing context information for later analysis, and also give us an application-centric perspective on how the application performs both in test and in production,” Berger said. “The AppDynamics platform delivered just that: no-time installation, transaction detection, the possibility to leverage instrumentation with custom rules, and a performance impact analysis that can easily be assigned a dollar value.”

According to Berger, the AppDynamics solution was up and running in a matter of minutes. “The controller took 20 minutes, the agents took five minutes and configuring the app agents took 20 seconds. Smaller environments can be done manually in less than half an hour, and for larger ones you can create custom rules pretty simply your system can be fully configured within an hour.”

COVIS also evaluated another vendor but didn't pursue it further because the solution would “keep you away from what it knows about your software.” Berger added, “The bottom line is, other tools are not as easy to use and understand as the AppDynamics platform.”

Identified and solved performance problems more quickly

“Finding root causes for errors or bad performance used to be a nightmare, and most of our development team believed this would completely change when using another tool,” Berger said. “Well, it did. As soon as the AppDynamics agents started monitoring the application's components, we had a crystal-clear view of what happened, how long it took and which components were bottlenecks in the specific scenarios. Now we can identify the root cause of a problem within 5-10 minutes.”

The AppDynamics solution was also used in the COVIS test environment. “With every build, we ran load tests to verify our solutions, and we had direct feedback from the AppDynamics platform about whether these solutions changed the performance for the better, or not,” Berger said. “Running the AppDynamics solution within our test infrastructure did not influence the system's performance too much (only about 2-3% according to our load tests) and it enabled us to completely analyze what happened.”

With the AppDynamics platform installed, COVIS was able to quickly resolve persistent performance issues. For example, one of the biggest application problems COVIS had was its business rule engine, which served about 1,000 calls per minute, but wasn't performing as Berger's team expected. With the AppDynamics solution, the team discovered within five minutes that the engine was recompiling each rule on every call instead of using the precompiled versions, which was putting a heavy load on the machine. The fix was done in 30 seconds, deployed in a minute and within another two minutes, they could verify through the AppDynamics solution that they had solved the problem.

Ultimately AppDynamics has provided value not just for Berger, but for the entire IT organization at COVIS. “Our developers can analyze user problems much better now, as they always have the information about what happened at their fingertips. Our service desk is able to proactively monitor the applications, and then give the developers the exact location of a problem,” Berger said. “I never thought I'd say this, but I've actually started looking forward to problems since they're so easy to find and fix.”

“The bottom line is, other tools are not as easy to use and understand as the AppDynamics platform.”