原创 分佈式億級流量整體架構設計原則

架構目標 高可用性 整體系統可用性最低99.9%,目標99.99%。全年故障時間整個系統不超過500分鐘,單個系統故障不超過50分鐘。 高可擴展性 系統架構簡單清晰,應用系統間耦合低,容易水平擴展,業務功能增改方便快捷。

原创 架構師必備的37項技能清單

幾年前,我被問到“你是如何變成一名架構師的?”。基於這個話題,我們討論了很多,比如必要的技術、經驗以及所需要的知識儲備等。這一次討論促使我開始思考要成爲一名架構師應該具備和學習的東西有哪些,成爲一個優秀的架構師應該具備哪些能力和做哪些事

原创 如何保障MySQL和Redis的數據一致性?

先拋一下結論:在滿足實時性的條件下,不存在兩者完全保存一致的方案,只有最終一致性方案。根據網上的衆多解決方案,總結出 6 種,直接看目錄:     不好的方案   1、先寫 MySQL,再寫 Redis

原创 用慘痛教訓換來的156條MySQL設計規約

怎麼才能很好地避免低級故障?以下規範在大型互聯網公司經過了充分驗證,尤其適用於併發量大、數據量大的業務場景。   在設計數據庫技術方案時,我們是有自己的設計理念或者原則,還是更多依據直覺去設計?是否曾經懊

原创 淺談MySQL讀寫分離的坑以及應對的方案

一、主從架構 爲什麼我們要進行讀寫分離?個人覺得還是業務發展到一定的規模,驅動技術架構的改革,讀寫分離可以減輕單臺服務器的壓力,將讀請求和寫請求分流到不同的服務器,分攤單臺服務的負載,提高可用性,提高讀請求的

原创 架構應用總結

天帶來的是架構活動中的常見原則,在我們平時做技術方案,非功能設計時一定需要銘記於心這些方法論。 架構目標 高可用性 整體系統可用性最低99.9%,目標99.99%。全年故障時間整個系統不超過500分鐘,單個系統故障不超過50分鐘

原创 架構設計如何繪圖?

很多同學技術能力很強,架構設計也做得很好,但是在給別人講解的時候,總感覺像是“茶壺裏煮餃子,有貨倒不出”。 其實,在爲新員工培訓系統架構、給領導彙報技術規劃、上技術大會做演講或者向晉升評委介紹工作貢獻的時候,如果你能畫出一張優秀的 軟件系

原创 高可用架構之異地多活

當談到架構的高可用時,無論是高可用計算架構,還是高可用存儲架構,其本質的設計目的都是爲了解決部分服務器故障的場景下,如何保證系統能夠繼續提供服務。但在一些極端場景下,有可能所有服務器都出現故障。例如,典型的有機房斷電、機房火災、地震、水災

原创 單體到微服務架構服務演化過程

聊聊從單體到微服務架構服務演化過程 單體分層架構 在 Web 應用程序發展的早期,大部分工程是將所有的服務端功能模塊打包到單個巨石型(Monolith)應用中,譬如很多企業的 Java 應用程序打包爲 war 包,最終會形成如下的架構:

原创 電商系統架構演進

具體以電子商務網站爲例, 展示web應用的架構演變過程。 1.0時代 這個時候是一個web項目裏包含了所有的模塊,一個數據庫裏包含了所需要的所有表,這時候網站訪問量增加時,首先遇到瓶頸的是應用服務器連接數,比如tomcat連接數不能無限

原创 使用try-convert將.NET Framework項目遷移到.NET Core

工具地址:GitHub - dotnet/try-convert:幫助 .NET 開發人員將他們的項目移植到 .NET Core! 這是一個簡單的工具,有助於將.NET Framework項目遷移到.NET Core。 如何使用它 在此處

原创 .netframework遷移到.netcore方法

一 .netframework程序遷移到.netcore5.0對於.netframwork程序想要升級爲.netcore5.0的方法,微軟官方也給出了方法見 https://docs.microsoft.com/en-us/dotnet/

原创 拆解零售商品架構的底層邏輯

一、引言   在當今數字化時代,零售業正迅速發展,消費者的購物行爲和期望發生了巨大的變化。爲了滿足不斷增長的需求,零售企業必須構建高度靈活、穩健可靠的商品系統。   本文將深入探討零售商品系統的底層邏輯,聚焦領域驅動設計

原创 你真的瞭解TDD和BDD嗎

今天我們來談一談TDD 和 BDD 兩項實踐。我們先來說說 TDD,也就是測試驅動開發(Test Drvien Development)。 TDD 的節奏 或許你已經迫不及待地要舉手了:“TDD 我知道,就是先寫測試,後寫代碼。”但真的是

原创 一文搞懂業務架構、技術架構、數據架構、運維架構、物理架構理清不同視角的架構

  一起學習下架構的視角。 架構的視角 在筆者的知識體系中,實際上將架構分爲業務架構、應用架構、雲基礎架構這幾大類,業務架構主要着眼於控制業務的複雜性,基礎架構着眼於解決分佈式系統中存在的一系列問題。無論何種架構,都希望能實現系統的可