原创 Spring Cloud微服務解決方案 ⑩:Spring Cloud Config

網上先摟一段簡介:Spring Cloud Config爲分佈式系統中的外部配置提供服務器和客戶端支持。使用Config Server,您可以爲所有環境中的應用程序管理其外部屬性。它非常適合spring應用,也可以使用在其他語言的應用上。

原创 Spring Cloud微服務解決方案⑧:Zuul(API網關)

簡單的來說,我們把zuul這個項目啓動起來,註冊到eurake上,那麼他就可以代理eurake上面的服務(默認),各種玩法聽我細細道來。 源碼下載路徑在:https://download.csdn.net/download/qq_2207

原创 Spring Cloud微服務解決方案⑨:Sidecar異構

比如我當前項目需要調用一個php或者node的接口,怎麼把這個服務整合到當前java的微服務中呢。 源碼下載路徑在:https://download.csdn.net/download/qq_22075041/10869452,代碼參考m

原创 Spring Cloud微服務解決方案⑦:Turbine(斷路器集羣監控)

上一篇文章末尾我們已經實現了Hystrix Dashboard對單個服務實例的監控,在實際應用中,我們更需要的是一個集羣系統的監控信息,這時我們就需要引入Turbine。Turbine能夠彙集監控信息,並將聚合後的信息提供給Hystrix

原创 Spring Cloud微服務解決方案⑤:eurake的常用配置項以及eurake、feign、ribbon常見問題總結

 常見問題總結文檔在這裏:https://download.csdn.net/download/qq_22075041/10854420 常用配置項官方文檔鏈接:https://cloud.spring.io/spring-cloud-s

原创 Spring Cloud微服務解決方案③:Ribbon的使用

  先來一段介紹: Spring Cloud Ribbon是一個基於HTTP和TCP的客戶端負載均衡工具,它基於Netflix Ribbon實現。通過Spring Cloud的封裝,可以讓我們輕鬆地將面向服務的REST模版請求自動轉換成客

原创 Spring Cloud微服務解決方案④:Feign的使用

Feign是一個聲明web服務客戶端,這便得編寫web服務客戶端更容易,使用Feign 創建一個接口並對它進行註解,它具有可插拔的註解支持包括Feign註解與JAX-RS註解,Feign還支持可插拔的編碼器與解碼器,Spring Clou

原创 Spring Cloud微服務解決方案①:Eureka服務端的構建

Eureka是Netflix開發的服務發現框架,本身是一個基於REST的服務,以實現SpringCloud的服務發現功能。包含兩個組件:Eureka Server和Eureka Client。 Eureka Server提供服務註冊服務

原创 調用Spring所管理的bean的方法時候,爲何不會出現線程安全問題?

首先jvm會在內存中開闢一塊存儲空間做爲線程棧空間,每個線程都有自己的棧(後進先出)。 調用方法時,會在棧中壓入一個棧幀,用來存儲這個方法的參數和局部變量; 方法返回時 ,棧幀就會彈出,方法的參數和局部變量就會清除; 方法調用時,調用棧不

原创 Spring bean 通過實現 InitializingBean ,DisposableBean 接口實現初始化方法和銷燬前操作

關於在spring  容器初始化 bean 和銷燬前所做的操作定義方式有三種: 第一種:通過@PostConstruct 和 @PreDestroy 方法 實現初始化和銷燬bean之前進行的操作 第二種:通過 在xml中定義init-me

原创 Tomcat性能調優以及遠程管理(Tomcat manager與psi-probe監控)

tomcat優化的我用到的幾個點: 1.內存優化 2.線程優化 docs/config/http.html maxConnections acceptCount(配置的太大是沒有意義的) maxThreads

原创 Tomcat遠程DEBUG

在tomcat上做2個配置: 1. tomcat bin下的start.sh,jpda是一種協議   exec "$PRGDIR"/"$EXECUTABLE" jpda start "$@"     在start 前面增加jpda  

原创 nginx監控與性能調優

監控 nginx有自帶的監控模塊,編譯nginx的時候,加上參數 --with-http_stub_status_module #配置指令 ./configure --prefix=/usr/local --user=ngi