当前位置: 首页 > wzjs >正文

网站开发工作容易出现的失误国内新闻最新消息10条

网站开发工作容易出现的失误,国内新闻最新消息10条,长宁网站建设公司,紫色个人网站模板问题 提到【注册中心】,我们对它的基本功能,肯定可以顺手拈来,比如:【服务注册】【服务发现】【健康检查】【变更通知】等。 透过这些基本功能,一个普适的注册中心的数据结构应该如何设计呢? 可以结合着…

问题

提到【注册中心】,我们对它的基本功能,肯定可以顺手拈来,比如:【服务注册】【服务发现】【健康检查】【变更通知】等。

透过这些基本功能,一个普适的注册中心的数据结构应该如何设计呢? 

可以结合着具体的业务场景来进行描述。

解析

【注册中心】除了【服务注册】、【服务发现】、【健康检查】和【变更通知】基本功能之外,还有一个很关键的功能,即:【服务订阅】。我们围绕着这些基本功能来设计一个普适的注册中心的数据结构,如下图:

图片

【注册中心】一种非常普适的数据结构是 【KList】,即 一个键值 Key 与一个列表 List 进行映射。

按图中举例:PA 和 PB 是服务提供方的服务名称,CA 是服务消费方的服务名称;PA 有两个服务节点,即 PA-1 和 PA-2, CA 有两个服务节点,即 CA-1 和 CA-2。

在【注册中心】的数据结构中,共包括四类【KList】结构:

  1. 服务与节点的映射关系,如:PA—>[PA-1, PA-2],CA—>[CA-1, CA-2];

  2. 节点与服务的映射关系,如:PA-1—>[PA],PA-2—>[PA],CA-1—>[CA],CA-2—>[CA];(此类数据的List的长度是1)

  3. 订阅关系映射,如:服务CA订阅了服务PA和PB, CA—>[PA, PB];

  4. 被订阅关系映射,如:PA—>[CA], PB—>[CA]。

此四类【KList】数据可以完成【注册中心】所有功能:

1. 服务节点注册:在服务节点启动时,需要将自己的信息注册到【注册中心】,此时需要对 “服务与节点的映射关系” 结构 和 “节点与服务的映射关系”结构进行维护;可能有同学会疑惑,为什么要维护 “节点与服务的映射关系” 呢?这是因为在 服务节点注销的时候,没有这类数据的话很难定位到此节点是哪一个服务。

2. 服务发现:在服务调用方节点 询问【注册中心】目标服务有哪些服务节点在运行时,此时【注册中心】直接对 “服务与节点的映射关系” 进行遍历即可。

3. 服务订阅:服务调用方在对服务提供方发起 RPC 调用之前,需要进行订阅,此时需要对 “订阅关系映射” 结构和 “被订阅关系映射” 结构进行维护;“订阅关系映射” 为 【服务发现】提供了基础元数据;“被订阅关系映射” 为变更通知提供了数据查询的桥梁。

举一个例子:当服务提供方节点 PA-2 宕机之后,注册中心是如何基于这个底层的数据结构采取一系列动作呢?

  1. 首先,注册中心通过心跳算法,判断 PA-2节点已经失活;

  2. 然后,根据 “节点与服务的映射关系”   PA-2—>[PA],获取失活节点属于 PA服务;

  3. 继续,根据 “被订阅关系映射”,PA—>[CA],获取 PA 服务的订阅服务是 CA 服务;

  4. 之后,根据 “服务与节点的映射关系”,CA—>[CA-1, CA-2],获取 CA 服务有两个服务节点,即:CA-1 和 CA-2;

  5. 最后,注册中心将 变更通知数据 发送给 CA-1 节点 和 CA-2 节点。

【KList】是 根据注册中心抽象出来的一个非常普适性的 数据结构,在具体落地时,可以通过 MySQL关系表实现,也可以通过 Redis 的 List实现,也可以在内存中根据不同的业务场景具体落地成不同的数据结构进行实现。比如大名鼎鼎的 Zookeeper 是通过 【Tree】的方式进行的实现,如下图;大家可以自行分析一下,Zookeeper是如何通过【Tree】结构实现的【KList】的所有基础功能。

图片

http://www.dtcms.com/wzjs/406554.html

相关文章:

  • 公司网站的建设要注意什么站长工具精华
  • 做猎头需要用到的网站小红书新媒体营销案例分析
  • 郑州网站设计网站seo数据
  • 网站怎样投放广告位网络优化seo
  • pc和移动版网站长尾关键词搜索
  • 营销一型网站建设公司总推荐榜总点击榜总排行榜
  • 原则网站设计版式seo网络优化平台
  • 北京营销型网站建设价格关键词优化seo优化
  • 网络软文营销的案例seo网站排名优化公司哪家好
  • 汽车美容网站模板关键词优化公司推荐
  • 网站建设_网站制作公司_捷创关键词排名监控
  • 英文网站建设 济南搜索热门关键词
  • ipo和seoseo是什么平台
  • 何炅做的网站广告短视频运营公司
  • 网站如何做收录排行最受欢迎的十大培训课程
  • 沂seo网站推广竞价推广网络推广运营
  • 域名备案成功如何做网站优化 seo
  • .net做网站开发吗最新中高风险地区名单
  • 电子商务网站建设考卷怎么恶意点击对手竞价
  • 长沙公积金网站怎么做异动厦门网站制作全程服务
  • 河南天元建设公司网站宁波seo高级方法
  • 用drupal做的网站百度联盟广告收益
  • 芜湖互联网公司山东seo首页关键词优化
  • 海南房地产网站建设铜陵seo
  • 开淘宝的店铺网站怎么做留电话的广告网站
  • 专门做奢侈品的网站个人怎么在百度上做推广
  • 如何做网站的统计如何做推广最有效果
  • 做网站靠什么赚钱网站创建
  • 建立网站目录结构的意义网络营销的认识
  • 济南微信网站开发清远市发布