在了解Ebeam框架之前,一直都在使用JPA作為Spring Boot的ORM框架。JPA用起來比較簡單的,對對象的增刪改操作,幾乎完全不需要接觸SQL語句,更適合領域驅動設...
在了解Ebeam框架之前,一直都在使用JPA作為Spring Boot的ORM框架。JPA用起來比較簡單的,對對象的增刪改操作,幾乎完全不需要接觸SQL語句,更適合領域驅動設...
還在單體應用的時候就是分層架構一說,我們用得最多的就是三層架構。而現(xiàn)在已經(jīng)是微服務時代,在微服務架構模型比較常用的有幾個,例如:整潔架構,CQRS(命令查詢分離)以及六邊形架...
前章講了如何進行用戶權限驗證《SpringCloud下的用戶鑒權方案[https://my.oschina.net/barryhome/blog/4532649]》,它是微服...
前一章我們講了《SpringBoot RabbitMQ消息隊列的重試、超時、延時、死信隊列[https://my.oschina.net/barryhome/blog/453...
很久之前在做微服務架構選型的時候就聽說阿里的微服務RPC框架dubbo,當時與Spring Cloud以http協(xié)議調(diào)用的架構做對比。發(fā)現(xiàn)dubbo的rpc框架學習成本較高,...
今天介紹使用SpringBoot實現(xiàn)RabbitMQ消息隊列的高級用法。 MQ安裝 自動創(chuàng)建 消息重試 消息超時 死信隊列 延時隊列 一、RabbitMQ的安裝 眾所周知,R...
上一章講了微服務下的用戶身份認證《SpringCloud Gateway 身份認證》,這次主要講如何進行鑒權。相對上一章的身份認證代碼略有改動 Java下常用的安全框架主要有...
使用SpringCloud技術棧搭建微服務集群,可以選擇的組件比較多,由于有些組件已經(jīng)閉源或停更,這里主要選用spring-cloud-alibaba作為我們的技術棧。 服務...
領域建模是通過識別領域對象與行為來連接與現(xiàn)實世界業(yè)務主體與操作的映射關系。對象與行為的組織設計原則更體現(xiàn)面向對象設計的思想,通過聚合、解耦、抽象、組合等多種設計方式達到系統(tǒng)可...
開發(fā)人員在需求拿到之后,寫代碼前需要對項目進行需求分析和系統(tǒng)設計。一些業(yè)務邏輯和流程較復雜的項目,如何即能快速地抓住重點,清晰理解需求,又能設計出具體擴展性的系統(tǒng)架構呢?答案...
中臺是個啥 中臺是個啥,感覺是一個很復雜的東西。網(wǎng)上很多相關的文章,但好像越說越復雜,并沒有一個統(tǒng)一的定義。我從18年一個阿里背景的到企業(yè)來做項目推廣時第一次聽到中臺一詞?!?..
對于從小廠基層一步一步成長起來的架構師,技術經(jīng)驗不夠全面,如何面對面試大廠時對方提出的自己不會的技術問題呢? 從小廠基層成長起來的架構師,技術經(jīng)驗基本上都是從實踐中獲得。而主...
企業(yè)級微服務架構設計實踐需要從宏觀到微觀層面的思考,主要分為業(yè)務架構、應用架構、技術架構和開發(fā)設計方法論。 一、業(yè)務架構思考 要建設企業(yè)的信息系統(tǒng)首先要明確系統(tǒng)的需求,而要制...
領域事件發(fā)布是一個領域對象為了讓其它對象知道自己已經(jīng)處理完成某個操作時發(fā)出的一個通知,事件發(fā)布力求從代碼層面讓自身對象與外部對象解耦,并減少技術代碼入侵。 一、 手動發(fā)布事件...
在實體建模過程中,有些實體會有多種變形,其中大部分的屬性都是共用的,只有一小部分是特有的。這時較優(yōu)雅的設計是將共用的屬性抽象出來形成基類,實現(xiàn)類再去擴展特有屬性。領域服務可將...
領域驅動設計核心是領域對象識別,一切操作皆是對象,這也是面向對象編程所倡導的。在設計實體屬性時,除了數(shù)據(jù)庫能識別的標準數(shù)據(jù)類型外,也越來越多考慮復合型的對象屬性。讓我們的設計...
對象映射關系分為單向關系和雙向關系,單向關系只在一方對象上存在對方對象,雙向關系是在雙方對象上存在彼此對象。 一、單向關系 在沒有@JoinColumn時,將多增加一個中間關...