原创 【原理+實現】鏈路追蹤系統原理與開源實現

鏈路追蹤的原理 鏈路追蹤的規範 OpenTracing Dubbo微服務實現鏈路追蹤的原理 設計 按照Open Tracing規範設計鏈路數據存儲結構 分佈式TraceID生成 開發mvc層監控、dubbo層監控、MySQL層或My

原创 【原理】單例模式

使用場景:線程池對象 實現: 1、餓漢式 2、懶漢式 -> synchronized鎖 3、靜態內部類實現延遲初始化 -> 靜態內部類特性 4、枚舉 -> Effective Java 5、雙重檢查鎖+volatile -> 指令重排序問

原创 【工程經驗】技術文檔模板

1、確認需求: 用自己的話再給對方複述一遍 2、分析需求: 表面需求 內在需求 擴展需求 是否合理 3、分析資源: 人+資源+時間+依賴資源 4、邊界: 功能性需求(數據收集、加工、存儲、展示) 非功能性需求(易用性、可用性、性能、完整性

原创 【改造微服務】Web項目接口改造Spring Boot + Dubbo服務

1、搭建Spring Boot項目 https://github.com/zhangxd1989/springboot-dubbox 2、爲了減少代碼變動,通過xml配置文件方式遷移 ①導入spring-context.xml文件配置,

原创 【大數據】分佈式系統原理介紹

第一部分 數據分佈方式 哈希方式 - 原理(將不同哈希值的數據分佈到不同的機器上) - 缺點(擴展性差、容易造成數據傾斜) 一致性哈希 - 原理(哈希函數的輸出值域爲一個封閉的環) - 缺點(隨機分佈節點的方式使得很難均勻的分佈哈希 值

原创 重複勞動太多?那可能是你的機會

比如,對於Hive、Spark的性能調優,熟練的開發人員就是掌握了一些調優的方法,不能形成通用的方案,還是在日復一日的重複自己的工作,實質上沒有太大的提升。LinkedIn就開發出了工具Dr-Elephant來輕鬆定位性能問題。 比如,

原创 轉載:ZGC Garbage Collector: Low Latency and Scalable

In this article, we will see how ZGC works. If you also wanted to learn about G1GC you can go through this link. This w

原创 【個人感悟】20200612

昨天一位架構師分享了一個觀點,就怕遇到只把工作當做工作的人。 這樣的人在做工作的時候,看起來是做了,但是實際沒有解決問題。

原创 【讀書筆記】程序員的思維修煉

程序員的思維修煉 新手階段——新手非常在乎他們能否成功。沒有太多經驗指導他們,他們不知道自己的行爲是對是錯。新手不是特別想要學習,他們只是想實現一個立杆見影的目標。他們不知道如何應付錯誤,所以出錯的時候,他們非常容易慌亂。新手需要指令清單

原创 問題的提出者就是問題的解決者

在運營中,一線人員會發現很多問題,也及時報告給總部了,但這僅僅是跟進的開始。問題提出者應該是問題解決者。也許有些問題是你不能解決的,但是你有責任找到能解決問題的人,跟進問題解決進度,直到解決爲止。這其實需要勇氣和耐心。 如果真的實施問題提

原创 【讀書筆記】新員工的差距是怎樣拉開的

新員工的差距是怎樣拉開的 作者:千田琢哉 1、住在公司附近 2、自我投資比儲蓄更重要 閱讀本行業的專業書籍,聽有聲書,參加研討會,模仿上司和同事的思維方式。 3、要在0.5秒內給出迴應 迴應不在聲高。大聲迴應或回答問題毫無意思,僅僅

原创 【讀書筆記】分佈式Java應用基礎與實踐

CPU消耗分析 a. 上下文切換 每個CPU(或多核CPU中的每核CPU)在同一時間只能執行一個線程,Linux採用的是搶佔式調用。即爲每個線程分配一定的執行時間,當到達執行時間、線程中有IO阻塞或高優先級進程要執行時,Linux將