<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[分享开发、架构设计、容器、云原生、大数据、人工智能等等]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/vbnetfun</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; vbnetfun]]></copyright><item><title><![CDATA[Spring Security开发实践]]></title><link>https://blog.csdn.net/vbnetfun/article/details/128451684</link><guid>https://blog.csdn.net/vbnetfun/article/details/128451684</guid><author>vbnetfun</author><pubDate>Tue, 27 Dec 2022 09:18:57 +0800</pubDate><description><![CDATA[从零开始详细介绍了Spring Security的工作原理和开发实践过程，包括基于内存和数据库的用户认证、自定义用户认证、基于URL地址和访问级别的授权、密码编码、加密模块、默认过滤器链、自定义过滤器、自定义认证和动态授权的开发实践、自定义异常处理、单元测试、自定义登录和登出页面等等。]]></description><category></category></item><item><title><![CDATA[Redis 7.x 入门和开发实战]]></title><link>https://blog.csdn.net/vbnetfun/article/details/126798225</link><guid>https://blog.csdn.net/vbnetfun/article/details/126798225</guid><author>vbnetfun</author><pubDate>Sat, 10 Sep 2022 17:58:04 +0800</pubDate><description><![CDATA[Redis 7.x 入门和开发实战-技术专栏通过基础知识介绍入门-环境搭建-项目开发实践，让初学者快速掌握Redis。内部包括分布式缓存组件Redis 7.x的安装配置部署、基本数据类型、常用命令、操作实践、HyperLoglog数据结构、事务、慢日志分析、Redis 集成 Spring Boot的开发实践、Redis 集群模式、布隆过滤器等等。]]></description><category></category></item><item><title><![CDATA[RedisInsight ：Redis 官方可视化工具使用入门]]></title><link>https://blog.csdn.net/vbnetfun/article/details/126577414</link><guid>https://blog.csdn.net/vbnetfun/article/details/126577414</guid><author>vbnetfun</author><pubDate>Mon, 29 Aug 2022 08:21:49 +0800</pubDate><description><![CDATA[RedisInsight是Redis官方出品的可视化管理工具，可用于设计、开发、优化你的Redis应用。支持深色和浅色两种主题，界面非常炫酷。可支持String、Hash、Set、List、JSON等多种数据类型的管理，同时支持远程使用CLI 功能，功能非常强大。...]]></description><category></category></item><item><title><![CDATA[Hadoop v3.1 大数据技术快速入门]]></title><link>https://blog.csdn.net/vbnetfun/article/details/125170180</link><guid>https://blog.csdn.net/vbnetfun/article/details/125170180</guid><author>vbnetfun</author><pubDate>Tue, 07 Jun 2022 17:46:01 +0800</pubDate><description><![CDATA[通过理论讲解-环境搭建-项目案例实战，让初学者快速掌握hadoop大数据技术栈，包括HDFS、MapReduce、YARN、HBase、Hive等等。]]></description><category></category></item><item><title><![CDATA[《Apache RocketMQ 深入浅出》系列文章]]></title><link>https://blog.csdn.net/vbnetfun/article/details/124511612</link><guid>https://blog.csdn.net/vbnetfun/article/details/124511612</guid><author>vbnetfun</author><pubDate>Sat, 30 Apr 2022 13:17:50 +0800</pubDate><description><![CDATA[欢迎关注《Apache RocketMQ 深入浅出》系列文章，架构师将循序渐进地讲解Apache RocketMQ的开发实践。
]]></description><category></category></item><item><title><![CDATA[Elasticsearch 8 快速入门和开发实践]]></title><link>https://blog.csdn.net/vbnetfun/article/details/123643757</link><guid>https://blog.csdn.net/vbnetfun/article/details/123643757</guid><author>vbnetfun</author><pubDate>Mon, 21 Mar 2022 19:39:40 +0800</pubDate><description><![CDATA[专栏中首先快速体验Elasticsearch、Kibana、Metricbeat、Logstash 等组件功能；然后进行索引CRUD、DSL搜索查询和聚合查询、索引模板和组件模板、索引生命周期（ILM）策略、数据流（Data Stream）等操作实践；最后讲解 Spring Boot 和 Elasticsearch REST API 应用开发。帮助开发人员快速掌握 Elasticsearch 分布式的开源搜索和分析引擎、以及基于Elasticsearch REST API 的应用开发实践。]]></description><category></category></item><item><title><![CDATA[Kafka v2.3 快速入门与实践]]></title><link>https://blog.csdn.net/vbnetfun/article/details/123586026</link><guid>https://blog.csdn.net/vbnetfun/article/details/123586026</guid><author>vbnetfun</author><pubDate>Fri, 18 Mar 2022 22:28:14 +0800</pubDate><description><![CDATA[消息队列应用场景：应用解耦、异步消息、流量削峰等问题，实现高性能、高可用、可伸缩和最终一致性架构。

