自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 什么是分布式事务

分布式事务中的事务管理器需要协调多个节点之间的事务操作,确保整个事务的一致性和可靠性。此外,由于节点之间的相对独立性,分布式事务的处理过程中,需要增加更多的协调和控制过程,以保证整个系统的一致性和可靠性。:隔离性,数据库中的事务一般都是并发的,隔离性是指并发的两个事务的执行互不干扰,一个事务不能看到其他事务的运行过程的中间状态。数据库事务在实现时会将一次事务的所有操作全部纳入到一个不可分割的执行单元,该执行单元的所有操作要么都成功,要么都失败,只要其中任一操作执行失败,都将导致整个事务的回滚。

2023-09-27 17:18:40 189

原创 Git 的基本概念和使用方式

1. 仓库(Repository):Git使用仓库来存储项目的源代码和版本信息。一个仓库可以包含多个分支,每个分支代表一个不同的版本。2. 提交(Commit):每次代码变更都需要进行提交,提交会生成一个新的版本号。提交时需要添加一个提交信息,以便其他人了解这个提交所做的改动。3. 分支(Branch):Git允许在同一个仓库里创建多个分支,用于并行开发和多版本管理。4. 合并(Merge):将一个分支的改动合并到另一个分支中,可以使用合并操作。

2023-09-21 21:35:29 169

原创 如何用redis实现购物车模块

使用Redis实现购物车模块,可以利用Redis的高性能和多种数据结构,简单快速地实现购物车模块。在实现过程中,我们需要注意保证不同用户购物车之间的数据独立性,并注意处理并发操作。

2023-09-20 17:46:17 1073

原创 swagger的使用

通过本文的介绍,可以看出Swagger是一种很方便的API文档自动化生成工具。通过使用Swagger可以大大简化API开发和测试的流程,提高开发和测试的效率。

2023-09-18 21:32:25 508

原创 什么是Elasticsearch

Elasticsearch是一个开源的,分布式的全文搜索和分析引擎。它是基于Apache Lucene搜索引擎库构建的,提供了RESTful API接口,可帮助用户快速构建并扩展大规模的搜索应用程序。Elasticsearch将数据存储在可扩展的分布式节点集群中,并且具有高可用性和容错能力。

2023-09-15 15:05:56 151

原创 什么是死信交换机

定义一个DLX,通过RabbitMQ的管理界面或者API进行配置。

2023-09-14 14:50:27 277

原创 对消息积压问题的理解和解决办法

总之,消息积压问题是一个普遍存在的问题,需要采取一些措施来优化系统,并且需要坚持持续监测和优化。通过合理的消息管理和优化,可以提高系统的性能和可靠性,确保系统的正常运行。

2023-09-13 19:49:52 1009

原创 对消息可靠性的理解和解决办法

总之,消息可靠性是数据通信中不可或缺的关键因素,对于保障信息的安全性和正确性具有重要的意义。在实际应用中,可以通过选择合适的传输协议、设置相关的重传机制和检验技术等方法,进一步提高消息可靠性,确保数据传输的顺畅和可靠。

2023-09-13 19:44:17 171

原创 消息重复消费怎么解决

消息重复消费是指在消息传递过程中,同一条消息被多次消费的现象。这种情况可能会导致系统数据不一致、重复计算等问题,对系统的正确性和稳定性产生影响。为了解决消息重复消费的问题,我们需要理解其产生原因,并提出适当的解决方案。

2023-09-13 19:35:27 533

原创 Feign远程调用

在这个例子中,我们定义了一个Feign客户端接口UserServiceClient,它通过 @FeignClient 注解来指定要调用的服务的名称(这里是"user-service")。如果每个服务都直接通过HTTP或RPC调用其他服务,这样的耦合性非常高,随着服务的增多,程序的维护难度将会变得越来越大。因此,采用Feign来进行远程服务调用有助于降低耦合度,提高代码的可读性和可维护性。总之,Feign是一个非常方便、易用、可扩展的远程服务调用框架,它可以大大简化我们的代码,并提高代码的可读性和可维护性。

2023-09-12 17:53:45 165

原创 Java中的ACP抽象控制模式

中心控制器Dispatcher维护了一个控制器映射表,并根据不同的请求,调用相应的具体控制器来实现对操作的控制。ACP(Abstract Control Pattern)即抽象控制模式,是一种设计模式,在Java中常用于处理各种具体操作的抽象控制。1. 抽象控制器(Abstract Control):定义抽象控制接口,包含所有需要被控制的操作。3. 中心控制器(Dispatcher):根据不同的请求,调用不同的具体控制器,实现对操作的控制。

2023-09-09 14:53:24 288 1

原创 Nacos的应用

综上所述,Nacos作为一个开源的分布式服务发现和配置管理平台,具有服务发现和注册、配置管理、动态配置和负载均衡等重要功能,适用于微服务架构、云原生应用和分布式系统等不同场景。使用Nacos可以方便地实现服务化管理和运维,并提升系统的稳定性和可靠性。

2023-09-07 19:52:34 296 1

原创 Springcolud微服务的使用

本文主要介绍了SPRING CLOUD的架构、组件和使用方法,SPRING CLOUD可以快速搭建分布式系统,提高开发效率。同时,通过Eureka、Ribbon、Feign、Hystrix等组件,可以实现分布式系统的服务注册和发现、负载均衡、远程调用和故障熔断等功能。

