原创 DDD落地實踐 複雜性的挑戰 設計過程與開發過程 運用領域模型 消化知識 DDD 領域驅動設計學習(三)- 領域事件 DDD戰略設計 DDD中問題空間和解決方案空間是一個僞命題

DDD 至少30年以前,一些軟件設計人員就已經意識到領域建模和設計的重要性,並形成一種思潮,Eric Evans將其定義爲領域驅動設計(Domain-Driven Design,簡稱DDD)。在互聯網開發“小步快跑,迭代試錯”的大環境下,D

原创 window 環境變量配置正確,但不能正常使用? JAVA_HOME path 配置 JAVA 運行報錯 解決方案

JAVA_HOME HARRY@DESKTOP-0B5KHBS MINGW64 ~ $ echo $JAVA_HOME C:\Program Files\Java\jdk1.8.0_333 path 配置 MINGW64 ~ $ ech

原创 Linux IO調度(電梯算法) 磁盤IO的基礎原理 Linux IO調度(電梯算法) IO調度配置 總結 參考文章

磁盤IO的基礎原理 磁盤的組成 一塊機械硬盤是由盤面、磁頭和懸臂三個部件組成的。 盤面:是實際存儲數據的盤片。盤面上有一層磁性的塗層。數據就存儲在這個磁性的塗層上。 盤面中間有一個受電機控制的轉軸。這個轉軸會控制盤面去旋轉。與盤面有關

原创 ParallelRefProcEnabled Ref Proc: 229ms+Dubbo 參數優化 GC日誌分析 DUMP. 內存分析

參數優化 -Xmx15G -Xms15G -XX:MaxDirectMemorySize=5G -XX:+UnlockExperimentalVMOptions -XX:G1NewSizePercent=5 -XX:G1RSet

原创 redis-pub-sub

redis的Pub/Sub機制類似於廣播架構,Subscriber相當於收音機,可以收聽多個channel(頻道),Publisher(電臺)可以在channel中發佈信息。 架構 示例 優缺點 數據可靠性無法保證(無msg id

原创 授權接口設計

說明 實現基本功能 登錄token簽名 用戶身份認證(驗籤) 資源訪問權限授權 不限於具體技術,支持Shiro+JWT實現,也可以自己實現,框架提供自實現抽象類(最少依賴) https://github.com/sparrowzoo/s

原创 導致該情況中止原因爲垃圾對象沒有達到閥值 5%,不啓動Mixed。 現有JVM 參數 GC日誌截圖分析 結論

報警名稱: intelligent-rec Exceptions_OutOfMemoryError_Error 現有JVM 參數 `-Xmx20G -Xms20G ` -XX:MaxDirectMemorySize=5G -XX:+Un

原创 REDIS客戶端封裝意淫

先拋出來一個問題? redis 本身有客戶端,爲什麼要對redis客戶端進行二次封裝? 大概在11年時侯,第一次接觸redis,那時侯研究過redis的各種數據結構,直接拿redis的客戶端jedis直接用。公司安排人要對jedis進行封

原创 DDD 戰術設計開源實踐 DDD 複雜性的挑戰 設計過程與開發過程 運用領域模型 DDD與架構 DDD整潔架構實踐 縱向DGA架構設計 關於DDD戰術設計的一些細節問題 代碼落地

DDD 至少30年以前,一些軟件設計人員就已經意識到領域建模和設計的重要性,DDD這一名詞,由埃裏克·埃文斯(Eric Evans)在2003發表的《領域驅動設計》一書提出。這本書理論性極強,奠定了領域驅動設計這一綜合性軟件設計理論的基礎。

原创 Check style & code style 強制你遵循編碼規範 爲什麼:統一代碼規範的必要性 怎麼做 具體操作步驟 使用說明 相關官方說明文檔

爲什麼:統一代碼規範的必要性 不同的小組\同學,採用不同的代碼格式規範,導致每次 format 代碼,都有大量的變化,review 代碼時,引入很多幹擾項。 目標:統一代碼格式規範,保證 format 代碼時,不會引入格式上的干擾,提升小組

原创 dubbo 基類對象無法注入問題 CASE

CASE 基類 import com.alibaba.dubbo.config.annotation.Reference; import com.abci.IAbtDispacherService; public abstract cl

原创 zkServer.sh: line 174: -e ~/pid/zookeeper/zookeeper_server.pid: No such file or directory 詳細解決方案

#!/usr/bin/e # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. Se

原创 圖解- 牛頓迭代法求平方根

#!/usr/bin/env python import matplotlib.pyplot as plt import numpy as np x1 = np.linspace(-32, 32, 256) t1 = 2 * x1 #

原创 AB-TEST

流量正交 對與分層實驗有個很重要的點就是每一層用完的流量進入下一層時,一定均勻的重新分配。圖中的箭頭展示的很清晰,第一層中每個實驗的流量會重新分組進入到第二層中的每個試驗中。所以整個流量有一個分散,合併,再分散的過程,保證第二層中的每個實驗

原创 -Djava.util.Arrays.useLegacyMergeSort=true 兼容排序問題

java.lang.IllegalArgumentException: Comparison method violates its general contract! at java.util.TimSort.mergeHi(TimSor