首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

- 怎样实现 RPC 框架

当下,RPC 框架已经不仅是进行远程调用的基础工具,还需要提供路由、服务发现、负载均衡、容错等能力。那么今天,我们就以“怎样实现 RPC 框架”为引,从设计者角度看看如何设计一个 RPC 框架。...在远程我们必须先定义这个方法,然后才可以通过 RPC 框架调用该方法,远程调用不仅可以传参数、获取到返回值,还可以捕捉调用过程中的异常。RPC 让远程调用就像本地调用一样。...var result = rpc.invoke("greetings", arg1, arg2, ...) 这段程序将本地看作 一个 RPC 的客户端,将远程看作一个 RPC 的服务端。...在实际的操作过程中,rpc.invoke可能被封装到了某个业务方法中,程序员调用的时候便容易忽视这是一次远程操作。所以 RPC 调用时就要求我们对性能有清晰的认识。...---- 负载均衡的设计 在设计 RPC 框架的时候,负载均衡器的设计往往需要和 RPC 框架一起考虑。因为 RPC 框架提供了注册、发现的能力,提供发现能力的模块本身就是一个负载均衡器。

45810
您找到你想要的搜索结果了吗?
是的
没有找到

面试,谈谈动态代理与RPC?我...

背景 RPC大家有一定了解后,在Java开发生态下,动态代理和它有着紧密联系。 如果单拎出动态代理,你一定会有一大堆八股文,它和RPC是什么关系?...一、使用场景 在使用RPC的时候,需要服务方提供interface,在调用方编写业务逻辑时,调用接口的方法,拿到结果。为什么?...RPC会为接口生成一个代理类,调用方在使用过程中,实际运行时该接口被调用会被代理类给拦截到,在代理类中具体实现远程调用逻辑。...三、额外思考 如果没有动态代理那么如何完成方法调用拦截,实现RPC? 显而易见动态不行,就静态。...小结 动态代理作为在RPC里面的一种应用,虽然只是具体实现技术,但理解了它才能更好的理解RPC里面是如何做到面向接口编程,帮助用户屏蔽RPC调用细节,达到远程调用。

23920

简单实现动态更新

应用场景:如果企业有频繁修改的需求,每次上传服务器又很麻烦,又没有开发人员来写程序动态获取,那么可以考虑使用Git(代码管理工具)来实现简单的拉新功能,优势是简单,缺点是每次更新后还是需要在服务的手动拉取一下...具体流程如下 一、创建一个Git仓库,可以使用码云或者其他免费仓库 二、把代码上传到码云上 1、本地环境先安装git 2、通过git 命令 git clone 码云仓库地址 拉取代码 3、把本地网文件上传到仓库...然后在服务器端使用git 拉取仓库代码,git clone 仓库地址,这样以后只要在本地更新,服务器拉取一下,就能自动更新了,而且如果出现问题,git的版本管理功能也能派上用场,如果不想每次更新git

5.1K10
领券