如何关闭优雅关闭线程

前言

最近,遇到一个情况,引用的一些外部的cloud的包在调用的时候的时候报错了,看报错的内容是

The current thread was interrupted at xxxxx

后面就是堆栈信息, 在代码中是try catch(Exception e)
这段代码的,但是这个线程最后是阻断了,所以无法继续运行下去
于是...

Continue reading

什么是spi

SPI(Service Provider Interface)是一种用于实现可插拔式架构的机制,它在 Java 中被广泛应用。SPI 机制允许开发者编写可扩展的代码,使得应用程序在运行时可以根据需要动态地加载和使用不同的实现类,而无需修改源代码。本文将详细介绍 SPI 的原理、使用方式以及优缺点。

Continue reading

Java 内存模型

Java 内存模型(Java Memory Model,JMM)是 Java 语言规范中的一套规则,它描述了多线程环境下的线程与内存(主内存和高速缓存)的交互方式,以保证可见性,有序性和原子性,同时它屏蔽了硬件与操作系统的底层差异,使得 Java 程序在所有平台下的内存访问效果一致。

Continue reading

CDC和应用场景

一、背景

  • 背景:描述此文档的背景和要解决的技术问题

在微服务治理下的应用系统之间形成天然的数据孤岛,项目与项目之间往往会需要某些数据,以目前的方案实现起来相当困难,并且已有的设计方案很难做到高可用(数据一致性问题、业务耦合度过高,性能也不高)

为此我们需要能够集中管理并且能够低延时的同步和查询数据的中间服务

Continue reading

DDD

首先就有一个疑问,什么是DDD?

用英文的全称是Domain-Driven Design,领域驱动设计,其主要的思想是,我们在设计软件时先从业务出发,理解真实的业务含义,再将业务中的一些概念吸收到软件建模中来,其实网上一搜一大把,概念其实很抽象,但实际上又是很贴合真实的开发,为啥我们好像从来没听过但又为何提起来呢?

Continue reading