原创 設計模式學習與整理-責任鏈模式

介紹 責任鏈模式(Chain of Responsibility Pattern)爲請求創建了一個接收者對象的鏈。對請求的發送者和接收者進行解耦。 在這種模式中,通常每個接收者都包含對另一個接收者的引用。如果一個對象不能處理該請求,那麼它

原创 RabbitMQ 3.7.16 安裝踩坑記錄

前言 安裝RabbitMQ的時候有點坎坷,所以這裏記錄下。 這裏Linux版本是 CentOS 6.6安裝的是當前最新版 RabbitMQ 3.7.16,對應Erlang 22.0。 安裝Erlang 首先下載Erlang: 我選擇了

原创 如何根據項目、資源做微服務架構中的服務拆分

前言 最近幾年微服務架構開始流行起來,單體應用在部署效率、開發成本、系統可用性方面不如微服務架構。那麼單體應用如何向微服務架構轉變呢,這裏就需要服務化拆分。 服務化拆分 服務化拆分有兩種方式: 拿個簡單的社交網站爲例,網站有首頁內容模塊,

原创 AOP動態數據源切換 實現主從讀寫分離

前言 MySQL 主從可以更好的減少數據庫壓力,今天搞了一個小demo,只讀接口讓他去從庫查,用註解方式實現。代碼上傳至碼雲: https://gitee.com/yunup/some-examples 環境信息 Java 版本

原创 內存屏障與volatile內存語義的實現

內存屏障 爲了保證內存可見性,java 編譯器在生成指令序列的適當位置會插入內存屏障指令來禁止特定類型的處理器重排序。JMM 把內存屏障指令分爲下列四類: 屏障類型 指令示例 說明 LoadLoad Barriers L

原创 Ruby gem install cannot load such file -- zlib

百度找解決方案未果,就去了谷歌,找到一個方案,地址爲 https://qiita.com/Gin/items/99e4e92ac53fb3504471 。 因爲是牆外的網站,所以我截圖貼在下面:

原创 Windows安裝Docker報錯cannot enable hyper-v service

前言 windows 安裝 docker 的時候,啓動異常,報: cannot enable hyper-v service。 方法一 可以先看晚上的方法 確認hyper-v是否啓動 確認cpu的svmmode是否打開 該方法來

原创 ElasticSearch 5.2 安裝ES

前言 這篇文章簡單地介紹了安裝ES,當然,安裝ES就是很簡單。 步驟 1.首先,java環境是需要配置好的,配置步驟略。 2.下載安裝包,下載地址:https://www.elastic.co/cn/downloads/past-rele

原创 ElasticSearch 5.2 常用概念

有一些概念是Elasticsearch的核心。從一開始就理解這些概念將幫助簡化學習過程。 近實時(Near Realtime NRT) 近實時(NRT)編輯 Elasticsearch是一個近乎實時的搜索平臺。這意味着從索引文檔到可搜索文

原创 取消Rainbow Brackets彩色框

此文篇幅較短,預計幾秒就讀完。 Rainbow Brackets 是很好用的插件,github:https://github.com/izhangzhihao/intellij-rainbow-brackets。安裝起來方便,使用起來高效

原创 精進代碼 - 接口參數校驗

前言   我們在寫接口的時候,需要對傳來的數據進行必要的校驗,先來看一段可以改造的代碼: public String register(User user) { if (StringUtils.isEmpty(user.g

原创 精進代碼 - 接口統一響應體

前言   如今web項目的接口大都是 RESTful 的,響應體中包含了一些接口執行的信息,比如返回的數據(data)、響應碼(code)、是否成功(success)和響應描述(message)。每個接口都需要封裝成這種格式,這樣

原创 高性能數據庫之 分庫分表

前言 前面的讀寫分離,分散了數據庫讀寫操作的壓力,沒有分散存儲壓力,當數據量很大時,單臺數據庫服務器就會出現性能瓶頸,主要在以下幾方面: 數據量太大,讀寫性能下降 數據文件也會變得很大, 備份恢復時間變長 所以,需要控制單臺數

原创 高性能數據庫之 讀寫分離

前言 隨着業務的不斷髮展,單機數據庫已經不能滿足業務需要。接下來講講數據庫集羣的幾種方式:讀寫分離和分庫分表。 讀寫分離 原理 讀寫分離的原理就是將數據庫的讀寫操作分散在不同的節點上。 實現方式 多臺數據庫搭建一個集羣,一臺數

原创 BeanFactory和ApplicationContext的關係

示例 使用版本爲 Spring Framework 5.2.2.RELEASE 示例: 首先創建了Repository類,有兩個屬性,類型爲 BeanFactory 和 ApplicationContext public clas