原创 一文搞懂什麼是 vlan、三層交換機、網關、DNS、子網掩碼、MAC地址

一、什麼是VLAN VLAN中文是“虛擬局域網”。LAN可以是由少數幾臺家用計算機構成的網絡,也可以是數以百計的計算機構成的企業網絡。VLAN所指的LAN特指使用路由器分割的網絡——也就是廣播域。 聽上面的概念,肯定有不少朋友是一頭霧水的

原创 基於activiti5.22、SpringBoot2開發的流程解決方案,源碼分享

AgileBPM 敏捷工作流開發平臺 業務對象: 由實體(表)組成,支持任意數據結構(關聯關係),可以跨庫來組織業務對象(支持分佈式事務)。而且難以置信的支持N層。 業務表單: 表單完美的支撐了業務對象的展示,並支持豐富的前端組件和字段級

原创 高性能 Netty 之結合 Http 協議應用

經過了這麼多篇文章,其實大家也肯定知道, Netty 主要是在 OSI 七層網絡層的應用層進行數據處理的( 因爲 Socket 是出於傳輸層以上的東西,是應用層與傳輸層的一個抽象層 )。所以肯定明白 Netty 在協議這方面肯定是能夠掌控

原创 SpringSecurity+JWT認證流程解析

紙上得來終覺淺,覺知此事要躬行。 楔子 本文適合: 對Spring Security有一點了解或者跑過簡單demo但是對整體運行流程不明白的同學,對SpringSecurity有興趣的也可以當作你們的入門教程,示例代碼中也有很多註釋。

原创 Spring Cloud動態配置實現原理與源碼分析

實際項目開發中少不了各種配置,如連接數據庫的配置、連接 Redis 集羣的配置等,通常我們也會爲一個項目部署到每個環境準備不同的配置文件,例如測試環境配置連接測試的數據庫。基本上靜態配置就已經滿足日常需求,但是靜態配置缺少靈活性,一經修改

原创 昨天,我徹底搞懂了Netty內存分配策略!

Netty 作爲一款高性能的 RPC 框架必然涉及到頻繁的內存分配銷燬操作。 圖片來自 Pexels 如果是在堆上分配內存空間將會觸發頻繁的 GC,JDK 在 1.4 之後提供的 NIO 也已經提供了直接直接分配堆外內存空間的能力,但是

原创 一篇文章帶你完全瞭解JAVA線程池,再也不用擔心被面試官問了

1.什麼是線程池 線程(thread)是操作系統能夠進行運算調度的最小單位。它被包含在進程之中,是進程中的實際運作單位,我們的程序最終都是由線程進行運作。在Java中,創建和銷燬線程的動作是很消耗資源的,因此就出現了所謂“池化資源”技術。

原创 JVM——垃圾回收——垃圾回收器

垃圾收集器沒有在規範中進行過多的規定,可以由不同的廠商、不同版本的JVM來實現。 由於JDK的版本處於高速迭代過程中,因此Java發展至今已經衍生了衆多的GC版本。 從不同角度分析垃圾收集器,可以將GC分爲不同的類型。 按線程數分,可以分

原创 NIO入門,看這篇文章就夠了

思維導圖       學如逆水行舟,不進則退 1 NIO概述 1.1 定義 java.nio全稱java non-blocking IO,是指JDK1.4 及以上版本里提供的新api(New IO) ,爲所有的原始類型(boolea

原创 Java進階架構師之如何畫好架構圖?阿里大神手把手教你

技術傳播的價值,不僅僅體現在通過商業化產品和開源項目來縮短我們構建應用的路徑,加速業務的上線速率,也體現在優秀工程師在工作效率提升、產品性能優化和用戶體驗改善等經驗方面的分享,以提高我們的專業能力。   本文作者阿里巴巴技術專家三畫,

原创 被迫重構代碼,這次我幹掉了噁心的 if-else

最近公司貌似融到資了!開始發了瘋似的找渠道推廣,現在終於明白爲啥前一段大肆的招人了,原來是在下一盤大棋,對員工總的來看是個好事,或許是時候該跟boss提一提漲工資的話題了。 不過,漲工資還沒下文,隨之而來的卻是一車一車的需求,每天都有新渠

原创 面試官:小夥子,你給我說一下你對MySQL索引的理解吧

一、索引是什麼? 索引是幫助MySQL高效獲取數據的數據結構。 二、索引能幹什麼? 索引非常關鍵,尤其是當表中的數據量越來越大時,索引對於性能的影響愈發重要。索引能夠輕易將查詢性能提高好幾個數量級,總的來說就是可以明顯的提高查詢效率。 三

原创 日常 Explain SQL,慢慢就懂得SQL調優了

Explain有什麼用 當Explain 與 SQL語句一起使用時,MySQL 會顯示來自優化器關於SQL執行的信息。也就是說,MySQL解釋了它將如何處理該語句,包括如何連接表以及什麼順序連接表等。 表的加載順序 sql 的查詢類

原创 關於JVM,你需要掌握這些!!

最近,一直有小夥伴讓我整理下關於JVM的知識,經過十幾天的收集與整理,初版算是整理出來了。希望對大家有所幫助。 JDK 是什麼? JDK 是用於支持 Java 程序開發的最小環境。 Java 程序設計語言 Java 虛擬機 Ja

原创 拜託,面試別再問我搶紅包概率了!!!

一個拼手氣紅包,N個人搶,如何快速實現? 答:發時計算,搶時分配: (1)發紅包的時候,一次計算,提前分好; (2)搶的時候,一個一個領走; 此時,每個人搶到大包和小包的概率是相同的,整體具備公平性。   有沒有可能,搶一次計算一次,搶一