240 发简信
  • SpringBoot服务无法读取系统变量,我重新认识了profile和bashrc

    背景 CentOS服务器上,我们用Systemd部署了一个SpringBoot服务。这个服务会用ProcessBuilder去调用机器上一个C+...

  • 120
    深入理解Threadlocal

    前言 并发是Java开发中绕不开的一个话题。现代处理器都是多核心,想要更好地榨干机器的性能,多线程编程是必不可少,所以,线程安全是每位Java ...

  • 120
    Java四种引用详解

    前言 为了满足对不同情况的垃圾回收需求,从Java从版本1.2开始,引入了4种引用类型(其实是额外增加了三种)的概念。本文将详细介绍这四种引用。...

  • 120
    如何优雅地重启Spring Scheduler

    定时任务是一个比较常见的功能,在某些情况下,需要重新启动或者是重设Scheduler Job,但是官方的API上都没有提供类似restart的方...

  • 120
    InstanceAlreadyExistsException的解决方案

    背景 JMX Java Coder们都知道,Java提供了JMX(Java Management Extensions) attach的机制(如...

  • 120
    PF4J中FileSystem的Bug导致无法删除文件

    背景 我们有一个Plugin的管理系统,可以实现Jar包的热装载,内部是基于一个Plugin管理类库PF4J,类似于OSGI,现在是GitHub...

  • 120
    SimpleDateFormat线程安全问题深入解析

    背景 众所周知,Java中的SimpleDateFormat不是线程安全的,在多线程下会出现意想不到的问题。本文将解析SimpleDateFor...

  • 120
    Bloom过滤器

    引文 思考一个问题:从大量数据里面如何高效率地去重?有过一点编程经验的人都知道,可以通过Set这种数据结构来做到。比如HashSet,采用了Ha...

  • 120
    表重复更新引发的问题

    1. 问题描述 我们的工程部署在两个DC上,双活。两边的服务器以及逻辑都是一样的,也分别都有自己的业务。数据库用的Oracle,之间有同步,用的...