Kafka是由LinkedIn开发的一个分布式的消息系统，可独立部署在单台服务器上，也可部署在多台服务器上构成集群。它提供了发布与订阅功能。用户可以发送数据到Kafka集群中，也可以从Kafka集群中读取数据。Kafka使用Scala编写，它以可水平扩展和高吞吐率而被广泛使用。





目前越来越多的开源分布式处理系统如Storm，Spark，Flink都支持与Kafka集成。现在我们的数据实时处理平台.]]></description><category></category></item><item><title><![CDATA[一步一步编译最新版Apache Doris 0.15版本的详细过程]]></title><link>https://blog.csdn.net/vbnetfun/article/details/121714529</link><guid>https://blog.csdn.net/vbnetfun/article/details/121714529</guid><author>vbnetfun</author><pubDate>Sat, 04 Dec 2021 13:29:12 +0800</pubDate><description><![CDATA[Apache Doris 于 2021 年 11 月 29 日迎来了 0.15.0 Release 版本的正式发布！有 99 位 Contributor 为 Apache Doris 提交了近 700 项优化和修复。在 0.15.0 Release 版本中，增加了诸多新功能，对 Apache Doris 的查询性能、易用性、稳定性方面等进行了全面优化。

本文将详细演示如何一步一步完成编译最新版Apache Doris 0.15版本。]]></description><category></category></item><item><title><![CDATA[COLA 4.x和DDD项目实践精粹]]></title><link>https://blog.csdn.net/vbnetfun/article/details/121045066</link><guid>https://blog.csdn.net/vbnetfun/article/details/121045066</guid><author>vbnetfun</author><pubDate>Sat, 30 Oct 2021 00:03:08 +0800</pubDate><description><![CDATA[在《COLA 4.x架构入门和项目实践》专栏基础之上，对项目开发实践进行了提炼和总结；同时，针对其中的一些知识点进行扩展和延伸。



专栏介绍

领域驱动设计（Domain Driven Design - DDD）起源于2003年Eric Evans出版《领域驱动设计》。



领域驱动设计DDD最大的好处是将业务语义显现化，把原先晦涩难懂的业务算法逻辑，通过领域对象、统一语言将领域概念清晰的显性化表达出来。



如果整个系统都采用DDD进行领域建模，不仅代码的可读性和系统的可维护性会大大提升，系统之间]]></description><category></category></item><item><title><![CDATA[Java实体映射工具MapStruct 与BeanUtils性能比较]]></title><link>https://blog.csdn.net/vbnetfun/article/details/120604322</link><guid>https://blog.csdn.net/vbnetfun/article/details/120604322</guid><author>vbnetfun</author><pubDate>Mon, 04 Oct 2021 15:23:23 +0800</pubDate><description><![CDATA[本文通过一个简单的示例代码，比较MapStruct和BeanUtils的性能数据，实测一下性能到底有多大的差距。关于MapStruct工具的详细介绍可以参考《Java实体映射工具MapStruct详解》技术专栏，提供完整示例项目代码下载。



MapStruct属于在编译期，生成调用get/set方法进行赋值的代码，生成对应的Java文件。在编译期间消耗少许的时间，换取运行时的高性能。



一、创建测试应用

如图所示，创建测试应用performance-test，用于测试StudentDto对象和St]]></description><category></category></item><item><title><![CDATA[阿里DDD项目最佳实践-COLA 架构总览]]></title><link>https://blog.csdn.net/vbnetfun/article/details/120401877</link><guid>https://blog.csdn.net/vbnetfun/article/details/120401877</guid><author>vbnetfun</author><pubDate>Tue, 21 Sep 2021 15:16:57 +0800</pubDate><description><![CDATA[DDD分层架构、六边形架构、洋葱圈架构、以及 COLA 架构的核心职责就是要做核心业务逻辑和技术细节的分离和解耦。



在架构思想上，COLA 主张像六边形架构那样，使用端口-适配器去解耦技术细节；主张像洋葱圈架构那样，以领域为核心，并通过依赖倒置反转领域层的依赖方向。最终形成如下图所示的组件关系。





