原创 架構師教你Redis如何實現高可用架構

一、背景 公司的業務在大量的使用redis,訪問量大的業務我們有在使用codis集羣,redis 3.0集羣,說到redis 3.0集羣,我們線上已經跑了半年多了,集羣本身沒有出現過任務問題,但是由於我們這個業務是海外的,集羣建在aws的

原创 深入瞭解springmvc框架

1、springmvc簡介 1.1、mvc架構      MVC 是一種著名的設計模式,特別是在 Web 應用程序領域。模式全都是關於將包含業務數據的模塊與顯示模塊的視圖解耦的。這是怎樣發生的?視圖(例如,JSP 頁面)怎樣能夠與其模型(

原创 10 個面試技巧幫你找到最好的工作 !

在開發者工作面試上,並沒有大量的建議。 我發現很多有才華的開發者都會在工作面試上存在困難,這是因爲他們都把自己大部分時間花在他們所熱愛的技術和開發上,而沒有鍛鍊他們的面試技巧。, 這是不幸的,因爲擁有好的面試技巧,通過給你不熟悉領域上可能

原创 阿里分佈式服務框架Dubbo的架構總結

Dubbo是Alibaba開源的分佈式服務框架,它最大的特點是按照分層的方式來架構,使用這種方式可以使各個層之間解耦合(或者最大限度地鬆耦合)。從服務模型的角度來看,Dubbo採用的是一種非常簡單的模型,要麼是提供方提供服務,要麼是消費方

原创 深入理解java虛擬機之垃圾收集策略與算法

程序計數器、虛擬機棧、本地方法棧隨線程而生,也隨線程而滅;棧幀隨着方法的開始而入棧,隨着方法的結束而出棧。這幾個區域的內存分配和回收都具有確定性,在這幾個區域內不需要過多考慮回收的問題,因爲方法結束或者線程結束時,內存自然就跟隨着回收了。

原创 淺談Nginx服務器的內部核心架構設計

前言 Nginx 是一個 免費的 , 開源的 , 高性能 的 HTTP 服務器和 反向代理 ,以及 IMAP / POP3代理服務器。 Nginx 以其高性能,穩定性,豐富的功能,簡單的配置和低資源消耗而聞名。 Nginx 是一個 Web

原创 Dubbo的架構及用法

1. 介紹 Dubbo |ˈdʌbəʊ| 是阿里下的一個分佈式、高性能、透明化的RPC服務框架,提供服務自動註冊、自動發現等高效服務治理方案的開源框架。 1.1. RPC需要解決的問題 1.1.1. 通訊問題 主要是通過在客戶端和服務器之

原创 基於ZK實現分佈式鎖

引言ZooKeeper是一個分佈式的,開放源碼的分佈式應用程序協調服務,是Google的Chubby一個開源的實現,是Hadoop和Hbase的重要組件。它是一個爲分佈式應用提供一致性服務的軟件,提供的功能包括:配置維護、域名服務、分佈式

原创 Java併發編程(1)-Java內存模型

本文主要是學習Java內存模型的筆記以及加上自己的一些案例分享,如有錯誤之處請指出。 一 Java內存模型的基礎 1、併發編程模型的兩個問題 在併發編程中,需要了解並會處理這兩個關鍵問題: 1.1、線程之間如何通信? 通信是指線程之間以何

原创 Redis的使用總結

安裝 下載好redis-2.8.12.tar.gz放在/usr/local下 tar zxvf redis-2.8.12.tar.gz 解壓縮 cd /usr/local/redis-2.8.12 make cd src make in

原创 MySQL集羣安裝與配置

MySQL Cluster 是 MySQL 適合於分佈式計算環境的高實用、高冗餘版本。它採用了NDB Cluster 存儲引擎,允許在1個 Cluster 中運行多個MySQL服務器。MySQL Cluster 能夠使用多種故障切換和負載

原创 深入理解java序列化機制

序列化是指對象通過寫出描述自己狀態的數值來記錄自己的過程,即將對象表示成一系列有序字節,Java提供了將對象寫入流和從流中恢復對象的方法。對象能包含其它的對象,而其它的對象又可以包含另外的對象。Java序列化能夠自動的處理嵌套的對象。對於

原创 JAVA NIO原理剖析

模型解釋: BIO場景下,客戶端(Client)發起連接請求,服務端接收到請求後,會分配一個業務線程處理這次訪問,執行業務處理,寫入響應流。 無論是服務端還是客戶端,數據的讀寫都是阻塞的。比如,服務端收到客戶端的請求,想要獲取客戶端傳過來

原创 詳解SQL性能優化十條經驗

1.查詢的模糊匹配 儘量避免在一個複雜查詢裏面使用 LIKE '%parm1%'—— 紅色標識位置的百分號會導致相關列的索引無法使用,最好不要用. 解決辦法: 其實只需要對該腳本略做改進,查詢速度便會提高近百倍。改進方法如下: a、修改前

原创 分佈式唯一ID的幾種生成方案

前言 在互聯網的業務系統中,涉及到各種各樣的ID,如在支付系統中就會有支付ID、退款ID等。那一般生成ID都有哪些解決方案呢?特別是在複雜的分佈式系統業務場景中,我們應該採用哪種適合自己的解決方案是十分重要的。下面我們一一來列舉一下,不一