现如今微服务很流行,而微服务很有可能是使用不同语言进行构建的。而微服务之间通常需要相互通信,所以微服务之间必须在以下几个方面达成共识:

  • 需要使用某种API
  • 数据格式
  • 错误的模式
  • 负载均衡
  • 。。。

现在最流行的一种API风格可能是REST,它主要是通过HTTP协议来传输JSON数据。

但是现在我们可以看看gRPC(https://grpc.io/),它来自Google,并且支持众多主流的语言包括Go,Dart,C#,C/C++,Nodejs,Python等等。

下面就学习一下gRPC。

gRPC能解决哪些问题?

构建(Web)API是挺麻烦的,因为构建API时我们得考虑:

  • 数据的格式是JSON、XML还是二进制的;
  • 端点地址以及GET还是POST等;
  • 如何调用API以及对异常的处理规则;
  • API的效率:一次调用读取多少数据?是否太多了或太少了?太少的话可能会导致多次API的调用;
  • 延迟;
  • 扩展性,是否能支持成上千个客户端
  • 负载均衡
  • 与其他语言的互操作性
  • 如何处理身份认证、监控、日志等等

以上这些问题据说gRPC都能解决。。

最新文章

  1. TAG-9F10 发卡行相关数据(转)
  2. 解决duplicate symbols for architecture x86_64错误
  3. tomee 消息持久化
  4. php 图片上传 使用微秒做文件名
  5. U型进度条
  6. JavaScript引用方法说明
  7. 为android项目集成maven
  8. Linux下Find命令的使用
  9. SublimeText更换皮肤
  10. Sublime Text 2结合VS2010配置C C++编译
  11. 如何定位到div滚动条的最底端
  12. GPIO
  13. ios Object Encoding and Decoding with NSSecureCoding Protocol
  14. 突然想写点东西,关于web新人的。采用问答方式
  15. keil c51 本變數型態(Variable Type)
  16. orientationchange
  17. Docker学习笔记【二】
  18. 小米平板7.0系统如何不root激活Xposed框架的方法
  19. [lua][openresty]代码覆盖率检测的解决方式
  20. RabbitMQ是如何运转的?

热门文章

  1. serverless 项目配置及创建helloworld应用(二)
  2. 使用nodejs-koa2-mysql-sequelize-jwt 实现项目api接口
  3. Spring cloud stream【入门介绍】
  4. appium入门篇之desired capabilities(2)
  5. 01 Django基础
  6. Django 你需要掌握的模型层(标签、过滤器、模板的继承与导入)
  7. 移动IM开发指南3:如何优化登录模块
  8. 【python3两小时快速入门】入门笔记01:基础
  9. 使用git提交时报错:error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 Request Entity Too Large
  10. Linux服务器使用Docker部署.net Core项目