常见的分布式事务的解决方案

2021-03-18
阅读 13 分钟
2.8k
众所周知,数据库能实现本地事务,也就是在同一个数据库中,你可以允许一组操作要么全都正确执行,要么全都不执行。这里特别强调了本地事务,也就是目前的数据库只能支持同一个数据库中的事务。但现在的系统往往采用微服务架构,业务系统拥有独立的数据库,因此就出现了跨多个数据库的事务需求,这种事务即为“分布式事务...

CAP原则

2020-12-29
阅读 3 分钟
3.8k
CAP原则又称CAP定理,指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。

final关键字与安全发布

2020-12-10
阅读 2 分钟
3k
在Java中,final关键字可以用来修饰类、方法和变量(包括成员变量和局部变量)大家应该都知道final表示最终的、最后的含义,也就是不能在继续

Java线程的六种状态以及切换

2020-12-06
阅读 7 分钟
20.4k
初始(NEW):新创建了一个线程对象,但还没有调用start()方法。运行(RUNNABLE):Java线程中将就绪(ready)和运行中(running)两种状态笼统的称为“运行”。线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位于可运行线程池中,等待被线程调度选中,获取CPU的使用权,此时处于就绪状态(...

高并发与多线程

2020-12-06
阅读 3 分钟
5.7k
高并发(High Concurrency)是一种系统运行过程中遇到的一种“短时间内遇到大量操作请求”的情况,主要发生在web系统集中大量访问收到大量请求(例如:12306的抢票情况;天猫双十一活动)。该情况的发生会导致系统在这段时间内执行大量操作,例如对资源的请求、数据库的操作等。

Dubbo与SpringCloud的架构与区别

2020-11-29
阅读 2 分钟
4.3k
Spring Cloud 抛弃了 Dubbo 的 RPC 通信,采用的是基于 HTTP 的 REST 方式。严格来说,这两种方式各有优劣。虽然从一定程度上来说,后者牺牲了服务调用的性能,但也避免了上面提到的原生 RPC 带来的问题。而且 REST 相比 RPC 更为灵活,服务提供方和调用方,不存在代码级别的强依赖,这在强调快速演化的微服务环境下显得...

单体应用-SOA-微服务的趋势

2020-11-29
阅读 1 分钟
2.8k
单体应用的维护:单体应用中,大部分逻辑部署在一个集中化,单一的环境或服务器中运行。单体应用通常很大,由一个大型团队或多个团队维护。庞大的代码可能给开发人员增加开发成本。开发过程中使用的开发环境和容器不堪重负,降级开发效率。

内存泄露与内存溢出的区别

2020-11-01
阅读 2 分钟
8.2k
指程序申请内存时,没有足够的内存供申请者使用,或者说,给了你一块存储int类型数据的存储空间,但是你却存储long类型的数据,那么结果就是内存不够用,此时就会报错OOM,即所谓的内存溢出。

微服务架构中常见的注册中心

2020-08-10
阅读 4 分钟
13.7k
盘点一下常用的注册中心上图基本表达了注册中心的交互过程, 体现出三种角色之间关系:服务提供者 Service Provider (Server):服务启动后向RegistryCenter注册 自己的一个实例定期向RegistryCenter发送心跳(heartbeat), 证明自己还能苟一会服务关闭时向RegistryCenter发起注销服务消费者 Service Consumer(Client):服务启...

设计模式之-单例模式

2020-07-12
阅读 4 分钟
2.2k
java设计模式之--单例模式 单例模式 单例模式限制类的实例和确保java类在java虚拟机中只有一个实例的存在。 单例类必须提供一个全局的访问来获取类的实例。 单例模式用来日志,驱动对象,缓存和线程池。 单例设计模式也用在其他设计模式,例如抽象工厂,建造者,原型,门面等设计模式。 单例模式还用在核心java中,例如j...