- 博客(6)
- 收藏
- 关注
原创 关于Redis-AOF重写过程中为何要额外使用AOF重写缓存
AOF重写过程中依然会进行AOF缓冲与旧的AOF文件的同步操作,当同步完成后,AOF缓冲区的内容就会删除,因此当AOF重写完毕后,此时的AOF缓冲区里的内容不一定是AOF重写过程中的完整的写数据。如果不去更新旧的AOF文件,一旦在AOF重写过程中Redis宕机,旧的AOF文件和新的AOF文件都没有完整的内存中的数据,那么重启后就无法去恢复全部的数据。2 子进程重写过程中,主进程依然可以处理客户端的请求,子进程会读取数据库里的所有数据,然后去写到一个新的AOF文件中。4 主进程每次进行写操作后,都会同步到。
2024-11-06 22:35:40
142
原创 关于Spring中单例Bean的线程安全问题
假设有如下情况 线程A和线程B同时访问这段代码,线程A先读取了count的值,然后执行了+1操作,但还未写回内存中去,此时CPU切换去调度进程B,线程A进入就绪队列等待CPU调度,而B顺利执行完这段代码并将结果写回了内存,此时线程A重新被CPU调度,执行写回操作, 本来count应该进行两次+1操作,而最终只完成了一次+1操作,这就造成了线程安全问题。 我们知道,当多个用户同时请求一个服务时,容器会给每个请求分配一个线程,这些线程将会并发执行对应的业务逻辑。,这一步在可以分解成如下的字节码指令。
2024-04-18 22:16:10
530
1
原创 Vue3学习笔记
开发环境和生产环境的切换由Vite进行管理,上述演示开发环境示例,生产环境可以按上述步骤配置完成后,执行run npm build命令构建项目,构建完成后会在根目录下产生一个dist文件夹,里面可以查看我们项目中压缩后的js代码,里面可以查看到使用的url地址为’http://tyust.com’//这两部的含义是将App.vue引入并起名为App,以App为根组件创建一个vue程序,并将其html代码挂在到index.html的id为app的标签内。就相当于一个Vue3的工具库。
2024-02-16 12:44:58
1416
1
原创 使用Vite搭建一个Vue3项目
*也可以在后端对Controller接口层的方法加上@CrossOrigin(origins = “http://localhost:4000”)**来解决,origins表示前端的uri,这样当响应到达浏览器时,就会告诉浏览器不要把我的响应给丢弃,从而前端能展示后端响应数据.https://blog.youkuaiyun.com/qq_42006801/article/details/124830995文档。**首先要安装NodeJS,我们要用到其中的npm命令,可参考这篇。
2024-01-11 23:04:05
635
原创 TypeScript快速入门
TypeScript是JavaScript的超集,具有可选的类型并可以编译为纯JavaScript。TypeScript代码不能直接运行,要先用编译器编译成JavaScript,最终还是靠JavaScript运行,TypeScript要做的只是编译期间时的类型检查。类型别名用来给一个类型起个新名字,使用 type 创建类型别名,类型别名不仅可以用来表示基本类型,还可以用来表示对象类型、联合类型、元组和交集。如TypeScript(对JavaScript进行扩展出来的拥有静态类型的好处的语言)
2024-01-11 20:06:46
1702
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人