Here’s the design and the operationalization of the architecture related to Dynamics 365 / Dynatrace / StresStimulus. I intend to describe below how we measure the performance issue s of the CRM Servers with Dynatrace and StresStimulus.
Context and problem
Here’s the characteristics of the Architecture related to Dynamics 365 Servers :
It’s a point-to-point integration architecture between the CRM Architecture (CRM System with multiple nodes) and external applications : point-to-point communication;
No Messaging infrastructure connects the components and services : highly coupled;
No local orchestration in CRM Architecture and all communication is synchronous;
CRM Architecture does not include Caching Server; but, use of AppFabric Server as Caching Service (for external app);
CRM Reporting Servers not in Frontend or Backend Servers;
CRM Architecture has been scaled :
Vertical scaling has been done (CPU, RAM, …) : servers have been boosted
Horizontal scaling has been done (more node been added) : 6 nodes (4 nodes for the Frontend Services, 2 nodes for the backend Services, 2 nodes for SQL Servers including an CRM Always On Cluster)
CRM Architecture uses Load Balancing (F5) - Round-Robin pattern is implemented.
Issues and problems : what do we know ?
Number of applicative errors (timeoutexception, etc.) is increasing because the communication between the systems is growing : errors are related to CRM frontend and backend servers;
CRM applicative errors impact the communication with the other servers (integration & other), getting for example timeoutexception…;
Errors are related to performance issues;
We know that CRM (frontend services) generate constantly dynamic variables and we absolutely need to catch them during our performance tests.
Question : what do we need ?
We need to dig into the performance issues and so, we need to measure the performance of CRM servers.
Solutions
Architecture Components - Our performance framework.
How does work our Architecture ?
STEPS | DESCRIPTION |
---|---|
1 | Tidal executes the Bat file. |
2 | The bat file execute StresStimulus which executes transaction in the CRM Platform : CRUD Operations. |
3 | Tidal executes the PowerShell Code (Custom Performance Framework - CPF). |
4 | The PowerShell Code executes :
|
5 | The PowerShell Code executes a monitoring : each transaction and code execution will be logged. The log will be accessible by Tidal. |
6 |
|
7 |
|
8 | All the data needed to analyze the performance will be accessible and categorized. |