原创 springCloud(11):使用Hystrix實現微服務的容錯處理-簡介與實現

一、問題引入如果服務提供者響應非常緩慢,那麼消費者對提供者的請求就會被強制等待,直到提供者響應或超時。在高負載場景下,如果不作任何處理,此類問題可能會導致服務消費者的資源耗盡甚至整個系統的崩潰。1.1、雪崩效應微服務架構的應用系統通常包含多

原创 linux學習:環境變量

1、環境變量文件/etc/profile2、輸出環境變量值echo $PATH3、Linux:-bash: ***: command not found,解決爲防止如上異常,請先初始化環境變量:1、修改profile文件:(所有用戶)#vi

原创 springCloud(17):統一管理微服務配置-簡介

一、爲什麼要統一管理管理微服務配置在微服務框架中,微服務的配置管理一般有一下需求: 1、集中管理配置  一個使用微服務架構的應用系統可能會包含成百上千個微服務,集中管理配置非常用必要。 2、不同環境不同配置  如:數據源配置在不同的環境(開

原创 springCloud(19):統一管理微服務配置-配置內容的加解密和與Eureka配合使用

一、配置內容的加解密對於某些敏感的配置內容(如:賬號、密碼)應當加密存儲。Config Server爲配置內容的加密和解密提供了支持。1.1、安裝JCEConfig Server的加密解密功能依賴Java Cryptography Exte

原创 springCloud(15):使用Zuul構建微服務網關-Header與文件上傳和過濾器

一、Header1.1、敏感header的設置一般來說,可在同一個系統中的服務之間共享Header,不過應儘量防止讓一些敏感的Header外泄。zuul:   routes:     provide-user:       sensitiv

原创 Spring Security(1):簡介

一、組件圖攔截請求,將請求交給認證過濾器和訪問決策過濾器。主要包括:認證、驗證(權限控制或授權)。二、常見的認證Basic需用戶名、密碼,base64傳輸。缺點: 1:無狀態,每次通信都需帶上認證信息。 2:傳輸安全性不高,傳輸信息base

原创 Spring Security(2):常用權限攔截器

Spring Security提供了很多過濾器,它們攔截Servlet請求,並將這些請求轉交給認證處理過濾器和訪問角色處理過濾器,認證用戶身份和用戶權限,以保證web資源的安全性SecurityContextPersistenceFilte

原创 springCloud(14):使用Zuul構建微服務網關-路由端點與路由配置詳解

一、Zuul的路由端點當@EnableZuulProxy與SpringBoot Actuator配合使用時,Zuul會暴露一個路由管理端點/routes。藉助這個端點,可以方便、直觀地查看以及管理Zuul的路由。/routes端點的使用非常

原创 Spring Security(4):權限緩存

Spring Security的權限緩存與數據庫管理有關,都是在用戶認證上做文章,因此都與UsrtDetailsService有關。與數據庫管理不同的是,Spring Security提供了一個實現了UsrtDetailsService的緩

原创 springCloud(20):統一管理微服務配置-刷新配置

一、使用/refresh端點手動刷新配置很多場景下,需要在運行期間動態調整配置。如果配置發生了修改,微服務要如何實現配置的刷新呢?1、複製config-client,重命名爲config-client-refresh(端口:5021)2、添

原创 springCloud(21):統一管理微服務配置-用戶認證與Server的高可用

一、Spirng Cloud Config的用戶認證前面配置的Config Server是允許匿名訪問的,爲了防止配置內容的外泄,應該保護Config Server的完全。1.1、實現a、複製項目config-server,重命名爲conf

原创 springBoot(其它):json處理

一、對於返回null的去除處理對於"data":null,這個於客戶的處理會帶來不便,我們將其去掉。在實體類上添加@JsonInclude(JsonInclude.Include.NON_NULL)註解,如下:package com.wad

原创 springCloud(其它):引導上下文

Spring Cloud有一個“引導上下文”的概念,這是主應用程序的父上下文。引導上下文負責從配置服務器加載配置屬性,以及解密外部配置文件中的屬性。和主應用程序加載application.yml中的屬性不同,引導上下文加載bootstrap

原创 Spring Security(3):數據庫管理

核心處理流程1:當一個用戶登錄時,會先執行身份認證。2:如果身份認證未通過,則會要求用戶重新認證。3:如果身份認證通過,則會調用角色管理器判斷它是否可以訪問。這裏如果我們需要使用數據庫中數據進行身份認證,則需要自定義用戶登錄功能。Sprin

原创 springCloud(18):統一管理微服務配置-git配置與Server的健康狀況指示器

一、Config Server的Git倉庫配置1.1、佔位符支持Config Server的佔位符支持{application}、{profile}、{label}server:   port: 5020 spring:   applica