Skip to content
/ Orpc Public

Orpc是一个开源rpc框架,7days-golang系列的衍生玩具

License

Notifications You must be signed in to change notification settings

R-Goys/Orpc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Orpc

Orpc是一个开源rpc框架,7days-golang系列的衍生玩具

  • 原来实现了读写流的conn可以传递信息,这给年幼的我造成了巨大的打击
  • 该rpc框架的调用流程:
    1. 启动服务端,将结构体的实例作为参数传递给服务注册的方法,随后利用反射将其方法注册进哈希表中,以前还觉得反射没啥用,现在感觉好厉害~
    2. 启动客户端,将启动的服务的名称和需要调用的方法的名称以及参数传入(也就是问你想要调用哪个结构体的哪个方法),内部是这样的,首先会注册一个Call,监听这个call的done,将需要调用的服务和方法名称注册进一个请求头示例,将参数传入req结构体,随后就write进去,这里利用了conn的实现了输入输出流方法的特性,使得write能让客户端和服务端通信,启动的客户端还负责接收服务端返回的信息,然后将其返回的信息保存在reply中,然后交给用户。
    3. 结束,这是day3完成的时候写的,之后可能会有变吧,感觉还真是神奇。

一个调用示意图,方便理解

test

About

Orpc是一个开源rpc框架,7days-golang系列的衍生玩具

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages