自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 收藏
  • 关注

原创 常见消息队列:ActiveMQ、RabbitMQ、RocketMQ、Kafka的区别总结

常见消息队列:ActiveMQ、RabbitMQ、RocketMQ、Kafka的区别。

2024-02-02 22:02:50 1562

原创 08.领域驱动设计:深入理解领域模型的核心概念

领域驱动设计(DDD):深入理解领域模型的核心概念领域模型是领域驱动设计(DDD)中的核心概念之一,它是对业务领域的概念、实体、规则和行为的抽象表示。领域模型通过使用领域对象、实体、值对象、聚合根、领域服务等概念,进行描述业务领域的核心概念和关系。

2024-02-02 11:40:46 595

原创 Java开发常用框架:效率框架、测试框架、日志框架、安全框架总结

Java开发常用框架:Java效率框架、测试框架、日志框架、安全框架。

2024-02-01 22:06:51 779

原创 领导最反感下属这3种行为以及解决方法,看看自己有过吗

领导最反感下属这3种行为以及解决方法,看看自己有过吗今天主要分享3种行为,这些经验是我平时工作中看到有同事出现过然后总结的引以为戒,这是领导发自内心最反感的,希望你一个都别有。

2024-01-31 22:42:15 358

原创 开发工程师和产品经理高效沟通技巧经验分享

开发工程师和产品经理之间的高效沟通是项目成功的关键因素之一。通过明确目标和需求、使用明确的术语和语言、及时反馈和沟通、共同参与决策、接受反馈和建议、灵活适应变化等技巧,可以帮助双方建立良好的沟通合作关系,提高项目的成功率。

2024-01-31 07:56:57 242

原创 人人必备的学会沟通中掌控情绪,避免冲突方法分享

人人必备的学会沟通中掌控情绪,避免冲突方法分享:1、了解自己的情绪。2、换位思考。3、掌握正确的沟通技巧。4、保持冷静。5、尊重对方。6、学会道歉。

2024-01-23 19:50:06 428

原创 一篇文章掌握负载均衡Ribbon作用和架构以及核心组件

Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具。简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将NetFlix的中间层服务连接在一起。

2024-01-15 21:50:19 1292

原创 一篇文章掌握WebService服务、工作原理、核心组件、主流框架

Web Service是一个SOA(面向服务架构)的应用程序,它是不依赖于语言,不依赖于平台,可以实现不同的语言(通过xml 描述)间的相互调用,通过Internet进行基于Http协议的网络应用间的互。通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。**简单可以理解成:WebService是一种跨编程语言和跨操作系统平台的远程调用技术**。

2024-01-14 13:22:14 1296

原创 如何巧妙处理情绪化,让生活工作保持积极心态分享

在这个快节奏、高压力的时代,我们似乎越来越容易被情绪所左右。一点小事就可能让我们陷入愤怒、焦虑或沮丧的情绪漩涡中,难以自拔。如何巧妙处理情绪化,让生活工作保存积极心态:首先,要认识到情绪化对我们生活工作带来的负面影响。要处理情绪化,首先要学会观察自己的情绪。其次,我们要学会换位思考。与亲朋好友分享心情。最后,培养自己的兴趣爱好。

2024-01-14 09:44:32 428

原创 工作上被批评,学会这5个方法管理情绪,停止内耗分享

喜欢被表扬,抗拒挨批评,这是人之天性。然而,每个人的成长,却又离不开犯错,更离不开批评。我们经常说,干的越多,错的越多,被领导批评的自然也越多。工作中,被领导批评确实是常事。因而,一个成年人,尤其是一个职场中的成年人,学会理性地、平静地面对和处理所遭遇到的批评,才能更好地给负面情绪找到一个出口,化情绪为动力,让付出的时间和精力发挥作用,创造价值。

2024-01-13 20:19:21 850

原创 简单有效的沟通方式:尊重、倾听、情绪管理

简单有效的沟通方式:尊重、倾听、情绪管理。

2024-01-08 23:08:53 440

原创 一篇文章认识微服务的优缺点和微服务技术栈

微服务化的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底地去耦合,每一个微服务提供单个业务功能的服务,一个服务做一件事情。微服务的优点:1.每个服务足够内聚,足够小,代码容易理解。2.开发简单,开发效率提高。3.微服务只是业务逻辑的代码。4.每个微服务都有自己的存储能力,可以有自己的数据库,也可以有统一数据库等,等等。微服务的缺点:1.要处理分布式系统的复杂性。2.运维的压力在增大。3.服务间通信成本..4.数据一致性问题处理。5.系统集成测试。6.性能监控。

2023-12-31 19:37:39 1066

原创 一篇文章掌握SpringCloud与SpringCloud Alibaba的区别

由于SpringCloud Netflix原先的一些组件进入停更维护状态,因此这些组件逐渐被SpringCloud Alibaba一些新技术所替代。SpringCloud Alibaba,实际上对我们的SpringCloud2.x和1.x实现拓展组件功能。

2023-12-30 21:11:22 1606

原创 一篇文章掌握系统架构的演变和常见微服务框架

随着互联网的发展,网站应用的规模不断扩大,常规的应用架构已无法应对,分布式服务架构以及微服务架构势在必行,急需一个治理系统确保架构有条不紊的演进。系统架构的演变:1、单体应用架构。2、垂直应用架构。3、分布式SOA架构。4、微服务架构。常见微服务框架有Spring Cloud、Spring Cloud Alibaba。

2023-12-29 22:59:34 1053

原创 一篇文章深入认识微服务SpringCloud和Dubbo的区别

Dubbo的定位是一款RPC框架,Spring Cloud的目标是微服务架构下的一站式解决方案。SpringCloud是目前国内使用最广泛的微服务框架。SpringCloud基于SpringBoot提供了一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了基于NetFlix的开源组件做高度抽象封之外,还有一些选型中立的开源组件。

2023-12-29 20:52:58 1541 1

原创 想要学会JVM调优,先掌握JVM内存模型和JVM运行原理

想要学会JVM调优,先掌握JVM内存模型和JVM运行原理:在Java中,JVM内存模型主要分为堆、程序计数器、方法区、虚拟机栈和本地方法栈。JVM在很大程度上减轻了Java开发人员投入到对象生命周期的管理精力。在使用对象的时候,JVM会自动分配内存给对象,在不使用的时候,垃圾回收器会自动回收对象,释放占用的内存。

2023-12-27 21:21:01 1247 2

原创 Java中JDK类库常用的6种设计模式

Java中JDK类库常用的6种设计模式:1、抽象工厂。2、建造者模式。3、工厂模式。4、原型模式。5、单例模式。6、适配器模式。

2023-12-09 19:55:29 666

原创 与脾气不太好的领导相处,4个原则和5个技巧分享

工作上我看到有的人擅长和各种类型领导相处,而有的人则和领导相处不愉快,不懂灵活变通的人和领导相处出现冲突时则是当面怼领导,不给领导面子,之后被领导打压,甚至有的人和领导相处不和离开等等,所以说学会和脾气不太好的领导相处需要掌握一些技巧。

2023-12-08 22:37:28 874

原创 Java项目开发,业务比较复杂如何减少bug

当Java开发工作涉及复杂业务时,可以采取以下方法来减少bug的数量:1、深入了解业务需求。2、模块化和解耦合。3、使用设计模式。4、做好异常处理。5、不断进行测试。6、代码审查和团队合作。7、清晰的文档和注释。8、监控和日志记录。

2023-12-08 08:17:34 750

原创 从多个方面理解微服务架构

微服务架构风格是一种将一个单一应用程序开发为一组小型服务的方法,每个服务运行在自己的进程中,服务间通信采用轻量级通信机制(通常用HTTP资源API)。微服务是设计层面的东西,一般考虑如何将系统从逻辑上进行拆分,也就是垂直拆分。微服务解决的是系统复杂度问题: 一般来说是业务问题,就是在一个系统中承担职责太多了,需要打散,便于理解和维护,进而提升系统的开发效率和运行效率,微服务一般来说是针对应用层面的。

2023-12-07 21:11:06 314

原创 有效提高代码质量,减少bug提高工作效率

好的代码一定是整洁的,并且能够帮助阅读的人快速理解和定位。好的代码可以加快应用的开发迭代速度,不必花过多的时间来修复 bug 和完善代码。好的代码不但能够使得新的项目成员更容易加入项目,同时方便项目组成员快速做好 Back up。好的代码便于促进团队间交流合作提升开发效率。代码质量评价标准,其中包括:编码规范、可读性、可维护性、重复度及可测试性。

2023-11-11 21:50:13 109

原创 为什么需要学习并发编程

​并发编程适用于多种应用场景,例如网络编程、数据库编程、图形界面编程等。无论您是开发桌面应用程序还是 Web 应用程序,都可能需要使用并发编程来提高程序的性能、响应时间和可扩展性。综上所述,学习并发编程对于提高程序性能、响应时间和可扩展性非常重要。同时,它还可以解决共享资源的问题,并适用于多种应用场景。因此,学习并发编程是非常值得的。

2023-06-17 19:49:40 99

原创 04、掌握分布式协调服务ZooKeeper架构和原理以及集群

ZooKeeper 是一个开源的分布式协调服务,ZooKeeper框架最初是在“Yahoo!"上构建的,用于以简单而稳健的方式访问他们的应用程序。后来,Apache ZooKeeper成为Hadoop,HBase和其他分布式框架使用的有组织服务的标准。例如,Apache HBase使用ZooKeeper跟踪分布式数据的状态。ZooKeeper的设计目标是将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并以一系列简单易用的接口提供给用户使用。ZooKeeper 是一个典型的。

2023-04-15 19:55:07 163

原创 03、了解RPC、Dubbo的架构和工作原理以及负载均衡策略

Apache Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。简单来说Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。

2023-04-08 21:58:54 618 3

原创 02、分布式系统的经典基础理论入门

分布式系统是由多个独立的计算机节点组成的系统,这些节点通过网络相互连接并协同工作,以完成特定的任务。CAP 是分布式系统设计理论,BASE 是 CAP 理论中 AP 方案的延伸,ACID 是数据库事务完整性的理论。CAP理论严格来讲不是三选二,而是CP、AP二选一,因为通常P(分区容错性)是必须得1到保证的。BASE理论面向的是大型高可用、可扩展的分布式系统。分布式系统中3个常见的概念: 分布式系统设计理念 、 CAP定理 、 BASE理论.

2023-04-08 15:07:59 377

原创 为什么建议代码中运用Java设计模式

设计模式是前人根据经验总结出来的,设计模式不仅仅只是一种规范,更多的是一种设计思路和经验总结。提高你高质量编码的能力,使用好设计模式就相当于是站在了前人的肩膀上。在JDK的源码里,以及框架中间件的源码实现里,到处都是设计模式。

2022-09-30 12:50:32 722

原创 如何划分限界上下文总结

1、评估划分的合理性方法。2、限界上下文划分的标准。3、如何划分限界上下文。

2024-03-20 21:16:12 937

原创 设计一个聚合根的详细步骤和案例总结

设计一个聚合根的详细步骤和案例

2024-02-27 09:13:12 345

原创 为什么需要写Java单元测试总结

为了保证代码质量,在写完代码后,写单测是很有必要的。写单测好处:提升开发效率、场景覆盖全。

2024-02-20 13:57:54 1228

原创 断言工具类更好理解代码设计意图总结

Java断言的使用场景主要包括以下几种:输入参数校验:在方法的开头部分使用断言来校验输入参数的合法性,确保方法在执行前满足条件。内部条件判断:在方法的中间部分使用断言来判断某个条件是否为真,如果为假则抛出AssertionError异常。测试:在编写单元测试时,可以使用断言来验证代码的正确性。例如,使用断言来验证方法返回值是否符合预期,或者某个方法是否抛出了期望的异常。断言工具类更好理解代码设计意图,取代if-else抛出自定义异常总结

2024-02-04 16:29:36 426

原创 09.领域驱动设计:深入学习6本经典推荐书籍

推荐6本经典的领域驱动设计(DDD)深入学习书籍:1. 《领域驱动设计:软件核心复杂性应对之道》2. 《实现领域驱动设计》3. 《领域驱动设计精粹》4. 《领域驱动设计模式、原理与实践》5. 《中台架构与实现 : 基于DDD和微服务》6. 《复杂软件设计之道:领域驱动设计全面解析与实战》深入学习领域驱动设计(DDD)的6本经典推荐书籍比较多,大家可以根据自己需要去学习认为自己需要的几本书籍。

