一些文章精选

原文链接: www.baidu.com

文章目录

  • 1.java相关
    • 1.1 Java基础
    • 1.2 Java JVM相关
    • 1.3 Java多线程、并发
  • 2. mysql
    • 2.1 mysql crud
    • 2.2 mysql 索引
    • 2.3 MySQL事务
    • 2.4 主从
    • 2.5 分库分表
  • 3. spring boot
    • 3.1 springboot一些小功能
    • 3.2 spring boot参数配置
    • 3.3 spring boot调优
  • 4. dubbo
  • 5. 分布式
  • 6. redis

1.java相关

1.1 Java基础

文章 相关
为什么 String 的 hashCode 选择 31 作为乘子?
为啥需要序列号ID
基于注解实现的策略模式优化switch case 我的demo代码

1.2 Java JVM相关

内容
springbootJVM调优

1.3 Java多线程、并发

文章 相关
长连接的心跳及重连 可以参考dubbo的心跳
基于时间轮的延时消息 可以参考Netty 中的 HashedWheelTimer

2. mysql

2.1 mysql crud

文章
MySQL累加
MySQL性能以及查询优化

2.2 mysql 索引

2.3 MySQL事务

文章 相关
1. 数据库缓存和数据库的一致性

笔记:
1.先更新数据库,再删除缓存

  1. 更新数据的时候先更新数据库,再删除缓存,为啥是要删除缓存,而不是更新呢?
  2. 为了防止一直在更新,而不查询的操作
  3. 如果删除缓存失败了,怎么办?数据就不一致了
  4. 解决方案是:先删除缓存,再更新数据库

2. 先删除缓存,再更新数据库
6. 如果修改还没有完成,又来了一个请求,读缓存发现是NULL,就去数据库查询到了旧的值,放入缓存中,完了,数据又不一致了,怎么解决
7. 借助一个队列,每次更新数据往缓存中添加一个更新数据的id,如果有一个更新数据的操作正在执行,这时缓存肯定为NULL,但是这时候又来了一百个请求数据的接口,其实就可以往队列里面添加100个请求更新缓存的id,这100个请求数据的接口,其实可以变成一个,因为只要中间没有其它的请求,然后就可以让线程处理消息队列就好了,到那时会有请求超时的问题,链接中有解决方案

2.4 主从

2.5 分库分表

3. spring boot

文章 github
spring boot如何启动

3.1 springboot一些小功能

文章 相关
springboot注解
springbootWebsocket在线聊天
普通、时间轮和分布式定时任务
springboot一些高级配置
springboot读写分离

3.2 spring boot参数配置

3.3 spring boot调优

4. dubbo

文章 相关
dubbo优雅停机

5. 分布式

文章 相关
分布式事务

6. redis

文章 相关
redis内存满了怎么办
redis数据结构的应用和三主三从集群的搭建

你可能感兴趣的:(文章集锦)