原创 微服務保障數據一致性的模式 一致性問題實例 解決一致性問題的模式和思路 微服務保證最終一致性的模式

在之前的文章中,我們介紹了煙囪式到SOA再到微服務以及 從平臺到中臺:企業IT架構轉型之道兩篇文章,這裏繼續瞭解和介紹微服務。 一致性問題實例 案例1:下訂單和扣庫存 如果先下訂單,扣庫存失敗,那麼會導致超賣。反之會導致少賣。兩種情況

原创 深入理解JVM 類加載機制 類執行機制 內存回收

之前我們文章提到過反射,說的比較淺顯,我們這裏來理解JVM。 一個標準的JVM是這樣的 JVM負責裝載class文件並執行,我們首先來了解類加載和執行的機制。 類加載機制 JVM將.class文件加載到JVM,並形成Class對象,之後

原创 分佈式服務架構設計概述 分佈式服務框架設計架構原理

分佈式服務框架設計架構原理 通常,分佈式服務框架的架構可以抽象爲三層: RPC層:包括底層通信框架(例如NIO框架的封裝、公有協議的封裝等)、序列化和反序列化框架、用於屏蔽底層通信協議細節和序列化方式差異的Remoting框架。 Fi

原创 歸納演繹出的世界觀 “歸納”和“演繹”方法 談“相信”

題目略有寫寬泛,剛讀完《世界觀》第一部分的內容,信息量有點大,迫切需要寫篇讀書筆記理清思路。 “歸納”和“演繹”方法 什麼是歸納(Inductive)和演繹(Deductive)? 很多對於歸納、演繹的觀點都是錯誤的,錯誤的以爲兩者是對

原创 遠程調用服務(RPC)和基於消息的通信(Message Queue)對比 系統結構 功能特點 應用

系統結構 RPC Message Queue 調用方式 Consumer <=> Provider Sender <=> Queue <=> Receiver 調用對象 Consumer調用的Provider提供的服務。

原创 從Ajax到WebSocket 解決方案1:頻繁輪詢 解決方案2:長輪詢 解決方案3: 分塊編碼 解決方案4: Applet和Adobe Flash

當需要前端頻繁的請求後端數據的時候,比如說數據的實時顯示,這種情況下產生問題的核心原因是:服務器知道數據什麼時候更新,但瀏覽器不知道。 這種情況下,即使對於強大的Ajax,也是一個難以解決的問題。 解決方案1:頻繁輪詢 當我們手中只有aja

原创 JVM線程資源同步及交互機制 線程資源同步機制 線程交互機制 SpringMVC怎麼保障線程安全的?

Java程序採用多線程來支持大量併發。尤其是在多核或者多CPU系統中,多線程執行程序帶來的最明顯的問題是線程之間同步管理的資源競爭以及線程交互的問題。 JVM的線程實現及其調度方式(搶佔、協作)取決於操作系統,不在本文贅述。 線程資源同步機

原创 在黃金時代平凡的活着就好

從杭州回來已經一個月了,陸陸續續看了幾本書,今晚聽着電臺的時候細細回味了一下,才發現自己已經從文學中把中國現代史給過了幾遍。說說看我讀的其中三本書吧,分別是王小波的《黃金時代》、餘華的《活着》以及路遙的《平凡的世界》。三種風格迥異的書,三位

原创 《魔童降世》影評——從封神演義談到宿命

今日看完魔童降世中的哪吒,不得不稱讚這次改編很精妙,也不得不說編劇的三觀很正。 哪吒在我們大多數人的心中可能是純真無害的小孩子,生來便擁有法寶乾坤圈和混天綾,得遇名師太乙真人,修得神通三頭六臂,堅持正義,幫助武王伐紂,滅石嘰,最後肉身(蓮花

原创 微服務保障數據一致性的模式

在之前的文章中,我們介紹了煙囪式到SOA再到微服務以及 從平臺到中臺:企業IT架構轉型之道兩篇文章,這裏繼續瞭解和介紹微服務。 一致性問題實例 案例1:下訂單和扣庫存 如果先下訂單,扣庫存失敗,那麼會導致超賣。反之會導致少賣。兩種情況

原创 JVM線程資源同步及交互機制

Java程序採用多線程來支持大量併發。尤其是在多核或者多CPU系統中,多線程執行程序帶來的最明顯的問題是線程之間同步管理的資源競爭以及線程交互的問題。 JVM的線程實現及其調度方式(搶佔、協作)取決於操作系統,不在本文贅述。 線程資源同步機

原创 遠程調用服務(RPC)和基於消息的通信(Message Queue)對比

系統結構 RPC Message Queue 調用方式 Consumer <=> Provider Sender <=> Queue <=> Receiver 調用對象 Consumer調用的Provider提供的服務。

原创 分佈式服務架構設計概述

分佈式服務框架設計架構原理 通常,分佈式服務框架的架構可以抽象爲三層: RPC層:包括底層通信框架(例如NIO框架的封裝、公有協議的封裝等)、序列化和反序列化框架、用於屏蔽底層通信協議細節和序列化方式差異的Remoting框架。 Fi

原创 深入理解JVM

之前我們文章提到過反射,說的比較淺顯,我們這裏來理解JVM。 一個標準的JVM是這樣的 JVM負責裝載class文件並執行,我們首先來了解類加載和執行的機制。 類加載機制 JVM將.class文件加載到JVM,並形成Class對象,之後

原创 從Ajax到WebSocket

當需要前端頻繁的請求後端數據的時候,比如說數據的實時顯示,這種情況下產生問題的核心原因是:服務器知道數據什麼時候更新,但瀏覽器不知道。 這種情況下,即使對於強大的Ajax,也是一個難以解決的問題。 解決方案1:頻繁輪詢 當我們手中只有aja