Spring任务不执行问题排查

本博客使用了一个自动任务每天23点零5秒自动生成订阅,部署时正常执行,但是最近发现不能执行了。 spring配置文件 ...

阅读更多

MySQL事务中UPDATE使用的是行锁还是表锁

本文通过实验的角度,分析MySQL事务中UPDATE语句是行锁还是表锁 有如下结构: CREATE TABLE `fund_sum` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `fund_code` varchar(10) COLLATE utf8mb4_bin NOT NULL COMMENT '基金代码', `f...

阅读更多

在word中修改默认粘贴选项

最近在整理一些文档,涉及多个窗口间来回拷贝粘贴,word现在很智能,可以将源格式一并粘贴到word中,这是一个比较实用的功能,word将这项功能设置成默认选项,这样我们粘贴纯文本就必须右键选择粘贴选项了,比较麻烦。但是一般而言,使用源格式频率并不高,有时容易将目标格式搞混乱。 对于上面问题,我们可以在文件-选项-高级-剪切、复制和粘贴中,将 从其他程序粘贴 这一项下拉选择 仅粘贴文本,这样我们就可...

阅读更多

Linux命令:tr

命令描述 从标准输入中读取文本,替换字符并写到标准输出 示例 ps -ef | tr ' ' '-',我们常用到的是tr '\0' '\n',用于把0字符替换为换行便于阅读。 参数 这个命令除了输入要替换和替换为的字符外,几乎不需要额外参数。比较常用的是指定要替换的字符时,可以使用特殊标识替代一部分的字符。 CAHR1-CHAR2,按ascii升序排列的从CHAR1到CHAR2的所有字符 [:al...

阅读更多

Linux命令:cut

cut命令用于从文件或标准输入中读取文本,使用指定的分隔符来显示参数指定的列 例如: cat test.txt 1,2,3,4,5 5,6,7,8,9 10,11 cat test.txt | cut -d ',' -f1,3 1,3 5,7 10 常用参数: -d 指定分隔符 -f 指定需要输出的列(字段),可以指定单个,多个和范围的列,如-f1(第一列),-f1,3(第一三列),-f1-...

阅读更多

文件扫描跨天问题

外部数据交互,很多会使用sftp,数据文件逐天扫描的方式。 文件扫描我们一般每隔30分钟,扫描当天的数据文件。如果扫描到并且处理成功,则记录,下次则不再处理。 这种场景极端情况下会出现跨天问题,比如23:35扫描第一天的文件,这时外部还没有上传数据文件,接下来23:40外部文件上传成功,但是下一次扫描的时间是第二天的00:05,只会扫描第二天的数据文件,这样第一天的数据文件则无法扫描到。 针对上述...

阅读更多

数据列表的双向同步实现

背景 最近在做一个数据列表的双向同步,有几点限制条件: 同步双方系统时间可能相差比较大 网络不一定能连通,同时也不存在一个随时都可以连通的第三方 双方系统都能修改若干次(也可同时),即使现在网络没有连通 同步只能一方主动触发,另一方无法决定何时同步(即使网络畅通) 分析 我们逐个分析上述限制条件: 我们无法直接比较时间最新来同步; 不能实时同步,同时也无法使用全局的递增id来标识版本 很难通过被动...

阅读更多

Linux命令:vim

本文介绍vim的常见用法: 保存退出:底行模式下,:wq! 查找:命令模式下,/search_str回车,按下n定位到下一次出现位置,shift+n上一次出现位置 向上,向下翻页:ctrl+b(back),ctrl+f(forward),同时我们也可以使用PageUp和PageDown,这个比较通用 移动到行首行尾:一般我们使用HOME和END键盘,这个比较通用 显示行号,鼠标可点击:底行模式下,...

阅读更多