聊聊数据库和缓存一致性的几种实现方式
缓存是互联网高并发系统里常用的组件,由于多增加了一层,如果没有正确的使用效果可能适得其反,诸如“缓存是删除还是更新?”,“先操作数据库还是先操作缓存?”都是些老生常谈的话题,今天我们就来聊一聊缓存与数据库的双写一致性的解决方案。 Cache...
缓存是互联网高并发系统里常用的组件,由于多增加了一层,如果没有正确的使用效果可能适得其反,诸如“缓存是删除还是更新?”,“先操作数据库还是先操作缓存?”都是些老生常谈的话题,今天我们就来聊一聊缓存与数据库的双写一致性的解决方案。 Cache...
小伙伴大家好,我是 jack xu,今天跟大家讲一讲 @Transactional,这个注解相信大家应该都用过,它能保证方法内多个数据库操作要么同时成功、要么同时失败。使用 @Transactional 注解时需要注意许多的细节,虽然它看起...
获取 IDEA 激活码、PyCharm 激活码、WebStorm 激活码和 DataGrip 激活码,提供详细破解教程与永久激活方法。支持 IDEA 永久激活与破解,免费获取注册码与激活码,解决 2024/2025 版本激活问题,轻松实现所有 JetBrains 工具的激活。
小伙们好,我是jack xu,今天跟大家讲一个老生常谈的话题,单例模式是最常用到的设计模式之一,熟悉设计模式的朋友对单例模式都不会陌生。网上的文章也很多,但是参差不齐,良莠不齐,要么说的不到点子上,要么写的不完整,我试图写一篇史上最全单例模...
什么是 Spring Boot Spring Boot 基本上是 Spring 框架的扩展,它消除了设置 Spring 应用程序所需的复杂例行配置。我们在使用 Spring 框架的时候,我们接触得比较多的应该是 Spring MVC、 IO...
什么是索引 数据库索引,是数据库管理系统(DBMS)中一个排序的数据结构,以协助快速查询、更新数据库表中数据。 大家看下上面的图就很清晰明了了,索引就是查字典嘛,比如说我要去字典里面找个帅字,你肯定不会从头找到尾,一页一页翻吧,你肯定是先去...
小伙们大家好,本篇是并发编程的第三篇,上一节跟大家讲了synchronized,这一节我们来聊聊他的好兄弟volatile,volatile的功能稍微差一点,他只有可见性和有序性,那么他的底层是如何保障可见性和有序性,以及什么是Java内存...
大家好,我是jack xu,不知道从什么时候开始,本来默默无闻的布隆过滤器一下子名声大燥,在面试中面试官问到怎么避免缓存穿透,你的第一反应可能就是布隆过滤器,缓存穿透=布隆过滤器成了标配,但具体什么是布隆过滤器,怎么使用布隆过滤器不是很清楚...
前言 大家好,我是jack xu,本篇是并发编程的第二篇,今天跟大家聊一聊线程池的那点事。本篇文章有点长,小伙们静下心、耐下心来把他看完。。 为什么要使用线程池 1)降低创建线程和销毁线程的性能开销 2)提高响应速度,当有新任务需要执行是不...
前言 小伙伴大家好,我是jack xu,今天跟大家来聊一聊synchronized。本篇是并发编程中的第一篇,为什么说是第一篇呢,因为并发编程涉及的东西太多太多,晦涩难懂,随便一个知识点拉出来都可以写一篇文章,如此算来写完并发编程一个系列最...
前言 大家好,我是jack xu,本篇是我在掘金的首秀,我的英文名来源于jack ma,马云,所以大家也可以叫我徐云,即我希望像马云一样富有、成功,另外我名字中的杰与jack也是谐音关系。 今天给大家带来的是一篇docker的科普入门篇,本...