今天我们来进行架构探险:从零开始写分布式服务框架,你能学会吗?( 十 )

以上问题将通过服务注册中心来解决 , 我们采用服务注册中心来实时存储更新服务提供者信息及该服务的实时调用者信息 , 如图5-2所示 。

服务调用者、服务注册中心、服务提供者关系示意图

分布式服务框架底层通信实现

6.1.1 Linux下实现的I/O模型

因为程序运行在操作系统上编程语言实现的I/O操作API最终依赖于操作系统的I/O实现 。 Linux 操作系统目前占服务器市场大部分份额 , 下面一 -起了解一下Linux操作系统实现的几种1/O模型及其特点 。

在这之前 , 先理清阻塞、非阻塞、同步、异步这4个概念 。

◎阻塞: 调用方发起调用请求 , 在没有返回结果之前 , 调用方线程被挂起 , 处于一直等待状态 。

◎非阻塞: 非阻塞和阻塞的概念相对应 , 调用方发起调用请求 , 当前线程不会等待挂起 , 而会立刻返回 。 后续可以通过轮询等手段来获取调用结果状态 。

推荐阅读