外卖网站源码java-spring-boot-grpc-benchmarking:一起试验gRPC和SpringBoot的示例项目

上传者: 38539018 | 上传时间: 2021-09-16 14:41:50 | 文件大小: 1.51MB | 文件类型: ZIP
外卖网站源码java Spring Boot 和 gRPC 基准测试 该项目比较了 gRPC + Protocol Buffers 和 REST + JSON 的性能。 比较是在某些条件下进行的,我们在下面的基准测试部分更详细地讨论了这些条件。 因为这个实验是在我的本地机器上进行的,我接受它只是展示了它们相对于彼此的表现。 :memo: 我学到的是? :pencil: gRPC 和 REST 之间的差异。 :pencil: gRPC和Protocol Buffer背后的理论。 :pencil: 设置一个简单的gRPC服务器和客户端。 :pencil: 利用协议缓冲区进行代码生成。 :pencil: 将REST API与协议缓冲区集成。 :pencil: 使用JMeter 进行基准测试。 :hammer_and_wrench: 项目结构 由 GRPC 和 Spring Boot 服务器支持的单个 Spring Boot 客户端。 样本客户端 一个接受 JSON 和协议缓冲区响应的 Spring Boot 项目。 端口: 5000 端点 // REST /rest/randomNumbers?count={n} -> Generates {n} random numbers as JSON List /r

文件下载

资源详情

