原创 Java 開發者福利:aliyun java initializr和Cloud Toolkit

今天給大家分享2個國產優秀的開源工具,aliyun java initializr(spring腳手架)和Cloud Toolkit (idea plugin),工具是個好東西,比如PanDownload,可以讓你在百度雲盤上快速裸奔。

原创 spring5的那些事:@Indexed 解密

隨着雲原生的發展,很多技術會被重新掂量,重新定義,歷來技術的發展也是遵循天時地利,以其勢盡享其利。再雲原生下,jdk的最大的問題在於笨重(幾百mb),啓動慢,而像Serverless架構,NodeJS技術棧可謂更完美。其實在jdk9中倡導

原创 spring core:@Component的派生性

spring對註解的拓展,早已超越J2EE的規約。通過註解可以實現其派生性(Annotation Hierarchy)。自從spring2.5開始,每個大版本都對其進行了增強。 何爲派生? 沒錯一般能想到的就是屬性派生,直接上代碼,其實P

原创 spring core:@AliasFor的派生性

spring對Annotation的派生性應用可謂爐火純青,在spring core:@Component的派生性講過支持層次上派生性,而屬性上派生的需求則藉助了@AliasFor,它是從spring4.2中開始支持的。 @AliasFo

原创 暢談Java模塊化與微服務

微服務這2年的發展太熱門了,這陣勢很容易導致開發者一葉障目,首先微服務是需要一些技術沉澱的,其次和業務體量、開發團隊的規模有關,這裏不展開探討微服務之殤。業務的複雜度繼續堆積猶如潘多拉魔盒,本文將從依賴、模塊化的視角來展開探討。提前模塊化

原创 選 Zookeeper 作爲註冊中心我們還要注意些什麼

Zookeeper是一個分佈式協調框架,而在它的基本用法在上一節講過了,很多同學可能會Zookeeper這麼好,直接做微服務的註冊中心也沒啥問題的,其實關於這樣點社區裏也喋喋不休,幾乎在dubbo的每屆大會中有大篇幅的講解。接下來將針對大

原创 再談DDD和Microservices

面對高複雜度的時候我們會做關注點分離,這是一個最基本的哲學原則。 技術維度分離,類似MVC這樣的分層思想是我們廣泛接受的 業務維度分離,根據不同的業態來劃分系統,比如按售前、銷售、售後劃分 微服務的架構更強調從業務維度的關注點分離來應對高

原创 fastDFS精講

在一般大中型的企業對文件的存儲需求多種多樣,特別是在容器化技術非常流行的時代下,依然有很多采用fastDFS,Distributed file system, DFS,又叫做網絡文件系統,Network File System。一種允許文

原创 雲原生下的應用系統配置變更管理:confd

雲原生下,所有非容器化的應用系統都要思考,是繼續將就還是講究。個人感覺雲原生下,很多很多的技術標準及規約將重新被定義,重新定義會將分佈式應用各個環節重新標準化,對依賴做到更透明,低侵入甚至是無侵入。 回到主題,confd是阿里的Nacos

原创 Netty 4.0中的那些變化

Netty 是最優秀的NET庫,每個大版本的一些特性都會引入注目,本文帶你瞭解重溫Netty 4.0的值得注意的改變和新特性,幫助你將應用程序從老的Netty3遷移到最新的版本上。翻譯自官方文檔New and noteworthy in

原创 關於ElasticSearch的Update By Query的那些著名的坑

提起es的Update By Query很多人一定也不陌生,它對應的就是關係型數據庫的update set ... where...語句,這對應一般的存儲引擎而言算是最基本的功能,但它的坑確不少,多到讓你使用起來很奔潰,比如批量更新時非事

原创 elasticsearch實踐篇:跨表join查詢補充篇

在上一篇elasticsearch實踐篇:跨表join查詢中講過2種方式,其實並不全面。ES還有2種方法來處理數據實體間的關聯關係:Nested objects(嵌套文檔)和Parent/child relationships(父子文檔)

原创 大話Redis主從同步

最近在整理一些之前面試過程中遇到比較有意思的話題,寫出來其實更多的是爲了拋磚引玉,觸發你對它深度思考。如果你也無法get到面試官對Redis主從同步方面的關注點,那這篇文章足以引起你鼻腔的共鳴。Redis主從同步很多人不太熟悉甚至避而不談

原创 spring boot中如何啓動tomcat或jetty的

最近面試中會聊到這個話題,說實話之前已經做過大量spring boot源碼級的分享,如果你在之前看過Spring Boot 容器啓動原理揭祕,想必已經有了一個大概的認識。啓動tomcat或jetty其實也跳不出這個套路,或者講它僅僅是其中

原创 Spring Boot 訪問安全之認證和鑑權

在web應用中有大量場景需要對用戶進行安全校,一般人的做法就是硬編碼的方式直接埋到到業務代碼中,但可曾想過這樣做法會導致代碼不夠簡潔(大量重複代碼)、有個性化時難維護(每個業務邏輯訪問控制策略都不相同甚至差異很大)、容易發生安全泄露(有些