1. 程式人生 > >Eureka 原始碼解析 —— 應用例項註冊發現(六)之全量獲取

Eureka 原始碼解析 —— 應用例項註冊發現(六)之全量獲取

// AbstractJerseyEurekaHttpClient.java@Overridepublic EurekaHttpResponse<Applications> getApplications(String... regions) {   return getApplicationsInternal("apps/", regions);}private EurekaHttpResponse<Applications> getApplicationsInternal(String urlPath, String[] regions) {   ClientResponse response = null
; String regionsParamValue = null; try { WebResource webResource = jerseyClient.resource(serviceUrl).path(urlPath); if (regions != null && regions.length > 0) { regionsParamValue = StringUtil.join(regions); webResource = webResource.queryParam("regions", regionsParamValue); } Builder requestBuilder = webResource.getRequestBuilder(); addExtraHeaders(requestBuilder); response = requestBuilder.accept(MediaType.APPLICATION_JSON_TYPE).get(ClientResponse.class); // JSON
Applications applications = null; if (response.getStatus() == Status.OK.getStatusCode() && response.hasEntity()) { applications = response.getEntity(Applications.class); } return anEurekaHttpResponse(response.getStatus(), Applications.class) .headers(headersOf(response)) .entity(applications) .build(); } finally
{ if (logger.isDebugEnabled()) { logger.debug("Jersey HTTP GET {}/{}?{}; statusCode={}", serviceUrl, urlPath, regionsParamValue == null ? "" : "regions=" + regionsParamValue, response == null ? "N/A" : response.getStatus() ); } if (response != null) { response.close(); } }}

相關推薦

Eureka 原始碼解析 —— 應用例項註冊發現獲取

// AbstractJerseyEurekaHttpClient.java@Overridepublic EurekaHttpResponse<Applications> getApplications(String... regions) { return getApplicationsI

Eureka 原始碼解析 —— 應用例項註冊發現註冊

// DiscoveryClient.javaboolean register() throws Throwable { logger.info(PREFIX + appPathIdentifier + ": registering service..."); EurekaHttpResponse&l

配置中心 Apollo 原始碼解析 —— 客戶端 API 配置 ConfigFile

������關注微信公眾號:【芋道原始碼】有福利: 1. RocketMQ / MyCAT / Sharding-JDBC 所有原始碼分析文章列表 2. RocketMQ / MyCAT / Sharding-JDBC 中文註釋

Google guava cache原始碼解析1--構建快取器2

此文已由作者趙計剛授權網易雲社群釋出。 歡迎訪問網易雲社群,瞭解更多網易技術產品運營經驗。 CacheBuilder-->maximumSize(long size)     /**      * 

Google guava cache原始碼解析1--構建快取器3

此文已由作者趙計剛授權網易雲社群釋出。 歡迎訪問網易雲社群,瞭解更多網易技術產品運營經驗。 下面介紹在LocalCache(CacheBuilder, CacheLoader)中呼叫的一些方法: CacheBuilder-->getConcurrencyLevel()

Gin原始碼解析和例子——中介軟體middleware

        在《Gin原始碼解析和例子——路由》一文中,我們已經初識中介軟體。本文將繼續探討這個技術。(轉載請指明出於breaksoftware的csdn部落格)         Gin的中介軟體,本質是一個

Codis原始碼解析——sentinel的重同步2

Topom.ha.monitor本身相當於一個上帝視角的sentinel。它本身並不是一個實際的sentinel伺服器,但是它負責收集各個sentinel的監控資訊,並對叢集作出反饋。這一講我們就來看看Topom.ha.monitor。這一篇的原始碼也有助於大家

Spring框架原始碼解析 IOC容器實現BeanDefinition

我們找女朋友,首先必須保證是個女的,這是最低要求,生活不易,我們先從最低的要求出發吧。女朋友是一個抽象的概念,我們必須定義一些屬性,年齡,身高,名字,是否漂亮等等來描述她。不過目前這些統統都沒有,有的也就是說我們的最低要求,女的。 public interface Bean

資料庫中介軟體 Sharding-JDBC 原始碼分析 —— SQL 解析刪除SQL

本文主要基於 Sharding-JDBC 1.5.0 正式版 ������關注微信公眾號:【芋道原始碼】有福利: 1. RocketMQ / MyCAT / Sharding-JDBC 所有原始碼分析文章列表 2. Roc

數據庫分庫分表中間件 Sharding-JDBC 源碼分析 —— SQL 解析刪除SQL

java 後端 架構 數據庫 中間件關註微信公眾號:【芋道源碼】有福利:RocketMQ / MyCAT / Sharding-JDBC 所有源碼分析文章列表RocketMQ / MyCAT / Sharding-JDBC 中文註釋源碼 GitHub 地址您對於源碼的疑問每條留言都將得到認真回復。甚至不知道如

Kubernetes入門篇創建K8S應用

target extension virt host bsp node ash ava -type 一、創建K8S的第一個應用 [root@linux-node1 ~]# kubectl run net-test --image=alpine --replicas

balance transfer程式碼解析及api深度追蹤執行鏈碼

一程式碼解析 var path = require(‘path’); var fs = require(‘fs’); var util = require(‘util’); var hfc = require(‘fabric-client’); var Peer

資料探勘中的模式發現挖掘序列模式

序列模式挖掘 序列模式挖掘(sequence pattern mining)是資料探勘的內容之一,指挖掘相對時間或其他模式出現頻率高的模式,典型的應用還是限於離散型的序列。。 其涉及在資料示例之間找到統計上相關的模式,其中資料值以序列被遞送。通常假設這些值是

art-template入門解析規則

解析規則 template.defaults.rules art-template 可以自定義模板解析規則,預設配置了原始語法與標準語法。 修改界定符 // 原始語法的界定符規則 template.defaults.rules[0].test = /<

faster rcnn原始碼解讀minibatch

原始碼: # -------------------------------------------------------- # Fast R-CNN # Copyright (c) 2015 Microsoft # Licensed under The MIT Li

Ethercat解析功能概述

⑴ 通過幾個有限的狀態機進行通訊 ① 當從機拓撲改變,主站自動重新掃描; ② 執行狀態下可進行匯流排的監控,掉電自動重新配置; (2) 分佈時鐘的支援 ① 通過應用程式介面可配置從站的DC引數;

【Spring原始碼--IOC容器的實現】Bean的依賴注入

程式碼1.:8:BeanWrapperImpl類的setPropertyValue方法: @SuppressWarnings("unchecked") private void setPropertyValue(PropertyTokenHolder tokens, PropertyValue pv) t

使用 Tye 輔助開發 k8s 應用竟如此簡單

續上篇,這篇我們來進一步探索 Tye 更多的使用方法。本篇我們將進一步研究 Tye 與分散式應用程式執行時 Dapr 如何碰撞出更精彩的火花。 Newbe.Claptrap 是一個用於輕鬆應對併發問題的分散式開發框架。如果您是首次閱讀本系列文章。建議可以先從本文末尾的入門文章開始瞭解。 巧了,巧了,真是

python爬蟲從入門到放棄 BeautifulSoup庫的使用

src 表達 支持 正則表達 必須 這樣的 com 子節點 prettify 上一篇文章的正則,其實對很多人來說用起來是不方便的,加上需要記很多規則,所以用起來不是特別熟練,而這節我們提到的beautifulsoup就是一個非常強大的工具,爬蟲利器。 beautifulS

mysql基礎sqlAchemy

true syn lte color 模塊 實例化 codefirst pow import 參考博客:http://www.cnblogs.com/wupeiqi/articles/5713330.html函數編程:數據和邏輯分離 a= 123 b