换一个视角，从 COLA 应用处理响应一个请求的过程来看。COLA 使用了 CQRS 来分离命令和查询的职责，使用扩展点和元数据来提升应用的扩展性。整个处理流程如下图所示：



《COLA 4..]]></description><category></category></item><item><title><![CDATA[Java实体映射工具MapStruct详解]]></title><link>https://blog.csdn.net/vbnetfun/article/details/120390035</link><guid>https://blog.csdn.net/vbnetfun/article/details/120390035</guid><author>vbnetfun</author><pubDate>Mon, 20 Sep 2021 12:34:39 +0800</pubDate><description><![CDATA[在软件架构中，分层式结构是最常见，各层之间有其独立且隔离的业务逻辑，也因而各层有自己的输入输出对象，也就是代码中见到各种对象，如DO（Data Object）、DTO、Domain Entity（领域实体），这些数据对象之间通常都有很多相同或相近的属性对象，数据在传输的过程中从一个对象到另一个对象，就通常需要赋值，从最初的的getter/setter到后来的BeanUtils（减少了setter的代码量），再到现在的MapStruct。



目前的转换器有很多种，根据网上的性能压测数据来看，JMapper]]></description><category></category></item><item><title><![CDATA[领域模型的核心本质是什么？]]></title><link>https://blog.csdn.net/vbnetfun/article/details/120234046</link><guid>https://blog.csdn.net/vbnetfun/article/details/120234046</guid><author>vbnetfun</author><pubDate>Sat, 11 Sep 2021 10:20:19 +0800</pubDate><description><![CDATA[在指导软件设计时，我们需要对业务知识进行提炼和精简，建立一个所谓的模型来指导设计开发。而 DDD 的真正价值就是在描述该如何建立这个能够指导开发的 "领域模型"。Domain-Driven Design 其实是一种简称，其真正想表达的是 Domain Model Driven Design，即领域模型驱动设计。





领域模型并不是某个模型图，而是这种图所要传达的思想。也就是说，领域模型并不拘泥于形式，重要的是它能够传递经过提炼后的业务知识的抽象与精炼。它可以是一幅图，也可以是一段代码，甚至可以是一句.]]></description><category></category></item><item><title><![CDATA[基于阿里开源的COLA架构和DDD领域驱动设计构建货物运输系统]]></title><link>https://blog.csdn.net/vbnetfun/article/details/120220078</link><guid>https://blog.csdn.net/vbnetfun/article/details/120220078</guid><author>vbnetfun</author><pubDate>Fri, 10 Sep 2021 13:23:21 +0800</pubDate><description><![CDATA[COLA 是 Clean Object-Oriented and Layered Architecture的缩写，代表“整洁面向对象分层架构”，是来自阿里技术专家的开源项目。目前COLA已经发展到COLA 4.0。

COLA既是框架，也是架构。COLA架构融合了常见的DDD代码模型，可以帮助开发人员快速实践并落地DDD领域建模的应用项目。



货物运输系统（Cargo Tracker Application）是领域驱动设计（DDD）的经典示例。Eric Evans（DDD之父）在他的书中引入了货物运输系]]></description><category></category></item><item><title><![CDATA[领域驱动设计DDD中领域模型到底是什么？]]></title><link>https://blog.csdn.net/vbnetfun/article/details/120007710</link><guid>https://blog.csdn.net/vbnetfun/article/details/120007710</guid><author>vbnetfun</author><pubDate>Mon, 30 Aug 2021 23:22:21 +0800</pubDate><description><![CDATA[DDD中的模型是指体现出应用系统的业务逻辑和状态的对象，是从具体业务（或领域）中提取出来的，因此又叫做领域模型。领域建模的输出是领域模型，领域模型是比自然语言更清晰的描述方式，以图形化的方式组织各种概念，有助于人对复杂信息的理解。



领域模型是对领域内的概念类或现实世界中对象的可视化表示。又称概念模型、领域对象模型、分析对象模型。它专注于分析问题领域本身，发掘重要的业务领域概念，并建立业务领域概念之间的关系。



没有所谓唯一正确的领域模型。所有模型都是我们对试图要理解的领域的近似表示。领域模型主要是]]></description><category></category></item><item><title><![CDATA[Axon框架快速入门和DDD项目实践]]></title><link>https://blog.csdn.net/vbnetfun/article/details/119811404</link><guid>https://blog.csdn.net/vbnetfun/article/details/119811404</guid><author>vbnetfun</author><pubDate>Thu, 19 Aug 2021 21:28:10 +0800</pubDate><description><![CDATA[Axon 框架是基于JVM平台的开源产品，由Allard Buijze于2009年创立。2017年7月，成立了一家独立公司AxonIQ，专门与Axon产品合作。

