Behind the scenes, Sales Cookie is able to scale calculation of commissions over large numbers (millions) of transactions using the following:
- Elastic Cloud Compute
- Parallel Data Processing
- Code Optimizations
Elastic Cloud Compute
The Microsoft Azure Platform provides near-infinite compute capacity, which automatically expands based on load. The following graph shows our average compute utilization over a 7 day period. As you can see, the average utilization remains at (or below) 1% capacity, with the highest spikes below 10%.
Parallel Data Processing
When running calculations, eligible transactions must be analyzed and processed. For example, we may need to find which rep to credit, calculate a score, etc. - for each transaction. Those steps are performed in parallel to ensure you get calculation results faster. Similarly, we must create database records to track credits and payouts - this is also done in parallel.
Code Optimizations
Our technical team routinely analyzes performance to find bottlenecks and increase code performance. Using various technical tools (such as database query analyzers or profilers), we squeeze as much performance as possible from Microsoft Azure and our code base, using techniques such as pre-fetching, indexing, or caching.