原创 動態給容器指定 Java 啓動參數

在做 Java 程序容器化時都會遇到一個問題,ENTRYPOINT ["java", "$JAVA_OPTS", "-jar", ...] 這樣的寫法 $JAVA_OPTS 就是個字符串無法在運行時展開。爲了不把參數硬編碼到容器裏,每次調整

原创 Java同步:synchronized解析

問題(1)synchronized的特性?(2)synchronized的實現原理?(3)synchronized是否可重入?(4)synchronized是否是公平鎖?(5)synchronized的優化?(6)synchronized的

原创 Java多線程之Executor框架:Callable、Future、Executor和ExecutorService

引言Executor框架是指JDK 1.5中引入的一系列併發庫中與Executor相關的功能類,包括Executor、Executors、ExecutorService、Future、Callable等。一、爲什麼要引入Executor框架

原创 Java日誌正確使用姿勢

前言 關於日誌,在大家的印象中都是比較簡單的,只須引入了相關依賴包,剩下的事情就是在項目中“盡情”的打印我們需要的信息了。但是往往越簡單的東西越容易讓我們忽視,從而導致一些不該有的bug發生,作爲一名嚴謹的程序員,怎麼能讓這種事情發生呢?所

原创 如何在 Spring 中自定義 scope

大家對於 Spring 的 scope 應該都不會默認。所謂 scope,字面理解就是“作用域”、“範圍”,如果一個 bean 的 scope 配置爲 singleton,則從容器中獲取 bean 返回的對象都是相同的;如果 scope 配

原创 雲安全剖析——數據安全之數據加密

對於存儲在第三方雲平臺上的數據在存儲設備上以及傳輸過程中都會變得透明化,要保證數據安全,最基本的措施是使用公鑰對雲中數據進行加密,接收者使用私鑰對加密的內容進行解密。在多數情況下,雲用戶希望雲服務提供商能爲用戶數據進行加密,以確保他們的數據

原创 系統設計之——架構師職責和設計原則

1.架構師職責 分佈式存儲系統架構師的工作不僅在於整體架構設計,還需要考慮清楚關鍵實現組節,做到即使只有自己一人也可以把系統做出來,只是需要花費更多的時間而已。 架構師的主要工作包括: 1)權衡架構,從多種設計方案中選擇一種與當前團隊能力最

原创 分佈式存儲系統的最佳實踐:系統發展路徑

分佈式存儲系統從整體架構的角度看大同小異,實現起來卻困難重重。自主研發的 分佈式存儲系統往往需要兩到三年才能逐步成熟起來,其中的難點在於如何把系統做穩定。系統開發過程中涉及架構設計、關鍵算法實現、質量控制、團隊成員成長、線上運維、應用合作等