原创 Dubbo之基礎概念和配置

Dubbo基本需求     1)需要一個服務註冊中心,動態的註冊和發現服務,使服務的位置透明,在消費方獲取服務提供方地址列表,實現軟負載均衡和Failover     2)需要自動畫出應用間的依賴關係圖,幫助架構師理清關係     

原创 ZooKeeper之基礎概念(一)

之前在項目中使用過zooKeeper,但是隻是簡單的應用和配置,這當然不能滿足我這渴望求知的心,於是我打算重新完整深入學習一下ZooKeeper,做到知其然知其所以然! ZooKeeper是什麼? 中心觀點:它可以在分佈式系統中協作多

原创 SpringCloud之Eureka(三)

前言 之前兩篇已經搭建了簡單的高可用註冊中心,服務提供者及服務消費者。但是僅僅做這些在實際應用中還是不夠的,這篇主要對Eureka的架構進一步瞭解以及學習一些進階特性。 服務續約 服務提供者會定時發送一個心跳來防止EurekaSe

原创 在centos上搭建ZooKeeper

前言 本篇假設大家已經知道了ZooKeeper的基礎概念,在此不做任何介紹。在這裏,我們首先一起在centos系統上安裝一個單機ZooKeeper,並使用簡單的客戶端操作。然後提升下檔次,爲了ZooKeeper的高可用,我們再配置一下

原创 redis持久化

前言 溫故而知新!學習本來就是一個不斷重複記憶,不斷加深理解的過程。本篇對於已經學習過的redis知識點做個記錄。 兩種不同的持久化方法 快照方式 優點:它將存在於某一時刻的所有數據都寫入到硬盤裏面。在創建快照之後,用戶可以對快照

原创 ZooKeeper之基礎概念(二)

食譜(recipes) ZooKeeper數據數結構  recipes是應用使用ZooKeeper提供的API作爲原語的實現。recipes包含了ZooKeeper的操作,並且維護一個小型的數據節點,這些節點被稱爲znode。 上圖

原创 Zookeeper之基礎概念(一)

之前在項目中使用過zookeeper,但是隻是簡單的應用和配置,這當然不能滿足我這渴望求知的心,於是我打算重新完整深入學習一下zookeeper,做到知其然知其所以然! Zookeeper是什麼? 中心觀點:它可以在分佈式系統中協作多

原创 SpringCloud之Eureka(一)

目錄 服務治理  Netflix Eureka 搭建服務註冊中心(單機模式)  註冊服務提供者 服務治理 服務治理是微服務架構中非常重要的模塊,主要用來實現服務的自動註冊與發現。在最初構建微服務系統的時候服務可能並不多,可以通過簡單的

原创 SpringCloud之Eureka(二)

目錄 前言 實現高可用註冊中心   前言 在SpringCloud之Eureka(一)中,簡單的配置了Eureka的單節點註冊中心,但是在分佈式環境中,我們需要充分考慮發生故障的情況,需要一些高可用方案。在這篇文章中,我將會構建一個高

原创 併發之捕獲異常

概要 由於線程的本質特性,不能捕獲從線程中逃逸的異常,一旦異常從run()方法拋出,它就會從控制檯打印出來,除非採取特殊的步驟來捕獲這種錯誤的異常。這篇文章就來了解一下併發中異常的捕獲處理。 問題描述 首先看以下代碼,在run()

原创 SpringCloud之簡介

目錄 概述 子項目 版本   概述 Spring Cloud是一個基於Spring Boot實現的微服務架構開發工具。它爲微服務架構中涉及的配置管理,服務治理,斷路器,智能路由,微代理,控制總線,全局鎖,決策競選,分佈式會話和集羣狀態

原创 Dubbo之參數配置(六)

目錄 令牌驗證 路由規則 條件路由規則  腳本路由規則   令牌驗證 驗證步驟 使用場景 防止消費者繞過註冊中心訪問提供者 在註冊中心控制權限,以決定要不要下發令牌給消費者 註冊中心可靈活改變授權方式,而不需要修改或升級提供者 (1

原创 Dubbo之參數配置(五)

目錄 併發控制 連接控制 延遲連接 粘滯連接   併發控制 使用場景 限制服務的方法在服務器端佔用線程池線程數的數量。 配置 (1)限制BarService的每個方法,服務器端併發執行數不能超過10個 <dubbo:service

原创 Dubbo之參數配置(三)

目錄 本地調用  參數回調 事件通知   本地調用 使用場景 本地調用使用Injvm協議,是一個僞協議,它不開啓端口,不發起遠程調用,只在JVM內直接關聯,但執行Dubbo的Filter鏈。 配置 //定義injvm協議 <dubb

原创 Dubbo之參數配置(四)

目錄 本地存根 本地僞裝 延遲暴露   本地存根 使用場景 遠程服務後,客戶端通常只剩下接口,而實現全在服務器端,但提供方有些時候想在客戶端也執行部分邏輯,比如:做ThreadLocal緩存,提前驗證參數,調用失敗後僞造容錯數據等等,