perf: implement SIMD-accelerated event processing and optimize streaming performance

- Add SIMD utilities for fast byte array comparison and discriminator matching
- Optimize event processor with batch processing and memory pool
- Refactor global state management with concurrent data structures
- Remove deprecated batch processing module
- Enhance metrics collection with reduced overhead
- Improve parser efficiency across all protocol implementations
- Add performance benchmarking dependencies (criterion, wide)
- Update documentation and examples for new architecture

Performance improvements:
- SIMD-accelerated byte operations for instruction parsing
- Concurrent HashMap (DashMap) for better multi-threading
- Optimized memory allocation patterns
- Reduced lock contention in event processing pipeline

Breaking changes: Removed batch.rs module, updated parser interfaces
This commit is contained in:
ysq
2025-08-31 22:18:18 +08:00
parent 52a489ae80
commit 74781e5cbe
30 changed files with 1297 additions and 1259 deletions
-8
View File
@@ -59,14 +59,6 @@ impl ShredStreamGrpc {
Self::new_with_config(endpoint, StreamClientConfig::low_latency()).await
}
/// Creates a new ShredStreamClient with asynchronous processing configuration.
///
/// This is a convenience method that creates a client optimized for high-volume scenarios
/// with balanced throughput and reliability. See `StreamClientConfig::async_processing()`
/// for detailed configuration information.
pub async fn new_async_processing(endpoint: String) -> AnyResult<Self> {
Self::new_with_config(endpoint, StreamClientConfig::async_processing()).await
}
/// 获取当前配置
pub fn get_config(&self) -> &StreamClientConfig {