Thrift、IPC、RPC的概念

版权声明:有些文章写的很随意,那是仅作为个人记录的文章,建议直接关掉,多看一秒亏一秒 https://blog.csdn.net/qq_36523667/article/details/86017457

看到部门整个系统的架构图,内部系统之间通过Thrift来通信,于是去简单学了下

首先IPC,方法不在同一个用户空间(不在用一个进程),写一个框架,可以使得像调用自己这个进程的方法一样去调用对面那个方法,这个框架就叫IPC。Android里典型的就是Binder,一个另一个进程的对象,在这个进程就是代理对象,可以直接调用方法

那么RPC也是一样的,IPC是在同一个机器但是不同的进程,而RPC是在不同的机器

Thrift就是一种RPC,而且他还是跨语言的,这意味着两个端的交互,不受两个端的语言影响。某个端想要从比如C#接口改成Java接口,成本是0。我在携程的时候,就遇到了这个情况,那里没有使用Thrift,那一段时间同事改接口改了很久很久,至今还没改完。这不是简单改个字段就是完事的,整个框架要重构,所有实体也要重构,所以实体相关的业务都要重构。一个不小心,就是毁灭性的灾难。

当然,为啥要用Thrift是我猜的,我这里的分析只是一个方向。

猜你喜欢

转载自blog.csdn.net/qq_36523667/article/details/86017457
今日推荐