作者:zhanxuewei

手把手带你搭建CI/CD工作流

什么是CI/CD? 持续集成(ContinousIntergration,CI)是在源代码变更后自动检测、拉取、构建和进行自动化测试的过程,属于开发人员的自动化流程。该解决方案可以解决在一次开发中有太多应用分支,从而导致相互冲突的问题。其基本思路是,自动化监测代码仓库的变化并拉取最新代码、编译构建和

zhanxuewei zhanxuewei 发布于 2025-03-16

SSO单点登录设计方案及落地

什么是SSO? 单点登录(Single Sign On,简称 SSO),是指在多系统应用群中登录一个系统,便可在其他所有系统中得到授权,无需再次登录。这种技术目前得到了广泛使用,它核心解决了一个问题:用户只需要登录一次,就可以访问所有相互信任的应用系统。SSO是一种思想,或者说是一种解决方案,是抽象

zhanxuewei zhanxuewei 发布于 2025-03-16

equals()和hashCode()有什么关系?为什么要重写它们?

一、核心概念: 1.equa1s()定义: equals()是Object类中的方法,用于判断两个对象是否相等。 默认实现是比较对象的引用地址(==),即它们是否是同一个对象。 我们需要重写equals()方法,让其比较对象内容而非地址。 2.hashCode()定义: hashCode()方法返回

zhanxuewei zhanxuewei 发布于 2025-03-09

RocketMQ如何保证消息不丢失?

一、消息从产生到消费过程 一个消息从生产者产生,到被消费者消费,主要经过这 3 个过程: 生产者产生消息 消息发送到存储端,保存下来 消息推送到消费者,消费者消费完,ack应答 因此如何保证MQ不丢失消息,可以从这三个阶段阐述: 生产者保证不丢消息

zhanxuewei zhanxuewei 发布于 2024-06-22

RocketMQ4.7.1集群搭建

一、部署前的说明 本文根据官网资料搭建,官方网站部署文档地址:https://rocketmq.apache.org/zh/docs/4.x/deployment/01deploy 本文采用3台服务器,多节点(集群)多副

zhanxuewei zhanxuewei 发布于 2024-06-05

什么情况线程会进入 WAITING 状态

线程进入WAITING状态有以下几种情况: 调用Object.wait()方法,该方法会使得当前线程进入等待状态,等待其他线程调用同一个对象的notify()或notifyAll()方法唤醒该线程。 调用Thread.join()方法,该方法会使得当前线程等待指定线程的结束,当指定线程结束时,当前线

zhanxuewei zhanxuewei 发布于 2024-04-27

什么是线程调度器和时间分片?

线程调度器(Thread Scheduler)是操作系统内核中的一个重要组件,负责分配并管理处理器时间片,控制多线程程序的执行顺序。当有多个线程同时运行时,线程调度器会在这些线程之间进行切换,使得每个线程都有机会使用 CPU 资源,并实现任务的并发执行。 时间分片(Time Slicing)是指将可

zhanxuewei zhanxuewei 发布于 2024-04-27

Fork/Join框架,与传统线程池有何不同

Fork/Join框架是一个用于并行化执行任务的框架,它是Java 7引入的一个新特性,专门用于方便地利用多核CPU的性能优势,通过分治法的策略来将任务分解为更小的子任务,然后并行执行这些子任务,最后再合并子任务的结果。 Fork/Join框架的核心是ForkJoinPool,它是一种特殊的线程池,

zhanxuewei zhanxuewei 发布于 2024-04-27

线程池中核心线程数量大小怎么设置

CPU密集型任务:比如像加解密,压缩、计算等一系列需要大量耗费 CPU 资源的任务,大部分场景下都是纯 CPU 计算。尽量使用较小的线程池,一般为CPU核心数+1。因为CPU密集型任务使得CPU使用率很高,若开过多的线程数,会造成CPU过度切换。 IO密集型任务:比如像 MySQL 数据库、文件的读

zhanxuewei zhanxuewei 发布于 2024-04-27

什么是不可变对象,对写并发有什么帮助

不可变对象(Immutable object)是一种一旦创建后其状态就不能被修改的对象。在Java中,不可变对象包括String、基本类型的包装类(如Integer、Double等)等。 不可变对象对写并发有如下帮助: 线程安全:不可变对象是线程安全的,因为它们不会被其他线程修改。因此,多个线程可以

zhanxuewei zhanxuewei 发布于 2024-04-27
上一页 下一页