-
Notifications
You must be signed in to change notification settings - Fork 2
Stress Testing
Daniyal Khan edited this page Dec 11, 2024
·
3 revisions
This project focused on enhancing the Energy Mashup Lab by implementing stress testing to evaluate the market system's ability to handle complex transactions. Our goal was to test performance by simulating real-world energy market scenarios.
- Generated Tender Payloads: Created 500 randomized tender payloads, including buy and sell orders, stream tenders with intervals, and quote payloads, to mimic diverse energy market activities.
- Generated Stream Tender Payloads: Created 500 randomized Stream tender payloads, including stream tenders, buy, and sell orders.
- System Analysis: Stress-tested the system’s matching and fulfillment processes using trace-driven simulations for real-time API validation.
- Future-Ready Framework: Built a robust foundation for analyzing transactional logic with market trace data, ensuring scalability and bottleneck mitigation.
The stress testing provided critical insights into the order-book system's performance, identifying potential weaknesses while future-proofing the market simulation for complex real-world use cases.
- Matched Tenders: 68.6% of the standard tenders were successfully matched, indicating solid performance in regular tender transactions.
- Unmatched Tenders: 31.4% of the tenders remained unmatched, highlighting areas where the matching algorithm may require optimization to handle increased transactional complexity.
- Matched Stream Tenders: Only 25.4% of the stream tenders were matched, showing significant challenges in handling more dynamic and time-sensitive tender types.
- Unmatched Stream Tenders: 74.6% of stream tenders failed to match, suggesting inefficiencies in the current framework for managing interval-based transactions.
- Standard Tenders: The system performed well with regular tenders, successfully matching over two-thirds of the transactions. However, unmatched tenders may indicate occasional misalignment between buyer and seller requirements or timing issues.
- Stream Tenders: The low success rate in matching stream tenders demonstrates a critical area for improvement. Stream tenders, being more dynamic and complex, demand enhanced algorithms to better align energy supply and demand in real-time intervals.
- Optimization Opportunity: The unmatched rates for both tender types highlight the potential for further development of the matching logic, particularly for stream-based transactions, to improve overall system performance and scalability.
This analysis provides insights into the current state of the system, paving the way for enhancements that will ensure much better efficiency and scalability in future energy market simulations.
Code Documentation
- Actor Pseudocode - LMA, LMM, TEUA
- RESTful Controller Payloads
- Position Manager
- Logging
- Time in CTS
- UML and Java Classes
- Simple Binary Encoding (SBE)
- SBE Quick Guide
- Auction Market
Building and Running the Project
- Setup Run and Drive - with YouTube videos
- Dependencies and Prerequisites
- Set Up MySQL
- Parity Terminal Client
- Project Build Steps
- In Case of Difficulty
Docker
- Docker Background
- Docker Setup Requirements
- Docker Setup Part 1
- Docker Setup Part 2
- Running EML-CTS as a Single Executable JAR
- Docker Quick Guide
General Tech Guides
Spring 2024 Updates