十字路口

星期四, 一月 20, 2022

Spring Cache Concurrency Problems

 1. invoke and complete @CacheEvict during @CacheableImagine that the @Cacheable method reads some data at time 1, and the data changed at time 2. The @CacheEvict method evicts the cache, and when time 4 the @Cacheable...
Read more

Java volatile 关键字

 本文使用汇编对 volatile 关键字进行分析汇编参数-XX:+UnlockDiagnosticVMOptions -XX:+PrintAssembly -XX:+TraceClassLoading -Xcomp -XX:CompileCommand=dontinline,*VolatileTest.main -XX:CompileCommand=compileonly,*VolatileTest.main未使用 volatile 变量的示例代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 package com.pohvii.note.basic.concurrent; /** * @author zhanglei ...
Read more

FLINK 选举机制

 flink HA 有两种实现, ZooKeeper 和 Kubernetes, flink 对两者进行了封装, 定义如下// 选举服务 interface LeaderElectionService { // 启动选举 start(LeaderContender) // 停止选举 stop() // 确认主权 confirmLeadership(..) } // 参选者 interface LeaderContender...
Read more

Hibernate 一级缓存

一级缓存hibernate 在应用层维护一个可重复读的持久上下文在使用主键加载实体的时候,hibernate 首先在持久上下文中根据主键查询实体,如果存在则返回,不存在则请求数据库在使用非主键加载实体的时候,hibernate 请求数据库,首先从结果集中解析出实体的主键,然后在持久上下文中根据主键查询实体,如果存在则返回,不存在则继续解析剩余部分1. 例子1.1. findById1 2 3 4 5 6 7 8 @Test @Transactional void l1CacheTest() { // query employeeRepository.findById(10001); 1 // no query employeeRepository.findById(10001);...
Read more

星期四, 八月 08, 2019

为什么使用 macOS

Why Mackintosh? 菜单栏统一,所有应用的菜单都在屏幕顶端,并且菜单可搜索 ​ ​ 任意应用可卸载,rm -rf 从来没让我失望过,不会出现文件在使用中无法删除的问题 没有中间弹窗广告、右下角广告,来抢夺用户注意力,打断思路,影响工作效率 实时保存,大部分应用都支持实时保存,还有TimeMachine,可恢复任意文件 不需要频繁重启,windows各种更新动不动就要重启,windows重启后应用就全部关闭了,MacOS 系统重新启动(包括意外关机再开机、重装)后可以还原到原有的工作状态 系统重装只会替换系统文件(抹盘除外),个人资料不会丢失,和重装前一模一样 Why...
Read more

星期日, 五月 01, 2016

使用 ffmpeg 合并 bilibili for mac 下载的分段视频

效果 下载的分段视频: 合并后: 原理 使用ffmpeg转换flv到mp4 ffmpeg -i out.flv -vcodec copy -acodec copy out.mp4 使用ffmpeg合并MP4文件 ffmpeg -i "Apache Sqoop Tutorial Part 1.mp4" -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate1.ts ffmpeg -i "Apache...
Read more