原创 每天學點SpringCloud(五):如何使用高可用的Eureka

前幾篇文章我們講了一下Eureka的基礎使用,但是呢有一個很重要的問題,我們講的都是單機版的情況,如果這個時候Eureka服務掛了的話,那麼我們的服務提供者跟服務消費者豈不是都廢了?服務提供者和消費者都廢了的話那這個程序還有存在的意義麼?

原创 每天學點SpringCloud(七):路由器和過濾器-Zuul

爲什麼要使用Zuul先來看一下下方這個圖 假如現在我們具有四個微服務,分別是用戶、訂單、支付、催收微服務,它們的調用方式分別是使用http、restful、thrift、kafka。這個時候如果我們在客戶端直接調用的話感覺是不是太費勁了,客

原创 每天學點SpringCloud(四):Feign的使用及自定義配置

Feign:SpringCloud的官網對它的定義是這樣的: 是一個聲明式的Web服務客戶端。它支持Feign本身的註解、JAX-RS註解以及SpringMVC的註解。Spring Cloud集成Ribbon和Eureka以在使用Feign

原创 每天學點SpringCloud(十一):Hystrix儀表盤

在SpringCloud學習系列博客第六篇文章中,我們已經學習了Hystrix的使用,但是那篇文章中有一點遺漏沒有講,那就是Hystrix Dashboard ,它可以實時的監控Hystrix的運行情況。我們先來看一下使用Hystrix D

原创 每天學點SpringCloud(八):使用Apollo做配置中心

由於Apollo支持的圖形化界面相對於我們更加的友好,所以此次我們使用Apollo來做配置中心本篇文章實現了使用Apollo配置了dev和fat兩個環境下的屬性配置。Apollo官方文檔https://github.com/ctripcor

原创 每天學點SpringCloud(十):SpringCloud監控

今天我們來學習一下actuator這個組件,它不是SpringCloud之後纔有的,而是SpringBoot的一個starter,Spring Boot Actuator。我們使用SpringCloud的時候需要使用這個組件對應用程序進行監

原创 每天學點SpringCloud(六):Hystrix使用

Hystrix是一個實現斷路器模式的庫。什麼是斷路器模式呢?就像我們家庭中的電閘一樣,如果有那一處出現意外,那麼電閘就會立刻跳閘來防止因爲這一處意外而引起更大的事故,直到我們確認處理完那一處意外後纔可以再打開電閘。而Hystrix的存在就是

原创 每天學點SpringCloud(一):使用SpringBoot2.0.3整合SpringCloud

最近開始學習SpringCloud,在此把我學習的過程記錄起來,跟大家分享一下,一起學習。想學習SpringCloud的同學趕快上車吧。 本次學習使用得SpringBoot版本爲2.0.3.RELEASE,SpringCloud版本爲Fin

原创 JVM內存區域

Java虛擬機在執行Java程序的過程中會把它所管理的內存劃分爲多個區域,這些區域各有自己的用途以及獨特的創建和銷燬時間,今天就帶着大家來揭開這些不同的數據區域的面紗先來一張最經典的圖:今天我們來學習一下圖片上方的程序計數器、方法區、棧、堆

原创 每天學點SpringCloud(二):服務註冊與發現Eureka

相信看過 每天學點SpringCloud(一):簡單服務提供者消費者調用的同學都發現了,在最後消費者調用提供者的時候把提供者的地址硬編碼在了代碼中,這樣的方式肯定是不行的,今天,我們就是要Eureka來解決這個問題 創建Eureka服務 1

原创 每天學點SpringCloud(三):自定義Eureka集羣負載均衡策略

相信看了 每天學點SpringCloud(一):簡單服務提供者消費者調用,每天學點SpringCloud(二):服務註冊與發現Eureka這兩篇的同學都瞭解到了我的套路,沒錯,本篇博客同樣是爲了解決上篇的問題的。 上篇我們使用Eureka默

原创 每天學點SpringCloud(十四):Zipkin使用SpringCloud Stream以及El

在前面的文章中,我們已經成功的使用Zipkin收集了項目的調用鏈日誌。但是呢,由於我們收集鏈路信息時採用的是http請求方式收集的,而且鏈路信息沒有進行保存,ZipkinServer一旦重啓後就會所有信息都會消失了。基於性能的考慮,我們可以

原创 JVM內存區域

Java虛擬機在執行Java程序的過程中會把它所管理的內存劃分爲多個區域,這些區域各有自己的用途以及獨特的創建和銷燬時間,今天就帶着大家來揭開這些不同的數據區域的面紗先來一張最經典的圖:今天我們來學習一下圖片上方的程序計數器、方法區、棧、堆

原创 你用過不寫代碼就能完成一個簡單模塊的組件麼?

開篇四連問 你是否懶得寫普通的增刪改查方法? 你是否不喜歡代碼生成插件的重複代碼? 你是否渴望一個沒有冗餘代碼的項目? 你是否渴望一行代碼都不用寫就能完成一個簡單的模塊? 組件由來 作爲後端程序員,相信大家都寫過以下幾種代碼: 根據主

原创 大型網站限流算法的實現和改造

最近寫了一個限流的插件,所以避免不了的接觸到了一些限流算法。本篇文章就來分析一下這幾種常見的限流算法 分析之前 依我個人的理解來說限流的話應該靈活到可以針對每一個接口來做。比如說一個類裏面有5個接口,那麼我的限流插件就應該能針對每一個接