前言 相信大家一定遇到过需要在生产环境备份用户的mysql数据,以便满足数据的存储、迁移等操作。下面我将介绍我是如何操作的。 满足每天定期备份,备份文件的有效期是7天,备份数据为:患者信息、用户信息 环境:linux Ubuntu docker mysql 废话不多说,下面 show you the code 其中a.sh 的脚本内容如下: cd…
很多人会直接只用@Async来执行异步操作。但是这里面有一个问题,如果都是用spring的默认实现,是有坑的。 当我们开启 EnableAsync注解 就可以使用@Async注解来执行异步操作了。 我们现在通过EnableAsync注解去打开spring异步世界的坑。 走JDK的动态代理:…
当我们想用一张或几张图来描述我们的系统时,是不是经常遇到以下情况: 对着画布无从下手、删了又来? 如何用一张图描述我的系统,并且让产品、运营、开发都能看明白? 画了一半的图还不清楚受众是谁? 画出来的图到底是产品图功能图还是技术图又或是大杂烩? 图上的框框有点少是不是要找点儿框框加进来? 布局怎么画都不满意………
手动注入的不足 上篇文章中介绍了依赖注入中的手动注入,所谓手动注入是指在xml中采用硬编码的方式来配置注入的对象,比如通过构造器注入或者set方法注入,这些注入的方式都存在不足,比如下面代码: public class A{ private B b; private C c; private D d; private E e; .... private N…
本文主要讨论一下bean的创建和销毁的顺序,如何来干预bean的创建和销毁的顺序。 无依赖bean创建和销毁的顺序 我们先来看一下没有任何依赖的bean的创建和销毁的顺序。 下面的xml中定义了3个bean: <?xml version="1.0" encoding="UTF-8"?> <beans…
消息系统中随机索引的特点 RocketMQ 广泛使用于各类业务场景中,在实际生产场景中,用户通常会选择消息 ID 或者特定的业务 Key(例如学号,订单号)来查询和定位特定的一批消息,进而定位分布式系统中的复杂问题。传统方案下,消息索引的存储是基于数据库系统或者基于本地文件系统实现的,受限于磁盘容量,很难满足海量数据的写入诉求。…
场景 很多时候当我们完成某些业务后需要给用户推送相关消息提醒。对于这种非核心业务功能我们可以拿出来,创建一个事件去异步执行,从而实现核心业务和子业务的解耦。 实现 定义事件类 Event 创建一个类,继承 ApplicationEvent ,并重写构造函数。 ApplicationEvent 是Spring提供的所有应用程序事件扩展类。 public…