原创 數倉建設七大規範指南

一、數據模型架構規範   1.數據層次的劃分   ODS:Operational Data Store,操作數據層,在結構上其與源系統的增量或者全量數據基本保持一致。它相當於DW數據的一個數據準備區

原创 如何一步步讓MySQL支撐億級流量

1 主從讀寫分離 大部分互聯網業務都是讀多寫少,因此優先考慮DB如何支撐更高查詢數,首先就需要區分讀、寫流量,這才方便針對讀流量單獨擴展,即主從讀寫分離。 若前端流量突增導致從庫負載過高,DBA會優先做個從庫擴容上去,這樣對DB的讀流量

原创 說說爲什麼要做數據庫拆分

1. 爲什麼要拆分數據庫? 單體項目在構建之初,數據庫的負載和數據量都不大,所以不需要對數據庫做拆分,小型財務系統、文書系統、ERP系統、OA系統,用一個MySQL數據庫實例基本就夠用了。 就像《淘寶技術這十年》裏面說到的,電商業務的數據

原创 架構師必須掌握的架構設計原則

軟件設計原則 GRASP 通用職責分配軟件模式 來自 Craig Larman 的軟件設計書《UML 和模式應用》,Larman 在書中提出軟件設計的關鍵任務是職責分配,並提煉總結出 9 種 (5 種核心 +4 種擴展) 軟件職責分配模式

原创 汽車之家主機廠離線化 H5 Hybrid 實踐

1.背景 H5 頁面做秒開優化是業務的常規操作,一般正常通過網絡請求的 H5 頁面,我們都是圍繞資源加載速度優化展開。優化手段主要分兩個方向,一個是提升網絡速度,一個是減少資源大小。 提升網絡速度,一般的手段有 D

原创 ElasticSearch系列-索引原理與數據讀寫流程

索引原理 倒排索引 倒排索引(Inverted Index)也叫反向索引,有反向索引必有正向索引。通俗地來講,正向索引是通過key找value,反向索引則是通過value找key。ES底層在檢索時底層使用的就是倒排索引。 索引模型 現有

原创 靈魂三問之穩定性摸排

本文記錄了穩定性摸排過程中的一些思考和沉澱。 前言 在之前寫了篇文章《上線十年,81萬行Java代碼的老系統如何重構》,在文章後有同學留言問“這麼複雜的改動,質量是如何應對的”,是一個特別好的問題,當時只是從現有的一些監控、

原创 軟件測試:功能測試-接口測試-自動化測試-性能測試-驗收測試

軟件測試的主要流程 一、測試主要的四個階段 1.測試計劃設計階段:產品立項之後,進行需求分析,需求評審,業務需求評級,繪製業務流程圖。確定測試負責人,開始制定測試計劃; 2.測試準備階段:各成員編寫測試用例、先小組內評審

原创 談一談接口測試

接口測試爲什麼重要? 我相信你一定聽說過這樣一句話:“測試要儘早介入,測試進行得越早,軟件開發的成本就越低,就越能更好地保證軟件質量。” 但是如何儘早地進入測試,作爲軟件測試的你,是不是也沒辦法說得清楚呢?其實上面那句話中的“測試”,所指

原创 一文搞懂性能測試

性能測試概念 我們經常看到的性能測試概念,有人或稱之爲性能策略,或稱之爲性能方法,或稱之爲性能場景分類,大概可以看到性能測試、負載測試、壓力測試、強度測試等一堆專有名詞的解釋。 針對這些概念,我不知道你看到的時候會不會像我的感覺一樣:亂!

原创 整潔架構在前端的設計思想與應用實踐

隨着業務的發展,前端項目承載了越來越多的職責,也越來越複雜,簡單通過 cli 生成的框架結構越來越無法滿足。 面對前端項目複雜度的不斷提升,我們開始思考前端的架構組織方式怎麼才更合理? 應該如何設計良好的前端架構? 行業是否有比較好的優秀

原创 一文入門最熱的LLM應用開發框架LangChain

在人工智能領域的不斷髮展中,語言模型扮演着重要的角色。特別是大型語言模型(LLM),如 ChatGPT,已經成爲科技領域的熱門話題,並受到廣泛認可。 在這個背景下,LangChain 作爲一個以 LLM 模型爲核心的開發框架出現,爲自然語

原创 軟件工程裏的組織文化

一、引言 本文是京東到家自動化測試體系建設過程中的一些回顧和總結,刪減了部分系統設計與實踐的章節,保留了組織與文化相關的內容,整理成文,以饗讀者。 下面就以QA(Quality Assurance)的視角來探討

原创 主流大語言模型的技術原理細節

1.比較 LLaMA、ChatGLM、Falcon 等大語言模型的細節:tokenizer、位置編碼、Layer Normalization、激活函數等。 2. 大語言模型的分佈式訓練技術:數據並行、張量模型並行、流水線並行、3D 並行、

原创 MySQL鎖知識點掃盲大全

  1. 爲什麼需要加鎖   在日常生活中,如果你心情不好想靜靜,不想被比別人打擾,你就可以把自己關進房間裏,並且反鎖。這就是生活中的加鎖。   同理,對於MySQL數據庫來說的話