数据库中间件
静谧之心
专业摩的佬
业余吉他手
退役喷子
展开
-
mongodb 单事务内使用多线程加速的简单例子
下面是java 操作 mongo 实现单事务内使用多线程的例子。事务内 如果有重复性比较强且线程安全的重复性循环操作.可以考虑使用并行来替代循环。原创 2022-09-15 10:51:17 · 817 阅读 · 0 评论 -
mysql8.0 Innodb cluster 日常运维: 集群搭建, 异常节点回归, 数据备份/恢复
innodb cluster 部署架构图生成mysqlrouter的配置文件mysqlrouter --bootstrap root@mysql-122:3306 --directory=/etc/mysqlrouter --user=root --conf-use-sockets --force备份数据(可用于恢复集群数据)注意: 数据量过大时, 推荐挂载磁盘mysqldump -uroot -p -q --single-transaction --master-data=2 mpt_cr原创 2022-05-15 17:31:36 · 6288 阅读 · 1 评论 -
MySQL索引失效的七种情况
转载: https://blog.csdn.net/weixin_39129067/article/details/121315567模 型 数 空 运 最 快口诀字面意思就是,要运送一个产品模型的话,要用空运,不要用陆运和海运,数空运最快。叫作:模型数空运最快。下面我拆开逐字讲解一下:模:模糊查询的意思。like的模糊查询以%开头,索引失效。比如:SELECT * FROM user WHERE name LIKE ‘%老猿’;型:代表数据类型。类型错误,如字段类型为varchar,whe原创 2021-12-27 11:02:14 · 755 阅读 · 5 评论 -
使用CGLib动态代理jdbc原生类来实现应用层无感知的proxy层面的SaaS分库支持
本文紧接上一篇独家首发! java助力mycat实现动态添加数据源, 实现SaaS新增租户秒登独立数据库使用了动态代理来代理了jdbc的PreparedStatement对象,是SaaS应用层实现的具体对接:这个纯属我个人考虑开发效率搞的骚操作, 因为动态代理肯定是没有一个一个重写这种静态编译效率高, 希望给大家多一种解决思路~~public class CGLIBProxyPreparedStatement { static String s = "executeupdate,execu原创 2021-07-14 18:07:14 · 3354 阅读 · 0 评论 -
越过时针回拨的坑, 解决重启导致的雪花算法id重复问题, 文末附送踩坑总结大礼包
在上一篇文章中通过PowerMockito来模拟时钟回拨, 验证改进版雪花算法是否起效我们了解了什么是时针回拨, 怎样去解决它, 但是像雪花算法这种高性能的id生成器, 比较娇贵, 比如在我将这个算法投入到生产之前, 发现这个算法在重启之后再压测的时候, 会出现大量重复的id, 当时就猜测可能算法本身有一个记载状态的属性, 去读源码, 果然找到了, 这个属性叫epoch.Id重复发生原因:epoch对应该算法第一次初始化传入的时间, 也就是算法的生日~~因为这个epoch在每次启动的时候默认传入原创 2021-07-14 17:35:11 · 4710 阅读 · 1 评论 -
mysql 主从, 多主多从, cluster区别
主从 读写分离cluster集群多节点同时读写主从写压力扩展就是多套主从,相对麻烦,但是架构灵活,性能好多点读写cluster模式都避不开一个写性能问题,写一个节点需要同步到所有节点才能算一个事务, 比较麻烦...原创 2021-04-07 16:38:18 · 927 阅读 · 0 评论 -
Mysql中间件系列Sharding-Sphere 之 Sharding-JDBC 快速入门
最近需要重构下公司SaaS系统的分库分表的中间件, 发现2020年刚孵化完毕的Sharding-Sphere还是不错的, 故有了此文.话不多说直接干货, 直接一个分库分表小demo献上!首先, 这个小demo做了什么事说明下:提供course课程的crud利用course的id进行 水平分表利用course所属的userId 进行水平分库Demo很简单, 结构如下:首先, maven依赖, 版本其实无所谓, 现在的兼容性比之前强了很多, 主要是要将shardingsphere支持引入,原创 2021-02-05 15:22:00 · 762 阅读 · 0 评论