Welcome to the Cyaim.WebSocketServer documentation center. This documentation provides a complete guide to using the library, organized by modules, to help you quickly understand and use various features.
- Quick Start - Get started in 5 minutes
- Core Library - Core features, routing system, handlers
- Configuration Guide - Detailed configuration options and best practices
- API Reference - Complete API documentation
- Cluster Module - Multi-node cluster, Raft protocol, message routing
- Cluster Transports - Redis, RabbitMQ transport implementations
- Hybrid Cluster Transport - Redis + RabbitMQ hybrid transport solution
- Metrics - OpenTelemetry integration, performance monitoring
- Dashboard - Monitoring panel, API interfaces, frontend UI
- Read Quick Start to understand basic concepts
- Check Core Library to learn basic features
- Refer to sample projects for practical applications
- Read Cluster Module to understand cluster architecture
- Choose transport: WebSocket, Redis, RabbitMQ, or Hybrid
- Check Cluster Transports for extension packages
- For automatic discovery and load balancing, see Hybrid Cluster Transport
- Read Metrics to understand monitoring features
- Check Dashboard for visualization interface
- Configure OpenTelemetry to export metrics
- Read Configuration Guide for all configurations
- Refer to API Reference for detailed parameters
- Check configuration files in sample projects
Cyaim.WebSocketServer/
├── Cyaim.WebSocketServer/ # Core library
│ ├── Infrastructure/
│ │ ├── Cluster/ # Cluster functionality
│ │ ├── Handlers/ # Handlers
│ │ ├── Configures/ # Configuration
│ │ └── Metrics/ # Metrics
│ ├── Middlewares/ # Middlewares
│ └── ...
├── Cyaim.WebSocketServer.Dashboard/ # Dashboard backend
├── Cyaim.WebSocketServer.Cluster.*/ # Cluster transport extensions
├── Sample/ # Sample projects
└── docs/ # Documentation directory
├── en/ # English documentation
└── zh-cn/ # Chinese documentation
- ✅ Lightweight & High Performance - Based on ASP.NET Core, excellent performance
- ✅ Routing System - MVC-like routing mechanism, supports RESTful API
- ✅ Full Duplex Communication - Supports bidirectional communication
- ✅ Multiplexing - Single connection supports multiple requests/responses
- ✅ Pipeline Processing - Supports middleware pipeline pattern
- ✅ Multi-node Cluster - Supports horizontal scaling
- ✅ Raft Protocol - Raft-based consensus protocol
- ✅ Auto Routing - Automatic cross-node message routing
- ✅ Fault Tolerance - Automatic node failure handling
- ✅ Graceful Shutdown - Supports connection migration and graceful shutdown
- ✅ Real-time Statistics - Connection count, message count, bandwidth, etc.
- ✅ OpenTelemetry - Standard metrics export
- ✅ Dashboard - Visual monitoring interface
- ✅ Performance Analysis - Detailed performance metrics
- .NET Standard 2.1
- .NET 6.0
- .NET 7.0
- .NET 8.0
- .NET 9.0
Current Version: 1.7.8
Check CHANGELOG.md for version history.
Contributions are welcome! Please check CONTRIBUTING.md for contribution guidelines.
This project is licensed under LICENSE.
- Check the troubleshooting section in the documentation
- Submit an Issue on GitHub
- Check sample projects for practical usage
Last Updated: 2024-12-XX