关键词
分布式架构 Dubbo ZooKeeper
分布式系统进化第三级
当垂直应用越来越多,应用之间交互不可避免,将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,使前端应用能更快速的响应多变的市场需求。此时,用于提高业务复用及整合的分布式服务框架(RPC)是关键。
具体场景
如果要使用别人的服务,应该做的是直接调用别人的实现函数,这样就会有一个问题,会把自己的实现源码暴露给别人,而现在的大多数时候,我们并不想这样做(即是是一个是小组),我们只想给你用这个功能,却不想告诉你它是怎么实现的。这个时候,就需要用到Dubbo(RPC)和接口了。
只提供给消费者接口,这样消费者就无法看到具体的实现,但是因为你接口包含了所有的业务功能,所以可以直接知道这个接口有什么用。但是一个接口要真正用起来,肯定是要实现的,这个时候,Dubbo(RPC)就派上了用场。
服务提供者提供接口,并且提供接口的实现,这个服务通过Dubbo注册到ZooKeeper服务器上。然后消费者要用某个服务的时候,就去ZooKeeper上订阅该服务。这样,我们只需要使用接口,然后通过Spring getbean,就可以让这个接口实例化,拿来使用。同时因为消费者只能得到接口,而无法看到接口的实现,也保证了服务者的安全。

以上。
注释:
1. Dubbo是一个阿里巴巴开发的开源分布式服务框架,致力于提供高性能和透明化的RPC(Remote Procedure Call)远程服务调用方案。
2. Zookeeper是一个高效的分布式协调服务,可以提供配置信息管理、命名、分布式同步、集群管理、数据库切换等服务。它不适合用来存储大量信息,可以用来存储一些配置、发布与订阅等少量信息。Hadoop、Storm、消息中间件、RPC服务框架、分布式数据库同步系统,这些都是Zookeeper的应用场景。
网友评论