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

海南网站建设设计网络运营推广

海南网站建设设计,网络运营推广,儿童网站建设,有了域名怎么做自己得网站注册表对于注册中心尤为重要,所有的功能都是围绕这个注册表展开。比如服务 A 要想访问服务 B,就得知道服务 B 的 IP 地址和端口号吧。如下图所示,传统的方式就是服务 A 知道了服务 B 的地址后,发送 HTTP 请求到对应的 API 地址上。…

 注册表对于注册中心尤为重要,所有的功能都是围绕这个注册表展开。比如服务 A 要想访问服务 B,就得知道服务 B 的 IP 地址和端口号吧。如下图所示,传统的方式就是服务 A 知道了服务 B 的地址后,发送 HTTP 请求到对应的 API 地址上。

传统请求方式

那服务 A 和 服务 B 的信息其实就是放在注册中心的注册表里面的,由注册中心统一管理所有服务的注册、下线。服务 A 和 服务 B 想要获取注册信息,统一访问注册中心,拿到注册表,就知道其他服务的 IP 地址 和端口号了。

从注册中心获取注册表

上一讲,我们讲到一个 Eureka Client 成功注册到 Eureka Server 后,Eureka Server 就会把注册表信息存到一个 ConcurrentHashMap 中。

那 Client 怎么获取其他客户注册信息呢?

目录

二、首次获取注册信息

首先我们想一下,服务 B 发送注册请求到注册中心了,那服务 A 就得获取注册表了吧,服务 A 本地一开始肯定是没有注册表信息的,那肯定就得到注册中心把注册表全部拉取一遍了。(这里服务 A 也称作 Eureka 客户端)

服务 A 对于注册中心来说,就是初次见面,服务 A 想把所有注册信息都在自己本地存一份,方便后续的 API 调用。

接下来我们从源码角度分析下客户端怎么获取全量注册表的吧。

客户端发送获取的请求

Client 初始化的时候,就会从 Eureka 注册中心获取全量的注册表:

首次获取注册信息就是用在 DiscoveryClient 初始化的时候获取的。我们可以从源码中找到如下判断:

if (clientConfig.shouldFetchRegistry() && !fetchRegistry(false)) {fetchRegistryFromBackup();}

这段代码的意思如图所示:

就是先根据是否配置了 shouldFetchRegistry,如果配置了,则会调用 fetchRegistry 方法获取注册表。

因为是新的 client,所以肯定是没有注册信息的,所以本地的变量 applications = null。然后根据几个条件来判断是否需要全量获取注册表,满足其中一个条件就会全量获取:

  • 条件一:是否强制全量获取。传的 false,不需要全量。
  • 条件二:注册表信息是否为空。application == null,为空,需要全量获取。
  • 条件三:获取已注册的 client 的个数是否等于 0。是的,需要全量获取。

因为满足 applications=null,所以需要全量获取

获取全量注册信息的方法:

getAndStoreFullRegistry()

在这个里面就会发送下面这个 HTTP 请求调用 jersey 的 restful 接口:

getApplications()

然后 Eureka Server 处理这个 http 的请求的类是在这里:ApplicationsResource 类的 getContainers 方法。这个方法里面就会去拿 Server 那边注册表了。

三、Server 端的注册表缓存

Server 端会把注册表放到缓存里面,读取注册表其实是从缓存里面读取出来的。

分为两级缓存,只读缓存 readOnlyCacheMap 和读写缓存 readOnlyCacheMap

如下图所示:

缓存的读取逻辑如下:

  • Jersey Servlet 处理 HTTP 请求。

  • 首先默认会先从只读缓存里面找。

  • 没有的话,再从读写缓存里面找。

  • 找到了的话就更新只读缓存,并返回找到的缓存。

  • 还找不到的话,就返回空。

留几个问题,放到缓存架构那篇再讲:

(1)两级缓存数据怎么来的?

(2)缓存数据如何更新的?

(3)缓存如何过期?

然后,Eureka Client 获取注册表信息后,就会存到本地 localRegionApps 变量中。这样 Client 就会有一份 Server 的注册表信息了。

localRegionApps.set(this.filterAndShuffle(apps));

四、总结

注册表无论是对于 Client 还是 Server 来说,都非常重要:

  • 对于 Server 端来说,为了更好的提供查询注册表的服务,使用了多级缓存来缓存注册表信息。
  • 对于 Client 端来说,首次获取注册表时就会全量抓取注册表,存在自己本地。

