为什么gRPC难以推广

为什么gRPC难以推广?gRPC构建在HTTP/2之上,而RESTful实际生产中仍然大量使用HTTP/1,无论在性能、吞吐量、消息传输大小等方面, gRPC都完胜。然而就我的从业经历来看,gRPC在推广上遭遇的难度比RESTFul要难很多。我想主要是这么几个原因:

  • 没有实际场景,达不到需要使用gRPC的量级,由于人的惰性,如无必要,一般是不会去改的。问过几个同事,大家的想法类似,无非是 觉得没必要,或者不想改等等。毕竟相比Google,FB这类大厂,极少有厂商有这种程度的并发量,RESTFul虽然性能差,但是没有场景来推动, 推广实在是太难了。
  • 历史存量,RESTful存量比gRPC大太多。说起RESTFul,我想后端程序员都知道,毕竟不知道这个似乎连面试都过不了,而gRPC则没有 那么多人知道,最近这些年来,一直都是RESTFul大行其道,历史存量难以撼动。
  • 对于web端的支持还不够成熟,要写两套。gRPC的确有web支持,但这还是近期才发生的事情,目前应用还不多。
  • gRPC更难,无论是使用还是调试,还缺乏相应工具。HTTP/1有 curl, httpie, postman 等好工具使用,而且JSON是人类可读的 纯文本,gRPC则不同,首先它使用protobuf进行编码,其次HTTP/2是二进制协议,人类难以读懂,再加上现在工具匮乏,调试、联调起来 确实有难度。

以上就是我总结的一些关于gRPC为何难以推广的原因。


更多文章
  • 为什么gRPC难以推广
  • 关于ORM的思考
  • MySQL指定使用索引(使用索引提示)
  • QT5使用GTK主题
  • 搭建samba服务器
  • ssh时自动运行tmux
  • ufw简明教程
  • zerotier简明教程
  • 提取kindle笔记
  • 一个Golang gRPC握手错误的坑
  • Golang(Go语言)爬虫框架colly简明教程及源码阅读与分析
  • 选择合适的技术栈
  • Golang的template(模板引擎)简明教程
  • 毕业三年,一路走来
  • 代码的坏味道