2023-09-06 20:37:44 136 1

原创 JAVA空指针异常怎么办

总之,在处理空指针异常时,最好将其预防于未然。您可以通过检查变量是否为null,以及使用Java 8的新特性来避免空指针异常。如果仍然出现异常,请使用try-catch块来处理它。

2023-09-05 17:59:02 246

原创 linux常用命令

另外,“~”也表示为home目录的意思,“.”是表示目前所在的目录,“..”则表示目前目录位置的上一层目录。:一页一页的形式显示文件内容,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,按 h。sudoers文件的默认权限是440,即默认无法修改,visudo需要超级用户权限,可以在不更改sudoers文件权限的情况下,直接修改sudoers文件。:gzip命令用于压缩文件。

2023-09-03 17:46:51 159

原创 什么是redis

在此示例中,我们使用Jedis库连接到Redis服务器,并将一个键值对存储在Redis中。我们也可以使用其他Java Redis客户端库,例如Lettuce、Redisson等。总之,Redis是一个非常强大的数据存储系统,它为Java开发者提供了一种高效、可扩展、多数据结构的缓存和存储解决方案。

2023-09-02 12:26:22 165 1

原创 什么是序列化和反序列化

序列化和反序列化是计算机程序中常用的概念,用于将数据从一种格式转换为另一种格式,以便在不同的系统之间传递或存储数据。在这篇文章中,我将详细解释序列化和反序列化的概念、原理、用途和实现方法。

2023-08-28 21:37:52 164 1

原创 什么是字节流和字符流

字节流和字符流是Java IO中的两种基本流类型,它们分别以字节和字符为单位进行读取和写入数据。字节流适用于读取和写入二进制文件或图片等,而字符流适用于读取和写入文本文件。在读写文件时需要考虑编码方式,字节流需要注意编码方式以避免出现乱码,而字符流则不需要。

2023-08-28 21:19:44 547 1

原创 什么是Linux

什么是Linux和相关解释

2023-08-25 15:57:51 35 1

原创 MySql与Redis的区别

Redis适合放一些频繁使用,比较热的数据,因为是放在内存中,读写速度都非常快,一般会应用在下面一些场景:排行榜、计数器、消息队列推送、好友关注、粉丝.Redis是NOSQL,即非关系型数据库,也是缓存数据库,即将数据存储在缓存中,缓存的读取速度快,能够大大的提高运行效率,但是保存时间有限。Redis数据库就是一款缓存数据库,用于存储使用频繁的数据,这样减少访问数据库的次数,提高运行效率.MySQL是关系型数据库,主要用于存放持久化数据,将数据存储在硬盘中,读取速度较慢.缓存的好处就是读取速度快.

2023-08-24 21:39:55 39 1

原创 在JAVA中常见的异常类型有什么

要自定义异常,可以创建一个继承自Exception的类,并重写其构造方法。以下是一个示例代码:# 调用父类的构造方法,并传入异常信息# 使用自定义异常if b == 0:raise MyException("除数不能为零!")try:print("发生自定义异常:", e.message)在上面的示例中,我们创建了一个名为MyException的自定义异常类,它继承自内置的Exception类。在构造方法中,我们调用了父类的构造方法,并传入异常信息。

2023-08-23 17:28:32 907

原创 Map 和List的区别

List是一个接口,它继承自Collection接口,并且是一个有序的集合。List中的元素可以重复,并且可以按照插入的顺序访问。List接口提供了一系列方法用于操作集合中的元素,包括添加、删除、修改、查找等。有序性:List中的元素按照插入的顺序排列,每个元素都有一个对应的索引位置。元素可重复:List中可以包含重复的元素,同一个元素可以出现多次。可以通过索引访问元素:List中的元素可以通过索引位置进行访问,可以根据索引进行添加、删除、修改等操作。

2023-08-19 21:34:55 445

原创 什么是ThredLocal,ThreadLocal的理解

ThreadLocal是Java中的一个类,它提供了线程局部变量的功能。线程局部变量是指每个线程都拥有自己独立的变量副本,该副本只有该线程可以访问和修改,而其他线程无法直接访问这个副本。

2023-08-18 20:48:17 61

原创 SpringBoot中的拦截器相关解释及代码

在Spring Boot中,拦截器(Interceptor)是一种AOP(面向切面编程)的技术,用于在处理请求和响应之前、之后以及异常发生时进行拦截和处理。拦截器可以用于实现对请求的预处理、后处理和响应结果的后处理。

2023-08-16 19:55:59 205

原创 ArrayList和LinkedList的区别

然而,对于随机访问元素来说,LinkedList的性能较差,因为需要遍历链表来找到特定位置的元素。这意味着在ArrayList中,元素的随机访问速度很快,因为可以通过索引直接访问元素。然而,插入和删除操作可能会引起数组的重新分配和元素的移动,因此在这些操作上的性能相对较低。根据具体的使用场景和需求,选择适当的集合实现方式可以提高程序的性能和效率。通过以上示例代码,可以看到ArrayList和LinkedList的使用方法基本相同,只是实例化时使用的类不同。// LinkedList示例。

2023-08-15 21:01:56 660 2

原创 ==和equals的区别

==”是运算符①如果比较的对象是,则比较的是其是否相等;②如果比较的是,则比较的是是否相等(是否是同一个对象)。

2023-08-14 20:55:05 59

空空如也

空空如也

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

TA关注的人

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