分布式事务在Java中的实现方式

分布式事务是分布式系统中关键的一部分,其目的是保证分布式系统中所有节点的事务一致性。这在现代大规模并发应用中尤其重要。在Java中,有几种主要的实现分布式事务的方式,这篇文章将详细介绍其中几种,并为每种方式提供一个业务场景以及示例代码。 一、两阶段提交协议 (2PC) 两阶段提交协议是一种经典的分布式事务处理方法。它包含两个阶段:预提交阶段和提交阶段。…

hello hello 发布于 2024-03-29

浅谈限流算法

限流 限流(Rate Limiting)是指在系统设计和开发过程中,对服务请求或数据传输速率进行控制的一种策略。 限流的 目的 是为了保护系统资源不被过度消耗,避免因短时间内大量请求导致的服务过载、响应延迟甚至崩溃等情况,从而保证系统的稳定性和可用性。 这篇文章我们就聊一下几种流行的限流算法。 固定窗口…

hello hello 发布于 2024-03-29

Java编程的未来以及趋势

Java一直是编程世界不可或缺的一部分,它的重要性一直没有动摇。随着企业软件解决方案中对Java的需求持续增长,该语言保持了其作为跨各种设备和集成系统创建复杂软件的强大工具的地位。对于新入行的小伙伴来说,选择java培训是一个好的学习方式,有全面系统的课程,有专业老师教学指导,还有浓厚的学习氛围,有助于你高效学习。…

hello hello 发布于 2024-03-29

AQS的基本原理

AQS(AbstractQueuedSynchronizer)是一个用于构建锁和同步器的框架,许多同步器都可以通过AQS很容易并且高效的构造出来。不仅Reentrant和Semaphore是基于AQS构建的,还包括CountDownLatch、ReentrantReadWriteLock、SynchronousQueue和FutureTask。 高层抽象…

hello hello 发布于 2024-03-29

Java 22 发布,一文了解全部新特性

就在昨晚,Java 22正式发布!该版本提供了 12 项功能增强,其中包括 7 项预览功能和 1 项孵化器功能。它们涵盖了对 Java 语言、API、性能以及 JDK 中包含的工具的改进。 下面就来一起学习一下该版本都更新了哪些新特性! # Unnamed Variables & Patterns – JEP 456 JEP 456 –…

hello hello 发布于 2024-03-20

使用aspose-pdf识别pdf中的表格数据

一、引入依赖 <dependency> <groupId>com.aspose</groupId> <artifactId>aspose-pdf</artifactId> <version>21.11</version> </dependency> 如果不知道从哪下载,或者无法破解的请参考 Aspose for Java 去除水印和数量限制_aspose…

hello hello 发布于 2024-03-16

一文搞懂 git rebase 和 git merge的区别

它们是什么 在使用 git 进行版本管理的项目中,当完成一个功能的开发并将其合并到 master 分支时,会有两种方式: git merge git rebase git rebase 与 git merge 都有相同的作用,都是将一个分支的提交合并到另一分支上,但是在原理上却不相同。 用法上两者也十分的简单: git merge…

hello hello 发布于 2024-03-12

Redisson 解决 Redis 服务器的主从一致性问题

redisson解决redis的主节点和从节点一致性的问题。从而解决锁被错误获取的情况。 实际开发中我们会搭建多台redis服务器,但这些服务器分主次,主服务器负责处理写的操作(增删改),从服务器负责处理读的操作,当从主务器坏了,会从次服务器中选出一个服务器重新作为主服务器。 这样会出现主从一致性问题(存储的信息不一致)…

hello hello 发布于 2024-03-11

10 个 Java Stream 顶级技巧,大量简化代码!

Java Stream API对于 Java 开发人员来说就像一把瑞士军刀 — 它用途广泛、结构紧凑,并且可以轻松处理各种任务。 它为开发人员提供了一种函数式和声明式的方式来表达复杂的数据转换和操作,使代码更加简洁和富有表现力。 但能力越大,责任越大,有效地使用Stream API需要对最佳实践和常见陷阱有深入的了解。 今天,我们将探讨使用Java…

hello hello 发布于 2024-03-11

如何优化大表分页查询的limit性能问题

完成需求,不只在于速度,更要考虑质量。在规定的时间内完成需求的情况下,如果还有时间,应当想一下还能怎么优化,从性能、代码可读性、可扩展性层面考虑。进步就是这样一点点积累的。 昨天写的那篇有点小失误,在此修正一下。其实 mybatis-plus 提供的优化器做得非常好,它不仅仅只是在优化后的 sql 之上加一层 select count(1) from…

hello hello 发布于 2024-03-06
上一页 下一页