##flash RPC ####The framework used to measure RPC performance three important factors: IO model, thread model, and data protocol
We can use the following technologies to achieve high-performance rpc
- netty, the default implementation of asynchronous non-blocking I/O (NIO) is improved to improve concurrent throughput
- http2, its multiplexing feature can make concurrent calls on clients without creating connection pools, and its performance is superior
- Protostuff, Protostuff is based on Google protobuf, providing more functions and easier usage
- CachedThreadPool, the server-side business processing thread group uses cache thread group to avoid blocking business processing.
####Module Design
- core core code (define server startup, client startup, metadata, and integrate modules)
- transport-netty transport layer encapsulation netty
- codec-http2 protocol http2
- Protostuff used for protocol-protostuff serialization
- test test
Designed intention withdrawal module decoupling and high scalability
#### Performance Testing Use jmh for benchmarking: tps: 105785