2024-02-03 10:23:27 996

原创 07.领域驱动设计:掌握整洁架构、六边形架构以及3种常见微服务架构模型的对比和分析

DDD分层架构、整洁架构、六边形架构这三种架构模型放到一起,对比分析,看看如何利用好它们,帮助我们设计出高内聚低耦合的中台以及微服务架构。DDD分层架构、整洁架构、六边形架构都是以领域模型为核心,实行分层架构,内部核心业务逻辑与外部应用、资源隔离并解耦。请务必记好这个设计思想,今后会有大用处。

2024-01-29 22:51:09 1115

原创 06.领域驱动设计:使用DDD分层架构,可以有效降低层与层之间的依赖

微服务架构模型有好多种,例如整洁架构、CQRS和六边形架构等等。每种架构模式虽然提出的时代和背景不同,但其核心理念都是为了设计出“高内聚、低耦合”的架构,轻松实现架构演进。而DDD分层架构的出现,使架构边界变得越来越清晰,它在微服务架构模型中,占有非常重要的位置。DDD分层架构到底是什么样?DDD分层架构如何推动架构演进?我们该怎么转向DDD分层架构?我们采用了依赖倒置DIP的设计,优化了传统的四层架构,实现了各层对基础层的解耦。DDD分层架构就是优化后的四层架构。

2024-01-28 22:34:43 957

原创 05.领域驱动设计:掌握领域事件,解耦微服务的关键

在事件风暴(Event Storming)时,我们知道除了命令和操作等业务行为以外,还有一种非常重要的事件,这种事件发生后通常会导致进一步的业务操作,在DDD中这种事件被称为领域事件。那到底什么是领域事件?领域事件的技术实现机制是怎样的?今天我们主要学习领域事件以及领域事件的处理机制。领域事件驱动是很成熟的技术,在很多分布式架构中得到了大量的使用。领域事件是DDD的一个重要概念,在设计时我们要重点关注领域事件,用领域事件来驱动业务的流转,尽量采用基于事件的最终一致。

2024-01-28 11:20:35 1327

原创 04.领域驱动设计:了解聚合和聚合根,怎样设计聚合

领域驱动设计:为什么要在限界上下文和实体之间增加聚合和聚合根?它们的作用是什么?怎么设计聚合?

2024-01-27 21:16:59 1189

原创 03.领域驱动设计:了解实体和值对象以及它们的区别

领域驱动设计:DDD战术设计中的两个重要概念:实体和值对象。实体和值对象是微服务底层的最基础的对象,一起实现实体最基本的核心领域逻辑。

2024-01-27 17:19:00 722

原创 02.领域驱动设计:了解领域、子域、核心域、通用域、支撑域、通用语言和限界上下文

领域驱动设计(DDD):了解领域、子域、核心域、通用域、支撑域、通用语言和限界上下文关键概念

2024-01-25 22:15:29 827

原创 01.领域驱动设计:微服务设计为什么要选择DDD学习总结

领域驱动设计:微服务设计为什么要选择DDD微服务设计过程中往往会面临边界如何划定的问题,DDD核心思想是通过领域驱动设计方法定义领域模型,从而确定业务和应用边界,保证业务模型与代码模型的一致性。DDD 不是架构,而是一种架构设计方法论,它通过边界划分将复杂业务领域简单化,帮我们设计出清晰的领域和应用边界,可以很容易地实现架构演进。

2024-01-24 23:07:49 1433

原创 一篇文章认识领域驱动设计(DDD),实现领域建模解决复杂业务问题

领域驱动设计(DDD)是一种软件开发方法论,着重于解决复杂领域问题的建模和实现。一篇文章认识领域驱动设计的基本概念和原则、如何实现领域建模,解决复杂业务问题、微服务与DDD的关系,DDD落地到微服务的设计原则。

2024-01-23 17:08:12 910

原创 海量数据解决方案ShardingSphere分库分表详解

一篇文章掌握海量数据解决方案ShardingSphere分库分表详解:ShardingSphere概述、数据分片(垂直分片、水平分片)、分片算法、分片策略、分布式主键、数据分片使用规范、读写分离、雪花算法等等。

2024-01-20 09:29:59 1097

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除