原创 快!別錯過,想要深入理解分佈式事務,看這篇就足矣! 導讀概述 分佈式理論 Seata 分佈式事務 seata分佈式事務常見問題 後記

導讀概述 隨着業務的快速發展,業務複雜度越來越高,大部分互聯網公司幾乎都會從單體走向分佈式,特別是轉向微服務架構,隨之而來就必然遇到分佈事務這個難題。 本文主要介紹一下Seata是如何保證數據一致性的,將從以下幾個方面介紹一下分佈式實現

原创 你知道什麼叫金絲雀分佈嗎?你知道如何在Service Mesh微服務架構中實現嗎?

什麼是金絲雀發佈 既然要聊具體的實現,那麼在開始之前,先科普下什麼是“金絲雀發佈”。金絲雀發佈也叫“灰度發佈”,具體來說就是在發佈線上版本時,先將少量的生產流量打到服務的新版本,以驗證新版本的準確性和可靠性,待發布的新版本得到線上流量的全

原创 三分鐘帶你初步瞭解Service Mesh開源實現之Istio架構

Istio中的關鍵概念 要學習Istio需要先明確以下幾個關鍵術語。 1.容器/容器鏡像 進入到雲原生時代的服務網格架構,應用的發佈、部署都是圍繞Kubernetes爲代表的容器基礎設施展開的。這就需要對容器及容器鏡像的概念有清晰的理解。

原创 你知道近來年大火的DDD是如何興起的嗎?以及與微服務的關係

DDD爲什麼能火起來? 我們先不討論DDD的定義,先梳理一下DDD火起來的背景,根據我學習的套路,永遠是爲什麼爲先,再是解決什麼問題,是什麼東西,最後如何使用。我們都知道這些年隨着設備以及技術的發展,軟件架構發生了很多變化,從最初的單機(

原创 簡述Kubernetes容器日誌收集原理!

概述 關於容器日誌 Docker的日誌分爲兩類,一類是Docker引擎日誌;另一類是容器日誌。引擎日誌一般都交給了系統日誌,不同的操作系統會放在不同的位置。本文主要介紹容器日誌,容器日誌可以理解是運行在容器內部的應用輸出的日誌,默認情況下

原创 風水輪流轉,三年前因遲到被主管罵退,三年後我竟面試了我的主管

都說三十年河東,三十年河西,一時運氣不好不要緊,風水輪流轉,總有一天好運會轉到自己頭上。 一個被幸運之神眷顧的網友就分享了自己的經歷:曾經當過一個產品組組長,組裏有5名小夥伴,跟大家相處很好。有一天自己上班遲到了25分鐘,被上級當着組內所有

原创 必收藏乾貨!Kubernetes集羣搭建超詳細總結(CentOS版)

學習Kubernetes的關鍵一步就是要學會搭建一套k8s集羣。在今天的文章中作者將最近新總結的搭建技巧,無償分享給大家!廢話不多說,直接上乾貨! 01、系統環境準備 要安裝部署Kubernetes集羣,首先需要準備機器,最直接的辦法可以

原创 北大女生逼迫男友996被拒,女生卻說:996是給年輕人上升的機會!

女朋友想通過996成爲人上人,男朋友卻不願意996,到底誰錯了? 近日,一篇名爲“男朋友不願意996,到底誰錯了”的帖子引發網友熱議。這篇帖子是一個北大女生髮的,稱自己和北大的男朋友都是“普通人”、“小鎮做題家”,因爲工作問題發生了爭執。男

原创 你知道爲什麼要選擇B+樹作爲數據庫索引結構?談談你的理解

背景 首先,來談談B樹。爲什麼要使用B樹?我們需要明白以下兩個事實: 【事實1】 不同容量的存儲器,訪問速度差異懸殊。以磁盤和內存爲例,訪問磁盤的時間大概是ms級的,訪問內存的時間大概是ns級的。有個形象的比喻,若一次內存訪問需要1秒,則

原创 在數據庫分庫分表之後,你該如何解決事務問題?

一、概述 隨着時間和業務的發展,數據庫中表的數據量會越來越大,相應地,數據操作,增刪改查的開銷也會越來越大。因此,把其中一些大表進行拆分到多個數據庫中的多張表中。 本篇文章是基於非事務消息的異步確保的方式來完成分庫分表中的事務問題。 二、

原创 Netty面試常駐題:你知道Netty的零拷貝機制嗎?

理解零拷貝 零拷貝是Netty的重要特性之一,而究竟什麼是零拷貝呢?WIKI中對其有如下定義: "Zero-copy" describes computer operations in which the CPU does not pe

原创 中高級面試常駐題:簡單說下Java面向對象設計的六大原則

這篇文章主要講的是面向對象設計中,我們應該遵循的六大原則。只有掌握了這些原則,我們才能更好的理解設計模式。我們接下來要介紹以下6個內容。 單一職責原則——SRP 開閉原則——OCP 裏式替換原則——LSP 依賴倒置原則——DIP 接口隔

原创 你真的懂併發嗎?談談對JUC線程池ThreadPoolExecutor的認識吧

前提 很早之前就打算看一次JUC線程池ThreadPoolExecutor的源碼實現,由於近段時間比較忙,一直沒有時間整理出源碼分析的文章。之前在分析擴展線程池實現可回調的Future時候曾經提到併發大師Doug Lea在設計線程池Thr

原创 Java序列化素質三連:是什麼?爲什麼需要?如何實現?

遇到這個 Java Serializable 序列化這個接口,我們可能會有如下的問題 什麼叫序列化和反序列化 作用,爲啥要實現這個 Serializable 接口,也就是爲啥要序列化 serialVersionUID 這個的值到底是在怎

原创 Java四種引用類型原理你真的搞明白了嗎?五分鐘帶你深入理解!

Java中一共有4種引用類型(其實還有一些其他的引用類型比如FinalReference):強引用、軟引用、弱引用、虛引用。 其中強引用就是我們經常使用的Object a = new Object(); 這樣的形式,在Java中並沒有對應