gitextract_s2n0yisx/ ├── .gitattributes ├── .gitignore ├── LICENSE ├── README.md ├── armeria-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ └── rpc/ │ └── Client.java ├── armeria-server/ │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ ├── rpc/ │ │ └── Server.java │ └── service/ │ └── ArmeriaUserServiceServerImpl.java ├── benchmark-base/ │ ├── .java-version │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ ├── bean/ │ │ ├── Page.java │ │ └── User.java │ ├── pool/ │ │ ├── ConcurrentObjectPool.java │ │ ├── LockObjectPool.java │ │ ├── UnsafeUtils.java │ │ ├── ViberObjectPool.java │ │ └── WaitStrategy.java │ ├── rpc/ │ │ ├── AbstractClient.java │ │ ├── protocol/ │ │ │ ├── Request.java │ │ │ └── Response.java │ │ ├── route/ │ │ │ └── RouteService.java │ │ └── util/ │ │ ├── ByteBufferUtils.java │ │ ├── HttpClientUtils.java │ │ └── JsonUtils.java │ └── service/ │ ├── ServiceRegister.java │ ├── UserService.java │ ├── UserServiceJsonHttpClientImpl.java │ └── UserServiceServerImpl.java ├── benchmark.java ├── brpc-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ └── Client.java │ └── resources/ │ └── logback.xml ├── brpc-server/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ └── Server.java │ └── resources/ │ └── logback.xml ├── dubbo-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ └── Client.java │ └── resources/ │ ├── consumer.xml │ └── logback.xml ├── dubbo-kryo-client/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ └── Client.java │ └── resources/ │ ├── consumer.xml │ └── logback.xml ├── dubbo-kryo-server/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ └── Server.java │ └── resources/ │ ├── logback.xml │ └── provider.xml ├── dubbo-server/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ └── Server.java │ └── resources/ │ ├── logback.xml │ └── provider.xml ├── grpc-client/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Client.java │ │ └── grpc/ │ │ ├── GrpcUserServiceClient.java │ │ └── UserServiceGrpcClientImpl.java │ ├── proto/ │ │ └── UserService.proto │ └── resources/ │ └── logback.xml ├── grpc-server/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Server.java │ │ └── grpc/ │ │ └── server/ │ │ └── UserServiceGrpcServerImpl.java │ ├── proto/ │ │ └── UserService.proto │ └── resources/ │ └── logback.xml ├── hprose-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ └── Client.java │ └── resources/ │ └── consumer.xml ├── hprose-server/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ └── Server.java │ └── resources/ │ └── provider.xml ├── jupiter-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ ├── rpc/ │ │ │ └── Client.java │ │ └── service/ │ │ └── JupiterUserService.java │ └── resources/ │ ├── META-INF/ │ │ └── services/ │ │ └── org.jupiter.rpc.consumer.processor.ConsumerExecutorFactory │ ├── logback.xml │ └── spring-consumer.xml ├── jupiter-server/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ ├── rpc/ │ │ │ └── Server.java │ │ └── service/ │ │ ├── JupiterUserService.java │ │ └── JupiterUserServiceServerImpl.java │ └── resources/ │ ├── META-INF/ │ │ └── services/ │ │ └── org.jupiter.rpc.provider.processor.ProviderExecutorFactory │ ├── logback.xml │ └── spring-provider.xml ├── motan-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ ├── bean/ │ │ │ └── MotanUser.java │ │ ├── rpc/ │ │ │ └── Client.java │ │ └── service/ │ │ ├── MotanUserService.java │ │ └── MotanUserServiceServerImpl.java │ └── resources/ │ └── motan_client.xml ├── motan-server/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ ├── bean/ │ │ │ └── MotanUser.java │ │ ├── rpc/ │ │ │ └── Server.java │ │ └── service/ │ │ ├── MotanUserService.java │ │ └── MotanUserServiceServerImpl.java │ └── resources/ │ └── motan_server.xml ├── netty-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Client.java │ │ └── netty/ │ │ ├── client/ │ │ │ ├── NettyClientConnector.java │ │ │ ├── UserServiceNettyClientImpl.java │ │ │ ├── codec/ │ │ │ │ ├── ProtocolDecoder.java │ │ │ │ └── ProtocolEncoder.java │ │ │ ├── future/ │ │ │ │ └── FutureContainer.java │ │ │ └── handler/ │ │ │ ├── BenchmarkChannelInitializer.java │ │ │ └── BenchmarkClientHandler.java │ │ └── serializer/ │ │ ├── BooleanSerializer.java │ │ ├── FastestSerializer.java │ │ ├── IntegerSerializer.java │ │ ├── LocalDateSerializer.java │ │ ├── LocalDateTimeSerializer.java │ │ ├── LocalTimeSerializer.java │ │ ├── LongSerializer.java │ │ ├── ObjectSerializer.java │ │ ├── Register.java │ │ ├── RequestSerializer.java │ │ ├── ResponseSerializer.java │ │ ├── Serializer.java │ │ ├── StringSerializer.java │ │ ├── UserPageSerializer.java │ │ ├── UserSerializer.java │ │ └── VoidSerializer.java │ └── resources/ │ └── logback.xml ├── netty-server/ │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ └── rpc/ │ ├── Server.java │ └── netty/ │ ├── serializer/ │ │ ├── BooleanSerializer.java │ │ ├── FastestSerializer.java │ │ ├── IntegerSerializer.java │ │ ├── LocalDateSerializer.java │ │ ├── LocalDateTimeSerializer.java │ │ ├── LocalTimeSerializer.java │ │ ├── LongSerializer.java │ │ ├── ObjectSerializer.java │ │ ├── Register.java │ │ ├── RequestSerializer.java │ │ ├── ResponseSerializer.java │ │ ├── Serializer.java │ │ ├── StringSerializer.java │ │ ├── UserPageSerializer.java │ │ ├── UserSerializer.java │ │ └── VoidSerializer.java │ └── server/ │ ├── codec/ │ │ ├── ProtocolDecoder.java │ │ └── ProtocolEncoder.java │ └── handler/ │ ├── BenchmarkChannelInitializer.java │ └── BenchmarkServerHandler.java ├── pom.xml ├── rapidoid-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ └── rpc/ │ └── Client.java ├── rapidoid-server/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ └── rpc/ │ ├── Server.java │ └── rapidoid/ │ └── server/ │ ├── CreateUserController.java │ ├── GetUserController.java │ ├── ListUserController.java │ └── UserExistController.java ├── rsocket-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Client.java │ │ └── rsocket/ │ │ └── UserServiceRsocketClientImpl.java │ └── proto/ │ └── UserService.proto ├── rsocket-server/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Server.java │ │ └── rsocket/ │ │ └── server/ │ │ └── UserServiceRsocketServerImpl.java │ └── proto/ │ └── UserService.proto ├── servicecomb-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ └── Client.java │ └── resources/ │ ├── META-INF/ │ │ └── spring/ │ │ └── benchmark.consumer.bean.xml │ ├── config/ │ │ └── log4j.demo.properties │ ├── log4j.properties │ └── microservice.yaml ├── servicecomb-server/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ ├── rpc/ │ │ │ └── Server.java │ │ └── service/ │ │ └── ServiceCombUserServiceServerImpl.java │ └── resources/ │ ├── META-INF/ │ │ └── spring/ │ │ └── benchmark.provider.bean.xml │ ├── config/ │ │ └── log4j.demo.properties │ ├── log4j.properties │ └── microservice.yaml ├── sofa-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ └── Client.java │ └── resources/ │ └── logback.xml ├── sofa-server/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ └── Server.java │ └── resources/ │ └── logback.xml ├── springboot-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ └── rpc/ │ └── Client.java ├── springboot-server/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Server.java │ │ └── springboot/ │ │ └── server/ │ │ ├── CreateUserController.java │ │ ├── GetUserController.java │ │ ├── ListUserController.java │ │ └── UserExistController.java │ └── resources/ │ └── application.yml ├── springboot-undertow-client/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ └── rpc/ │ └── Client.java ├── springboot-undertow-server/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Server.java │ │ └── springboot/ │ │ └── server/ │ │ ├── CreateUserController.java │ │ ├── GetUserController.java │ │ ├── ListUserController.java │ │ └── UserExistController.java │ └── resources/ │ └── application.yml ├── springwebflux-client/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ └── rpc/ │ └── Client.java ├── springwebflux-server/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Server.java │ │ └── webflux/ │ │ └── server/ │ │ ├── CreateUserController.java │ │ ├── GetUserController.java │ │ ├── ListUserController.java │ │ └── UserExistController.java │ └── resources/ │ └── application.yml ├── thrift-client/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Client.java │ │ └── thrift/ │ │ ├── Converter.java │ │ ├── TServiceClientNoPrint.java │ │ ├── ThriftUserServiceClient.java │ │ ├── User.java │ │ ├── UserPage.java │ │ ├── UserService.java │ │ └── UserServiceThriftClientImpl.java │ ├── resources/ │ │ └── logback.xml │ └── thrift/ │ └── UserService.thrift ├── thrift-server/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Server.java │ │ └── thrift/ │ │ ├── Converter.java │ │ ├── User.java │ │ ├── UserPage.java │ │ ├── UserService.java │ │ └── UserServiceThriftServerImpl.java │ └── thrift/ │ ├── UserService.thrift │ └── gen-java/ │ └── benchmark/ │ └── rpc/ │ └── thrift/ │ ├── User.java │ ├── UserPage.java │ └── UserService.java ├── turbo-rest-client/ │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ ├── rpc/ │ │ └── Client.java │ └── service/ │ └── TurboUserServiceJsonHttpClientImpl.java ├── turbo-rest-server/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Server.java │ │ └── service/ │ │ ├── TurboUserService.java │ │ └── TurboUserServiceServerImpl.java │ └── resources/ │ └── logback.xml ├── turbo-rpc-client/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Client.java │ │ └── service/ │ │ └── TurboUserService.java │ └── resources/ │ ├── logback.xml │ └── turbo-client.conf ├── turbo-rpc-server/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── benchmark/ │ │ └── rpc/ │ │ ├── Server.java │ │ └── service/ │ │ ├── TurboUserService.java │ │ └── TurboUserServiceServerImpl.java │ └── resources/ │ ├── logback.xml │ └── turbo-server.conf ├── undertow-async-client/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ └── rpc/ │ └── Client.java ├── undertow-async-server/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ ├── benchmark/ │ │ │ └── rpc/ │ │ │ ├── Server.java │ │ │ └── undertow/ │ │ │ └── server/ │ │ │ ├── CreateUserHandler.java │ │ │ ├── GetUserHandler.java │ │ │ ├── ListUserHandler.java │ │ │ └── UserExistHandler.java │ │ └── io/ │ │ └── undertow/ │ │ └── async/ │ │ ├── handler/ │ │ │ └── AsyncHttpHandler.java │ │ ├── io/ │ │ │ ├── PooledByteBufferInputStream.java │ │ │ └── PooledByteBufferOutputStream.java │ │ └── util/ │ │ └── UnsafeUtils.java │ └── resources/ │ └── logback.xml ├── undertow-client/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── benchmark/ │ └── rpc/ │ └── Client.java └── undertow-server/ ├── .gitignore ├── pom.xml └── src/ └── main/ ├── java/ │ └── benchmark/ │ └── rpc/ │ ├── Server.java │ └── undertow/ │ └── server/ │ ├── CreateUserHandler.java │ ├── GetUserHandler.java │ ├── ListUserHandler.java │ └── UserExistHandler.java └── resources/ └── logback.xml