architecture
February 17, 2025Less than 1 minute
TEQ consists of a user interface and a back end, each encapsulating distinct functional units.
User Interface
TEQ user interface is written by Vue.js, the origin source code is in ./front
folder.
The TEQ User Interface integrates all capabilities into a cross-platform Web application, offering three main features:
- A controller provides basic execution controls (e.g., start, stop, and restart) and displays runtime information, such as logs, node status, and resource usage.
- A configurator features a panel for editing runtime setup items, including file paths for data and queries, and parameters for network and computing node modeling. Users can also configure node properties in real time during simulation.
- A visualizer fetches information and measurements from the back end to plot data for visual analysis, comparison, and export.
Backend
The Teq Back End provides the following key functionalities:
- An executor assembles user code into Teq executable packages, runs them in Docker containers, manages container lifecycles, and captures computational measurements.
- A data and query player produces data and query streams from data files based on specified orders and speeds.
- A measurer collects individual node measurements and transforms them into system-wide metrics based on simulated runtime information and optional customizations.