微服务

微服务

广义上讲,微服务是一种分布式系统解决方案,推动细粒度服务的使用,这些服务协同工作。
简而言之,微服务架构风格是将单个应用作为一组小型服务开发的方法,每个服务程序都在自己的进程总进行,并与轻量级机制rpc或httpApi进程通信。这些服务是围绕着业务功能构建的,可以通过全自动部署机器进行独立部署。这些服务可以用不同的编程语言编写,使用不同的存储技术,并尽量不用集中方式进行管理。

protobuf

protobuf是谷歌旗下的一款跨平台,跨语言,可扩展的序列话结构数据格式,很适合做数据存储和作为不同应用,不同语言之间相互通信的数据交换格式,只要实现相同的协议格式,即同一proto文件被编译成不同语言版本,加入到各自的工程中去,这样不同语言就可以解析其他语言通过protobuf序列化的数据。
protobuf相对于josn、xml序列化后体积要小,序列化和反序列化速度要快,适合对响应速度有要求的数据传输场景,protobuf是二进制数据格式,需要编码和解码,数据本身不具可读性。

RPC

远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。
简单来说,就是跟远程访问或者web请求差不多,都是一个client向远端服务器请求服务返回结果,但web请求使用的网络协议是http高层协议,而rpc所使用的协议多为tcp,是网络层协议,减少了信息的包装,加快了处理速度。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章