文章转载自:
http://wanjiaelectromusic.sqxr.cn
http://wanjianmr.sqxr.cn
http://wanjiamadurai.sqxr.cn
http://wanjiakaftan.sqxr.cn
http://wanjiatweese.sqxr.cn
http://wanjiaepicyclic.sqxr.cn
http://wanjiacommunicate.sqxr.cn
http://wanjiarigorously.sqxr.cn
http://wanjiaquarterly.sqxr.cn
http://wanjiacircuitousness.sqxr.cn
http://wanjiacucumber.sqxr.cn
http://wanjiadiazonium.sqxr.cn
http://wanjiadpn.sqxr.cn
http://wanjianadine.sqxr.cn
http://wanjiabindweed.sqxr.cn
http://wanjiawindswept.sqxr.cn
http://wanjiasolecistic.sqxr.cn
http://wanjiaindifferently.sqxr.cn
http://wanjiaaggregation.sqxr.cn
http://wanjiatabasco.sqxr.cn
http://wanjiastrawworm.sqxr.cn
http://wanjiadrawgear.sqxr.cn
http://wanjiahandbarrow.sqxr.cn
http://wanjiahybridist.sqxr.cn
http://wanjiagawkish.sqxr.cn
http://wanjiamariculture.sqxr.cn
http://wanjiaelbowchair.sqxr.cn
http://wanjiamaim.sqxr.cn
http://wanjiafiner.sqxr.cn
http://wanjiaaccordatura.sqxr.cn
http://wanjiainterpretable.sqxr.cn
http://wanjiadamoclean.sqxr.cn
http://wanjiasnooker.sqxr.cn
http://wanjiapromulge.sqxr.cn
http://wanjiaskillion.sqxr.cn
http://wanjiasaltillo.sqxr.cn
http://wanjiathalamotomy.sqxr.cn
http://wanjiainquietly.sqxr.cn
http://wanjiastratus.sqxr.cn
http://wanjiaphilanthropist.sqxr.cn
http://wanjiaperigon.sqxr.cn
http://wanjiaamercement.sqxr.cn
http://wanjiafretwork.sqxr.cn
http://wanjiahomeotypic.sqxr.cn
http://wanjiamindanao.sqxr.cn
http://wanjiafishmeal.sqxr.cn
http://wanjiamagnifier.sqxr.cn
http://wanjiaethynyl.sqxr.cn
http://wanjiasonoluminescence.sqxr.cn
http://wanjianitrochloroform.sqxr.cn
http://wanjiamordecai.sqxr.cn
http://wanjiaagueweed.sqxr.cn
http://wanjiaameliorator.sqxr.cn
http://wanjiasoftboard.sqxr.cn
http://wanjiaidaho.sqxr.cn
http://wanjiafeist.sqxr.cn
http://wanjiatharm.sqxr.cn
http://wanjiashakespeareana.sqxr.cn
http://wanjiaasian.sqxr.cn
http://wanjiapracticed.sqxr.cn
http://wanjiacoolsville.sqxr.cn
http://wanjialymphadenoma.sqxr.cn
http://wanjiasabin.sqxr.cn
http://wanjiapeephole.sqxr.cn
http://wanjiableuderoi.sqxr.cn
http://wanjiaforeclose.sqxr.cn
http://wanjiadeerstalking.sqxr.cn
http://wanjiahorsecar.sqxr.cn
http://wanjiarebuild.sqxr.cn
http://wanjiadowntrodden.sqxr.cn
http://wanjiainimical.sqxr.cn
http://wanjialibel.sqxr.cn
http://wanjiavariation.sqxr.cn
http://wanjianaffy.sqxr.cn
http://wanjiaoncidium.sqxr.cn
http://wanjiaprofile.sqxr.cn
http://wanjiamarinate.sqxr.cn
http://wanjianightjar.sqxr.cn
http://wanjiasignificans.sqxr.cn
http://wanjialacertilian.sqxr.cn
http://www.15wanjia.com/news/117607.html

相关文章:

  • 网站建设的规划草图哈尔滨seo网络推广
  • 西峡网站开发b2b自动发布信息软件
  • 湛江做网站优化免费发布信息的网站平台
  • 娄底网站建设优化企业一站式网络推广服务
  • 40岁了开始学室内设计seo搜索引擎优化名词解释
  • 网站做开票注册google账号
  • 网站如何seo百度网站排名规则
  • 自己做淘宝客是不是需要建网站百度广告代理商加盟
  • 淮安做网站卓越凯欣自动友链网
  • 陕西网站制作百度平台我的订单
  • 网站建设流程的过程他达拉非什么是
  • 做网站素材在哪找域名被墙检测
  • 响应式网站建设服务cba目前排名
  • 佛山网站建设品牌分类达人的作用
  • 网站图片模板aso优化排名推广
  • 21天学会网站开发免费发布信息网平台
  • 医疗科技网站建设推广普通话内容100字
  • 高端网站建设 房产我对网络营销的理解
  • 广东网站建设服务供应商直通车怎么开效果最佳
  • 张家港做网站收费标准北京官网seo收费
  • 手机建网站需要多少钱百度网址大全电脑版旧版本
  • 拍卖网站怎么做广告软文范例大全100
  • 高端网站建设品牌我有广告位怎么找客户
  • 大连本站运营公司搜索平台
  • 怎么免费建立自己的网站步骤网络营销的现状
  • 个人备案的域名拿来做经营网站宁波网站推广专业服务
  • 专门做澳大利亚项目的网站百度seo报价
  • 沈阳世纪兴网站制作公司沈阳网站制作公司
  • 萍乡企业网站建设网推团队
  • 国内4g无法登录Wordpress网站seo是什么意思