写点什么

想搞定微服务,先搞定 RPC 框架?

  • 2018-03-14
  • 本文字数:977 字

    阅读完需:约 3 分钟

要说近几年技术圈最流行的软件架构,肯定非微服务莫属。

想要实现服务化,首先要解决的就是各个服务间的通信问题,这里面涉及到序列化、反序列化、联机池管理等一大堆琐碎事情,各种重复性劳动让人想起来就头疼。

幸好我们有 RPC 框架,它能让我们像调用本地函数一样调用远端函数,大大降低了架构微服务化的成本,提高了研发效率。所以有人说:“想搞定微服务架构,先搞定 RPC 框架”,此言非虚!

在众多开源 RPC 框架中,挑哪个使用比较好呢?让我来选的话,我首推出身 Google 的 gRPC。

不仅仅是因为它出身名门,它对移动端、多语言以及 HTTP/2 的支持也是它能脱颖而出的重要原因。

gRPC 入门简单,网上到处都是教程,简单学习即可上手使用。

但是,由于各个公司生产环境各不相同,业务细节千差万别,在实际工作中,如果你对 gRPC 的底层工作原理及相关 API 类库不太熟悉,往往会遇到很多障碍。

这个时候,如果对 gRPC 背后的机制和原理包括源代码有比较深入的了解,甚至达到庖丁解牛的程度,问题自然就可以迎刃而解了。

所以,结合自己在实际业务中的使用经验,我对 gRPC 的底层原理及核心代码分析整理成了近 5 万字的文章,分 6 篇呈现给大家:

  1. gRPC 入门及服务端创建和调用原理解析
  2. gRPC 客户端创建和调用原理解析
  3. gRPC 线程模型分析
  4. gRPC 服务调用原理分析
  5. gRPC 安全性设计
  6. gRPC 序列化机制

通过对底层工作原理和核心代码的分析,希望能帮你更高效地掌握 gRPC 的实现细节,以便在工作中更好地对其进行应用及扩展。

现在这六篇文章(仅 9 元)已经正式在极客时间 App 上线了,点击下面的图片可以做详细了解。

(扫码或点击此处即刻订阅,现在注册立享30 元新人红包)

我是谁?

说了这么多,那么我是谁呢?为什么我觉得自己可以讲清楚这些话题?

我叫李林锋,多年来一直在从事 Java NIO、平台中间件、PaaS 平台、API 网关设计和开发等工作,由我主导设计过的分布式服务框架已经在全球数十个国家成功商用,也算是小有成就。

工作之余,我还写了两本书,分别是《Netty 权威指南》和《分布式服务框架原理与实践》。

所以,无论是业务实战还是技术布道,我自信还是有能力、有资格讲好 gRPC 这个话题,帮你认清里面的弯弯道道。

文章在哪里看?

PC 端:

点击此处,微信或支付宝支付,即刻订阅。

移动端:

  1. 点击此处,下载“极客时间”app,注册并登录,领取 30 元新人红包。
  2. 从首页轮播图或专栏页进入《深入浅出 gRPC》,完成订阅。
2018-03-14 19:008226
用户头像

发布了 25 篇内容, 共 71.7 次阅读, 收获喜欢 230 次。

关注

评论

发布
暂无评论
发现更多内容

Spark中将DAG划分为Stage核心算法

五分钟学大数据

spark 5月日更

架构实战营 模块三:学习总结

👈

架构实战营

Java Stream 源码分析

Yano

Java stream

模块3作业 消息队列架构设计文档

TH

架构实战营

Semaphore

wzh

Java 并发 java工具类

HBase与Hadoop的关系

大数据技术指南

HBase 5月日更

前端百题斩[001]——typeof和instanceof

执鸢者

面试 大前端

自研集群 + MySQL 存储详细架构文档

@oo?金樱子

通过 Netty、ZooKeeper 手撸一个 RPC 服务!

Yano

Java 微服务 Netty RPC

消息队列架构设计

俞嘉彬

架构实战营

9个国外最佳免费编程学习一站式网站,谁用谁知道!

北游学Java

Java c++ php JavaScript

用组合式创新模型做产品建模

石云升

组合式创新 5月日更 产品建模

架构实战营-模块3-作业

笑春风

消息队列详细设计架构文档

Hesher

架构 MQ Architecture 消息队列 架构实战营

模块三作业 - 消息队列系统架构设计文档

青鸟飞鱼

架构实战营

一文看懂 Go 的数据类型

Rayjun

Go 语言

模块3作业 3

wade

#架构实战营

架构训练营模块3作业《消息队列架构设计文档》-江哲

江哲

消息队列构架设计文档

Chris Cheng

架构训练营——模块2作业

圆心角

模块3 学习总结

TH

架构实战营

读写锁

wzh

Java 并发编程 并发 JUC

【LeetCode】制作 m 束花所需的最少天数Java题解

Albert

算法 LeetCode 5月日更

架构实战营模块三作业

冷大大

作业 架构实战营 模块三

假如只剩下canvas标签

执鸢者

大前端 canvas

Go 杂谈——interface与nil的细节让我出了线上BUG

HZFEStudio

Go 语言

架构实训营 作业三——消息队列架构设计文档

开拓纪

第三章作业 #架构实战营

【架构实战营】第3模块作业

swordman

架构实战营

优秀程序员都在注意的十个点

好好学习,天天向上

Java 设计模式 代码 技巧

ARTS - week 8 补打卡

steve_lee

第三课作业

杰语

想搞定微服务,先搞定 RPC 框架?_架构_李林锋_InfoQ精选文章