[{"title":"( 73 个子文件 1.51MB ) 外卖网站源码java-spring-boot-grpc-benchmarking:一起试验gRPC和SpringBoot的示例项目","children":[{"title":"spring-boot-grpc-benchmarking-main","children":[{"title":"sample-grpc-server","children":[{"title":"pom.xml <span style='color:#111;'> 2.15KB </span>","children":null,"spread":false},{"title":"sample-grpc-server.iml <span style='color:#111;'> 80B </span>","children":null,"spread":false},{"title":"src","children":[{"title":"main","children":[{"title":"java","children":[{"title":"sample","children":[{"title":"SampleServiceImpl.java <span style='color:#111;'> 1.27KB </span>","children":null,"spread":false},{"title":"LargeObjectServiceImpl.java <span style='color:#111;'> 6.52KB </span>","children":null,"spread":false}],"spread":true},{"title":"Application.java <span style='color:#111;'> 529B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true},{"title":".idea","children":[{"title":"uiDesigner.xml <span style='color:#111;'> 8.59KB </span>","children":null,"spread":false},{"title":"misc.xml <span style='color:#111;'> 527B </span>","children":null,"spread":false},{"title":"jarRepositories.xml <span style='color:#111;'> 1.30KB </span>","children":null,"spread":false},{"title":"encodings.xml <span style='color:#111;'> 186B </span>","children":null,"spread":false},{"title":"compiler.xml <span style='color:#111;'> 539B </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 176B </span>","children":null,"spread":false},{"title":"inspectionProfiles","children":[{"title":"Project_Default.xml <span style='color:#111;'> 798B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true},{"title":"sample-grpc-codegen","children":[{"title":"pom.xml <span style='color:#111;'> 4.28KB </span>","children":null,"spread":false},{"title":"sample-grpc-codegen.iml <span style='color:#111;'> 80B </span>","children":null,"spread":false},{"title":"src","children":[{"title":"main","children":[{"title":"proto","children":[{"title":"LargeObject.proto <span style='color:#111;'> 3.25KB </span>","children":null,"spread":false},{"title":"Sample.proto <span style='color:#111;'> 357B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true},{"title":".idea","children":[{"title":"misc.xml <span style='color:#111;'> 527B </span>","children":null,"spread":false},{"title":"jarRepositories.xml <span style='color:#111;'> 845B </span>","children":null,"spread":false},{"title":"vcs.xml <span style='color:#111;'> 183B </span>","children":null,"spread":false},{"title":"encodings.xml <span style='color:#111;'> 262B </span>","children":null,"spread":false},{"title":"compiler.xml <span style='color:#111;'> 540B </span>","children":null,"spread":false},{"title":"sonarlint","children":[{"title":"issuestore","children":[{"title":"index.pb <span style='color:#111;'> 57B </span>","children":null,"spread":false},{"title":"4","children":[{"title":"4","children":[{"title":"442292b8a7efeabbe4cc176709b833b1792140ec <span style='color:#111;'> 0B </span>","children":null,"spread":false}],"spread":false}],"spread":false}],"spread":true}],"spread":true},{"title":".gitignore <span style='color:#111;'> 176B </span>","children":null,"spread":false},{"title":"inspectionProfiles","children":[{"title":"Project_Default.xml <span style='color:#111;'> 798B </span>","children":null,"spread":false}],"spread":false}],"spread":true}],"spread":true},{"title":"benchmarking","children":[{"title":".DS_Store <span style='color:#111;'> 6.00KB </span>","children":null,"spread":false},{"title":"jmeter-rest-vs-grpc.jmx <span style='color:#111;'> 82.10KB </span>","children":null,"spread":false},{"title":"response-time-graphs","children":[{"title":"small-rest-json.png <span style='color:#111;'> 209.65KB </span>","children":null,"spread":false},{"title":"large-rest-json.png <span style='color:#111;'> 197.65KB </span>","children":null,"spread":false},{"title":"very-large-rest-json.png <span style='color:#111;'> 33.13KB </span>","children":null,"spread":false},{"title":"very-large-grpc.png <span style='color:#111;'> 33.44KB </span>","children":null,"spread":false},{"title":"large-grpc.png <span style='color:#111;'> 171.30KB </span>","children":null,"spread":false},{"title":"collage.png <span style='color:#111;'> 529.14KB </span>","children":null,"spread":false},{"title":"small-grpc.png <span style='color:#111;'> 155.64KB </span>","children":null,"spread":false},{"title":"medium-rest-json.png <span style='color:#111;'> 179.53KB </span>","children":null,"spread":false},{"title":"medium-grpc.png <span style='color:#111;'> 155.46KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"sample-client","children":[{"title":"pom.xml <span style='color:#111;'> 2.15KB </span>","children":null,"spread":false},{"title":"mvnw <span style='color:#111;'> 9.83KB </span>","children":null,"spread":false},{"title":"src","children":[{"title":"test","children":[{"title":"java","children":[{"title":"com","children":[{"title":"recepinanc","children":[{"title":"sampleclient","children":[{"title":"SampleSpringbootClientApplicationTests.java <span style='color:#111;'> 235B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true},{"title":"main","children":[{"title":"resources","children":[{"title":"application.properties <span style='color:#111;'> 16B </span>","children":null,"spread":false}],"spread":true},{"title":"java","children":[{"title":"com","children":[{"title":"recepinanc","children":[{"title":"sampleclient","children":[{"title":"SampleClientApplication.java <span style='color:#111;'> 346B </span>","children":null,"spread":false},{"title":"ProtobufConfiguration.java <span style='color:#111;'> 753B </span>","children":null,"spread":false},{"title":"sample","children":[{"title":"SampleRestClientService.java <span style='color:#111;'> 208B </span>","children":null,"spread":false},{"title":"SampleGrpcClientService.java <span style='color:#111;'> 166B </span>","children":null,"spread":false},{"title":"SampleController.java <span style='color:#111;'> 1.58KB </span>","children":null,"spread":false},{"title":"SampleRestClientServiceImpl.java <span style='color:#111;'> 1.17KB </span>","children":null,"spread":false},{"title":"SampleGrpcClientServiceImpl.java <span style='color:#111;'> 1.53KB </span>","children":null,"spread":false}],"spread":false}],"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true},{"title":".gitignore <span style='color:#111;'> 395B </span>","children":null,"spread":false},{"title":".mvn","children":[{"title":"wrapper","children":[{"title":"maven-wrapper.jar <span style='color:#111;'> 49.52KB </span>","children":null,"spread":false},{"title":"MavenWrapperDownloader.java <span style='color:#111;'> 4.83KB </span>","children":null,"spread":false},{"title":"maven-wrapper.properties <span style='color:#111;'> 218B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"mvnw.cmd <span style='color:#111;'> 6.45KB </span>","children":null,"spread":false}],"spread":true},{"title":".DS_Store <span style='color:#111;'> 8.00KB </span>","children":null,"spread":false},{"title":"sample-springboot-server","children":[{"title":"pom.xml <span style='color:#111;'> 1.61KB </span>","children":null,"spread":false},{"title":"mvnw <span style='color:#111;'> 9.83KB </span>","children":null,"spread":false},{"title":"src","children":[{"title":"test","children":[{"title":"java","children":[{"title":"com","children":[{"title":"recepinanc","children":[{"title":"samplespringbootserver","children":[{"title":"SampleSpringbootServerApplicationTests.java <span style='color:#111;'> 245B </span>","children":null,"spread":false}],"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true},{"title":"main","children":[{"title":"resources","children":[{"title":"application.properties <span style='color:#111;'> 17B </span>","children":null,"spread":false}],"spread":true},{"title":"java","children":[{"title":"com","children":[{"title":"recepinanc","children":[{"title":"samplespringbootserver","children":[{"title":"ProtobufConfiguration.java <span style='color:#111;'> 764B </span>","children":null,"spread":false},{"title":"sample","children":[{"title":"SampleServiceImpl.java <span style='color:#111;'> 10.42KB </span>","children":null,"spread":false},{"title":"SampleController.java <span style='color:#111;'> 1.37KB </span>","children":null,"spread":false},{"title":"SampleService.java <span style='color:#111;'> 398B </span>","children":null,"spread":false}],"spread":false},{"title":"pojo","children":[{"title":"LargeObjectJsonResponse.java <span style='color:#111;'> 402B </span>","children":null,"spread":false},{"title":"LargeObjectPOJO.java <span style='color:#111;'> 19.82KB </span>","children":null,"spread":false}],"spread":false},{"title":"SampleSpringbootServerApplication.java <span style='color:#111;'> 378B </span>","children":null,"spread":false}],"spread":false}],"spread":false}],"spread":false}],"spread":true}],"spread":true}],"spread":true},{"title":".gitignore <span style='color:#111;'> 395B </span>","children":null,"spread":false},{"title":".mvn","children":[{"title":"wrapper","children":[{"title":"maven-wrapper.jar <span style='color:#111;'> 49.52KB </span>","children":null,"spread":false},{"title":"MavenWrapperDownloader.java <span style='color:#111;'> 4.83KB </span>","children":null,"spread":false},{"title":"maven-wrapper.properties <span style='color:#111;'> 218B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"mvnw.cmd <span style='color:#111;'> 6.45KB </span>","children":null,"spread":false}],"spread":true},{"title":".gitignore <span style='color:#111;'> 2.25KB </span>","children":null,"spread":false},{"title":"sample_grpc_project_architecture.png <span style='color:#111;'> 31.69KB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 7.13KB </span>","children":null,"spread":false},{"title":"sample_grpc_project_architecture.xml <span style='color:#111;'> 1.61KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明