原创 微服務——docker容器安裝、rabbitMq安裝

1.開啓Hyper-v 打開控制面板—>程序—>啓用或關閉應用程序  勾選Hyper-v,然後重啓電腦  2.下載docker容器安裝包 極速下載網址:http://get.daocloud.io,下載自己需要的版本,我這裏下載的是w

原创 互聯網高併發解決方案——Hystrix實現服務隔離和降級

一、雪崩效應 1.雪崩效應是什麼? 在分佈式的的環境下,服務之間相互依賴調用,一個服務往往會依賴於其他幾個服務,所以,當一個服務不可用時,就會影響到其它服務的正常工作。例如,在搶購系統中,當有大量併發請求調用商品服務,訂單服務可能會資源耗

原创 SpringBoot學習——SpringBoot監控中心SpringBoot Admin

一、SpringBoot Admin簡介 Spring Boot Admin是一個開源社區項目,用於管理和監控SpringBoot應用程序,是一個分佈式微服務監控中心 一個應用程序就是一個Client,向Spring Boot Admin

原创 SpringBoot學習——SpringBoot整合多數據源

一、爲什麼需要多數據源 在項目中,可能會出現需要查詢不同數據庫的表的情況,所以這就需要配置多數據源。原則上可以配置無數個數據源,但是需要硬件的支持(內存等)。 二、整合多數據源的兩種方式 分包,根據不同的業務劃分不同包名作爲區分 根據註解

原创 Java學習——併發編程之鎖的深入化

五、鎖的深入化 鎖是併發編程共享數據,保證數據一致性的工具。在Java中有多種實現,例如synchronized(重量級鎖)、ReentrantLock(輕量級鎖)等,這些鎖爲我們的來發提供了便利。下面我跟大家聊一聊Java中鎖的相關知識

原创 Java學習——併發編程之線程池原理分析

四、線程池原理分析 1.阻塞隊列與非阻塞隊列 1.1阻塞隊列與非阻塞隊列的區別: (1)從空的阻塞隊列中讀取元素,將會阻塞,知道其他線程插入元素到這個隊列中。 (2)往滿的隊列中添加元素,同樣也會阻塞,知道有線程從隊列中取出元素或者隊列中

原创 Java學習——併發編程之線程安全

二、線程安全 1.爲什麼有線程安全問題? 當多個線程同時共享同一個全局變量或靜態變量,做寫操作時,可能會發生數據衝突問題,也就是線程安全問題。但是做讀操作是不會發生數據衝突問題。 2. 如何解決多線程之間的線程安全問題? 使用同步sync

原创 java學習——併發編程之多線程基礎

一.基礎知識 1.線程與進程 進程:進程是程序關於某項操作的一次運行活動,是操作系統進行資源調度和分配的單位。進程是線程的集合。 線程:線程是進程的一條執行路徑,是cpu進行調度和分配的單位。 舉例:進程就像是一個工廠,完成着cpu分配的

原创 Java學習——併發編程之多線程之間通信

三.多線程之間通信 1.爲什麼有線程之間的通信? (1)線程在運行時,cpu是隨機調度的,往往我們會使用多個線程來完成同一個任務(類似多人協作),並且我們希望多線程完成任務是有規律的,那麼在完成任務的過程中,線程之間必然要有一些交流,這樣

原创 實現MySQL主從複製,nginx讀寫分離

說明:我的nginx裝在Windows上,實現反向代理,讀寫分離。在兩臺centos7主機上安裝MySQL5.7,部署相同的項目。使用MySQL自帶的主從複製。 測試環境:Windows上配置nginx做nginx服務器        

原创 【LintCode】 209. 第一個只出現一次的字符

給出一個字符串,找出第一個只出現一次的字符。 樣例 樣例 1: 輸入: "abaccdeff" 輸出: 'b' 解釋: 'b' 是第一個出現一次的字符 樣例 2: 輸入: "aabccd" 輸出: 'b'  

原创 【LintCode】82. 落單的數

給出2*n + 1 個的數字,除其中一個數字之外其他每個數字均出現兩次,找到這個數字。   樣例 給出 [1,2,2,1,3,4,3],返回 4 挑戰 一次遍歷,常數級的額外空間複雜度 public class Solution {

原创 【LintCode】1613. 最高頻率的IP

1613. 最高頻率的IP 給定一個字符串數組lines, 每一個元素代表一個IP地址,找到出現頻率最高的IP。 樣例 樣例1: 輸入 = ["192.168.1.1","192.118.2.1","192.168.1.1"] 輸出

原创 【LintCode】 56. 兩數之和

給一個整數數組,找到兩個數使得他們的和等於一個給定的數 target。 你需要實現的函數twoSum需要返回這兩個數的下標, 並且第一個下標小於第二個下標。注意這裏下標的範圍是 0 到 n-1。 樣例 Example1: 給出 numb

原创 【LintCode】366. 斐波納契數列

查找斐波納契數列中第 N 個數。 所謂的斐波納契數列是指: 前2個數是 0 和 1 。 第 i 個數是第 i-1 個數和第i-2 個數的和。 斐波納契數列的前10個數字是: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34