之前有小伙伴说面试中被问到了这个问题,消息中间件如何确保消息顺序,因为松哥之前出过一个 RabbitMQ 的系列教程(公号【江南一点雨】后台回复 rabbitmq
),所以他就跑来微信上问我,那么今天我们就来稍微捋一捋这个话题。
之前有小伙伴说面试中被问到了这个问题,消息中间件如何确保消息顺序,因为松哥之前出过一个 RabbitMQ 的系列教程(公号【江南一点雨】后台回复 rabbitmq
),所以他就跑来微信上问我,那么今天我们就来稍微捋一捋这个话题。
[TOC]
前面跟小伙伴们分享的索引相关的内容,基本上都是在 where 子句中使用索引,实际上,索引也还有另外一个大的用处,那就是在排序中使用索引,今天我们就来聊聊这个话题。
如果你的查询中用到了索引,这是一个进步,如果能够更进一步,用到了覆盖索引,那么就更牛了!当我们设计一个索引的时候,如果能够从一个更加全面的角度去设计这个索引,不仅考虑到 where 中的条件,还能够考虑到整个 SQL,那么无疑这个索引的设计将是非常成功的。
当然不能为了覆盖而覆盖。
前面一篇文章,松哥和大家聊了 MySQL 中的索引合并,虽然 MySQL 提供了索引合并机制来提升 SQL 执行的效率,然而在具体实践中,如果能避免发生索引合并是最好的,毕竟这是没办法的办法,是一个下下策。发生索引合并大概率是因为我们索引在设计的时候就有问题,设计好联合索引,我们就能在一定程度上避免发生索引合并问题。
这个系列其实更完了好久了,我也做了相应的文章索引,不过之前误删了几篇文章,导致有的小伙伴在线学习的时候,文章链接打不开,索性,还是整个 PDF 吧,然后把最近更新的几篇关于 Spring Security 的文章也收录进去了,方便大家学习。
小伙伴们知道,我们在创建 Spring Boot 项目的时候,默认都会有一个 parent,这个 parent 中帮我们定了项目的 JDK 版本、编码格式、依赖版本、插件版本等各种常见内容,有的小伙伴可能看过 parent 的源码,这个源码里边有这么一个配置:
[TOC]
在前面的文章中,松哥和小伙伴们分享了 MySQL 中,InnoDB 存储引擎的数据结构,小伙伴们知道,当我们使用索引进行搜索的时候,每一次的搜索都是在某一棵 B+Tree 中搜索的,如果使用了二级索引的话,可能还会涉及到回表。
在上篇文章中,松哥和小伙伴们分享了 MySQL 的聚簇索引,也顺便和小伙伴们分析了为什么在 MySQL 中主键不应该使用随机字符串。但是主键不用随机字符串用什么?主键自增?主键自增就是最佳方案吗?有没有其他坑?今天我们就来讨论下这个话题。
Update your browser to view this website correctly. Update my browser now