Axon 框架的程序遵循基于领域驱动设计（DDD）思想、命令查询职责分离 （CQRS）、事件驱动架构（Event Driven Architecture，EDA）的架构模式。这些原则的结合，使基于Axon的应用程序更加健壮、适应性更强。

本专栏基于Axon开源框架、DDD领域驱动设计思想、CQRS读写分离和事件溯源（Event Sourcing]]></description><category></category></item><item><title><![CDATA[Java程序员的macOS手册]]></title><link>https://blog.csdn.net/vbnetfun/article/details/119709390</link><guid>https://blog.csdn.net/vbnetfun/article/details/119709390</guid><author>vbnetfun</author><pubDate>Sun, 15 Aug 2021 08:47:21 +0800</pubDate><description><![CDATA[针对Java程序员而言，开发服务器端程序，程序的运行环境是Linux，在Mac OS X这个Unix上面开发，其实很方便。

本技术专栏帮忙Java程序员，搭建工作环境，如JDK、Maven、IntelliJ IDEA、Docker、虚机、以及各种常用工具等等，轻松体验在macOS上日常开发工作。



为什么选择Mac？


	首先Mac OS X的底层是Unix，而且是真正的Unix，强大的命令行；
	
	
	高效快捷（菜单栏置顶，多桌面空间，大量而且全局一致的快捷键）；
	
	
	异常好用的触控板（再]]></description><category></category></item><item><title><![CDATA[基于DDD领域建模思想、COLA架构和CQRS模式快速实现装卸微服务应用]]></title><link>https://blog.csdn.net/vbnetfun/article/details/119698550</link><guid>https://blog.csdn.net/vbnetfun/article/details/119698550</guid><author>vbnetfun</author><pubDate>Sat, 14 Aug 2021 11:32:05 +0800</pubDate><description><![CDATA[我们已经基于COLA架构创建了装卸服务（handlingms）的骨架代码，然后创建好了领域模型和数据模型。本文将按照数据流的顺序，分别在各个模块的包结构中，实现业务逻辑和代码落地。











一、二方库client模块

二方库client模块不是功能独立的层，client模块包含的代码应该是常见的服务接口Facade和DTO数据传输对象，如API、DTO、领域事件（Domain Event）、Command和Query对象等等。



如上图所示，HandlingActivityRegist.]]></description><category></category></item><item><title><![CDATA[为什么说开源的COLA既是架构也是框架？]]></title><link>https://blog.csdn.net/vbnetfun/article/details/119619647</link><guid>https://blog.csdn.net/vbnetfun/article/details/119619647</guid><author>vbnetfun</author><pubDate>Wed, 11 Aug 2021 23:20:33 +0800</pubDate><description><![CDATA[COLA 是 Clean Object-Oriented and Layered Architecture的缩写，代表“整洁面向对象分层架构”，是来自阿里技术专家的开源项目。目前COLA已经发展到COLA 4.0。

COLA既是架构，也是框架。COLA框架继承了DDD的设计思想。

COLA 开源地址：https://github.com/alibaba/COLA



一、为什么说COLA是架构？

在架构设计上，COLA主张像六边形架构那样，使用端口-适配器去解耦技术细节；主张像洋葱架构那样，以领域.]]></description><category></category></item><item><title><![CDATA[基于DDD领域建模思想、COLA开源架构和CQRS模式设计和构建货物运输系统]]></title><link>https://blog.csdn.net/vbnetfun/article/details/119487615</link><guid>https://blog.csdn.net/vbnetfun/article/details/119487615</guid><author>vbnetfun</author><pubDate>Sat, 07 Aug 2021 15:43:16 +0800</pubDate><description><![CDATA[2003年，DDD（领域驱动设计）这一软件开发的方法与愿景经由建模专家 Eric Evans 的经典著作Domain-Driven Design: Tackling Complexity in the Heart of Software 正式面世，当即获得了广泛关注和高度评价。18 年间，网上越来越多关于 DDD的文章和讨论。为什么我们现在还不停地讨论 DDD？为什么DDD仍然如此重要？



领域驱动设计常以战略设计与战术设计来将整个领域展现得淋漓尽致，其作用范围既面向业务也面向技术。从战略角度去规划系统]]></description><category></category></item></channel></rss>