这一次,带你玩转gRPC框架【干货】

这一次,带你玩转gRPC框架【干货】前言为什么要写这个专栏

欢迎大家来到IT世界,在知识的湖畔探索吧!

前言

为什么要写这个专栏。

在Go语言的相关学习中,发现确实如一些网友所说,Go相比Java,语言生态方面还是有一定的弱势的,因此相关技术栈的学习资料、对解决问题的经验分享等内容在互联网上相比Java都不是特别的多,而我本人则是更偏向于做一个内容生产者,写出优质的内容丰富社区,并且能让更多的人去了解,同时也能丰富自己,让自己对这一门技术理解的更加深刻,所以就想在业余休息的时间,从Go语言开发中非常常见的gRPC框架入手,完成一套属于自己的专栏!这个选择是经过深思熟虑的,我相信自己在创作专栏的过程中能够有一些不同的成长,能够让读者朋友有实实在在的收获,让社区多一些更好的内容。

我们为什么要学习gRPC?

当今的无论是传统软件领域还是互联网领域,各种新技术层出不穷,覆盖的用户量规模也越来越广泛,随之而来的是架构思想的不断转变,从单体架构到SOA,到微服务再到”无服务”,分布式技术越发常见且重要,而自从单体架构之后的分布式架构,都会设计到服务之间的信息传输,而信息传输的方式主要是通过网络,更详细一点是TCP网络协议,但是应用之间很少会直接使用TCP协议进行传输,而是选择更上层的网络协议,比如HTTP、Socket、RPC等等,因为越往上层就意味着封装了更多的抽象,便于开发人员对其进行使用,而PRC相关的框架,无论是在性能上还是便捷性上都是服务到服务之前进行信息传输的最优选项,而gRPC框架则是所有RPC框架中各方面最为突出的框架之一。

gRPC是Google发布的基于HTTP2.0协议的高性能开源RPC框架,是一种可拓展、松耦合且类型安全的解决方案,与传统的基于HTTP的通信相比,它能进行更有效的进程间通信,特别是现在流行的微服务架构和云原生技术里,在很多框架里都能看到它的身影存在,并且提供了多种编程语言的支持。本篇专栏,从最简单的Hello World程序开始,从认识到应用,从编写程序到剖析源码,从全局到细节,和大家一起去掌握gRPC。

学习专栏前最好要具备一些基础知识

  • Go、Java语言的编程基础
  • 计算机网络知识
  • Git工具的使用

专栏目录

这一次,带你玩转gRPC框架【干货】



欢迎大家来到IT世界,在知识的湖畔探索吧!

专栏除了开篇词和结束语以外总共分为四个部分,分别是基础篇实践篇高级篇扩展篇

基础篇

在基础篇的文章中,我会从计算机网络中的TCP协议开始,讲述RPC协议和相关框架实现的演进过程,分析RPC为什么一定会出现,并且了解gRPC是怎样的RPC框架和gRPC的一些特性,从宏观的角度去了解gRPC框架在具体使用中的通信过程,能够让我们了解gRPC的基本概念和适用的场景。

实践篇

了解gRPC框架的基本情况之后,我们从实践出发,对gRPC进行进一步的使用,并且引入etcd服务注册中心,了解gRPC在分布式微服务领域的应用,还要从获取连接、负载均衡、异步处理、并发、安全、可用性等多个方面去了解gRPC的部分原理和源码,学习完这一篇之后相信大家就可以在项目中灵活的使用gRPC框架,并且能够处理大部分的问题。

高级篇

在这一篇中,我会尝试带你深入gRPC原理和几个性能优化的要点,回归网络去了解HTTP2.0,以及不常用但是也很重要的UnknownService机制,最后尝试去实现我们自己的RPC框架,在这一篇的学习中,我们可以对gRPC进行更加深入的掌握,在项目中的使用和优化能够游刃有余。

扩展篇

扩展篇的几篇文章,能够为我们带来实践经验、源码、思考和相关联组件的多方位知识,了解和实践不同语言的项目中使用gRPC,分享一下gRPC源码中的一些优雅设计和一些在实际使用过程中所遇到的一些问题和解决方式,讨论gRPC有哪些优势和不足,这些往往能够提升我们深度思考的能力。

来源:https://juejin.cn/post/

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/97608.html

(0)
上一篇 1天前
下一篇 1天前

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信