带你手写基于 Spring 的可插拔式 RPC 框架

现在微服务已经成为互联网公司的标配了,如果你开发过微服务相关的程序,对于 RPC 框架一定不陌生,它是微服务通信的桥梁。只有了解 RPC 框架的底层原理,才能对于整个微服务系统有更好的理解。

这个 Chat 将带你手写一个 RPC 框架,带你了解 Dubbo 的实现原理。在本 Chat 你将学会如下内容:

  1. 如何从头搭建一个框架
  2. RPC 底层实现原理
  3. Dubbo 的实现原理
  4. Spring 插件开发
  5. Netty、HTTP,以及 Socket 编程知识
  6. Zookeeper,Redis 注册中心使用
  7. 动态代理

阅读全文: http://gitbook.cn/gitchat/activity/5d0c322f388168471dc3690b

您还可以下载 CSDN 旗下精品原创内容社区 GitChat App ,阅读更多 GitChat 专享技术内容哦。

FtooAtPSkEJwnW-9xkCLqSTRpBKX

Go-Micro 是一个基于微服务库的可插拔 RPC,为编写分布应用程序提供基本构件。它是 Micro 工具包的一部分,支持 Proto-RPC 和 JSON-RPC 的请求/响应协议,默认设置Consul为探索。示例服务可以在 examples/service 找到。特征特征包内置插件描述DiscoveryRegistryconsul用来沟通的一种定位服务方ClientClientrpc用来将RPC请求变成服务CodecCodecproto,json对请求进行编码/解码处理BalancerSelectorrandom服务节点过滤和池ServerServerrpc监听和服务器的RPC请求Pub/SubBrokerhttp发布和订阅事件TransportTransporthttp服务之间的通信机制示例服务项目描述greetergreeter 服务(包括 Go、Ruby、Python )geo-srv使用 hailocab/go-geoindex 进行地理位置跟踪服务geo-api为地理位置跟踪和搜索提供的 HTTP API 处理程序geocode-srv使用 Google Geocoding API 提供地理编码服务hailo-srv一种用于hailo出租车服务开发者的api服务place-srv存储和检索地点的微服务slack-srv将Slack机器人的API当成一个go-micro 的RPC服务twitter-srv一种用于Twitter的API微服务user-srv一种为用户管理和认证提供的微服务入门这是一个以 greeter 服务为例的快速入门指南。必备条件我们需要一个服务发现机制来解决服务的名称到地址的映射,默认设置Consul为探索。Discovery是可插拔的,你可以使用 kubernetes, zookeeper 等。我们的实践可以在 go-plugins 上找到。安装Consulhttps://www.consul.io/intro/getting-started/install.html运行Consul$ consul agent -dev -advertise=127.0.0.1运行服务$ go run examples/service/main.go 2016/03/14 10:59:14 Listening on [::]:50137 2016/03/14 10:59:14 Broker Listening on [::]:50138 2016/03/14 10:59:14 Registering node: greeter-ca62b017-e9d3-11e5-9bbb-68a86d0d36b6测试服务$ go run examples/service/main.go --client Hello John 标签:gomicro
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值