Aspectow is an enterprise-grade platform management system and control plane for Aspectran-based web applications. Serving as the foundational framework for Aspectow Enterprise, it provides integrated Observability, Controllability, and Security Governance across distributed and clustered environments through the Aspectow Management Console.
Aspectow features a modular architecture designed to scale seamlessly from standalone servers to multi-node enterprise clusters:
aspectow-node(Node Manager & Clustering): Manages cluster topology and node-centric grouping. Offers Direct Mode (static peer-to-peer 1:1 connectivity) and Gateway Mode (dynamic Redis membership), Lettuce Redis-based distributed schedule locking (RedisScheduledJobLockProvider), virtualized WebSockets over Redis, remote command dispatching, and PBE token-based inter-node security.aspectow-appmon(Application Telemetry & Observability): Collects performance metrics, traffic stats, and application logs. Features group-level time-series metric aggregation for auto-scaling environments, on-demand real-time log streaming with keep-alive signal detection, selective app monitoring, and MyBatis-backed persistent metric rollups.aspectow-console(Control Plane Management Console): Web-based central management console providing dedicated control panels for cluster administration, real-time framework introspection (Anatomy), security vault management (PBE Credentials), role-based user management (RBAC), and observability telemetry dashboards.
- Distributed Clustering & Node Management
- Node-Centric Grouping: Assigns logical group identities at the node level, enabling applications on a node to inherit group parameters for unified control.
- Distributed Schedule Lock: Guarantees single-node task execution across clusters using Redis
SET NXlocks (releasedOnUnlock=falseprevents clock drift duplicates). - Virtual WebSocket & Remote Command Dispatching: Routes WebSocket frames via Redis Pub/Sub across private networks and dispatches async control commands to targeted nodes.
- Observability & Telemetry (AppMon)
- Group-Level Aggregation: Aggregates time-series performance metrics (TPS, error rate, active sessions) by group ID to maintain continuous metrics during container auto-scaling.
- On-Demand Log Streaming: Streams live application logs only when requested by administrators in the console UI, automatically stopping when session heartbeats fade.
- Framework Introspection & Anatomy
- Live inspection of running Aspectran rules (Translets, Beans, Aspects, Schedules).
- Interactive AsEL expression tester, APON ↔ JSON/XML converters, and path matching utilities.
- Automatic sensitive data masking (
********) for passwords, secret keys, and passphrases during APON serialization.
- Security & Vault Governance
- Role-Based Access Control (RBAC) with detailed login audit logs.
- PBE-encrypted credential vault supporting
SIMPLE,PERSISTENT, andTIME_LIMITEDsecurity tokens for sensitive properties.
- Java: 21 or later
- Maven: 3.9.4 or later (the included Maven wrapper
./build.shis recommended) - Redis (Optional): Required for cluster mode, distributed locking, and virtual WebSocket relaying.
To build Aspectow from the source code, run the following commands:
-
Clone the repository:
git clone https://github.com/aspectran/aspectow.git
-
Navigate to the project directory:
cd aspectow -
Build the project:
./build.sh rebuild
After building the project, launch the included Aspectow Management Console demo:
-
Start the demo server:
./build.sh demo
(Note: If the project has not been built yet,
./build.sh demowill automatically compile and package the required dependencies before starting.) -
Access the console in your web browser: http://localhost:8082/console
Aspectow is licensed under the Apache License 2.0.
