原创 架構圖最佳實踐

架構圖   本文章用於蒐集較爲成熟和具有參考價值的架構圖模型、文章以及最佳實踐。   C4 模型   C4 模型中的 C4,代表上下文(Context)、容器(Container)、組件(Component)和代碼(Code),即一系列

原创 代碼設計幾大原則

開閉原則 單一職責 依賴倒置 最少知識 里氏替換 接口隔離 組合/聚合複用

原创 Uber微部署的工程實踐

原文:UBER ENGINEERING’S MICRO DEPLOY: DEPLOYING DAILY WITH CONFIDENCE 作者: Mathias Schwarz 譯者:仲培藝,關注數據庫領域,糾錯、尋求報道或者投稿請

原创 IDEA 2016 license server

http://jetbrains.tencent.click IntelliJ IDEA 2016.2.4

原创 tcpcopy壓力測試

一、tcpcopy簡介 XCopy是由主要由網易的王斌開發的一套流量複製測試工具。XCopy系列包括 TCPCopy、UDPCopy、MysqlCopy 等開源軟件(這些軟件都集成在tcpcopy 開源項目內)。曾經應用於網易的廣告投

原创 58到家通用實時消息平臺架構細節(Qcon2016)

一、解決什麼問題 + 難點 解決什麼業務問題 (1)端到雲的實時上報需求:58速運司機端GPS實時上報 (2)雲到端的實時推送需求:58速運司機訂單實時推送 (3)端到端的聊天消息需求:用戶、商戶、客服之間的聊天溝通 難點:

原创 餓了麼異地多活技術實現(二)API-Router的設計與實現

背景: 餓了麼隨着業務量的增長,單個數據中心的容量無法支撐全部流量,同時傳統機房冷備份方式的缺陷,促使餓了麼異地多活應運而生;而作爲多活重要組件之一的API-Router,扮演着客戶端入口流量到後端機房路由的重要角色,當一個機房出現故障甚

原创 跳錶(SkipList)數據結構介紹

使用場景 跳錶(Skiplist)是一個特殊的鏈表,相比一般的鏈表,有更高的查找效率,可比擬二叉查找樹,平均期望的查找、插入、刪除時間複雜度都是O(logn),許多知名的開源軟件(庫)中的數據結構均採用了跳錶這種數據結構。 Redis中的

原创 DRC實踐

DRC簡介 DRC(Data Replication Center)是我在阿里聽過的一個概念,它的業務域是支持異構數據庫實時同步,數據記錄變更訂閱服務。爲跨域實時同步、實時增量分發、異地雙活、分庫分表等場景提供產品級的解決方案。支持異地多

原创 餓了麼異地多活技術實現(四)- 實時雙向複製工具(DRC)

DRC介紹 餓了麼的 Data Replicate Center(DRC)項目用於數據雙向複製和數據訂閱,使用場景如下圖: 要點說明: 跨機房的 Mysql 數據複製完全通過 DRC 來完成 還有很多業務團隊通過 DRC 來實現數據訂閱

原创 餓了麼異地多活技術實現(一)總體介紹

https://zhuanlan.zhihu.com/p/32587960 背景: 餓了麼隨着業務量的增長,單個數據中心的容量無法支撐全部流量,同時傳統機房冷備份方式的缺陷,促使餓了麼異地多活應運而生;而作爲多活重要組件之一的API-Ro

原创 ng的upstream模塊

upstream模塊 (100%) nginx模塊一般被分成三大類:handler、filter和upstream。前面的章節中,讀者已經瞭解了handler、filter。利用這兩類模塊,可以使nginx輕鬆完成任何單機工作。而本章介紹

原创 餓了麼異地多活技術實現(三)GZS&DAL

餓了麼技術團隊花了1年多的時間,實現了業務的整體異地多活,能夠靈活的在多個異地機房之間調度用戶,實現了自由擴容和多機房容災的目標。本文介紹這個項目的中五大核心基礎組件中的DAL與GZS,關於項目整體介紹以及其它組件的實現細節可以參考本系列

原创 Netty系列之Netty高性能之道

1. 背景 1.1. 驚人的性能數據 最近一個圈內朋友通過私信告訴我,通過使用Netty4 + Thrift壓縮二進制編解碼技術,他們實現了10W TPS(1K的複雜POJO對象)的跨節點遠程服務調用。相比於傳統基於Java序列化+

原创 Microservice 微服務的理論模型和現實路徑

兩年前接觸到了微服務的概念,面對日益膨脹的系統感覺豁然開朗。之後的兩年逐步把系統按微服務的架構理念進行了重構,並將業務遷移到了新架構之上。感覺現在差不多是時候寫一篇關於微服務的總結文章了。 定義 在 Martin Fowler &