Category: Java Architecture

[转]布谷鸟过滤器 0

[转]布谷鸟过滤器

为解决布隆过滤器不能删除元素的问题,布谷鸟过滤器横空出世。 论文《Cuckoo Filter:Better Than Bloom》作者将布谷鸟过滤器和布隆过滤器进行了深入的对比。 相比布谷鸟过滤器而言,布隆过滤器有以下不足: 查询性能弱 空间利用效率低 不支持反向操作(删除) 不支持计数。

[汇总]MySQL优化经验和理论 0

[汇总]MySQL优化经验和理论

MySQL每秒50w+的写入,如何实现? innodb,它是我们建表的首选存储引擎   为什么 MySQL 索引要使用 B+树而不是其它树形结构?比如 B 树? 那么可以算出一棵高度为2的B+树,能存放1170*16=18720条这样的数据记录。根据同样的原理我们可以算出一个高度为3的B+树可以存放:1170*1170*16=21902400条这样的记录。 一款SQL自动检查神器,再也不用担心SQL出错了!Yearning 两类非常隐蔽的全表扫描,不能命中索引 第一类:“列类型”与“where值类型”不符,不能命中索引,会导致全表扫描(full table scan)。 第二类:相join的两个表的字符编码不同,不能命中索引,会导致笛卡尔积的循环计算(nested loop)。

[汇总]分库分表经验 0

[汇总]分库分表经验

Sharding-jdbc教程:Springboot整合sharding-jdbc实现读写分离 Spring Boot集成Sharding-jdbc + Mybatis-Plus实现分库分表 Spring Boot + MyBatis + Druid + PageHelper 实现多数据源并分页 一种基于 MyBatis 框架的分库分表方案!造轮子     分库分表,可能真的要退出历史舞台了! 对于关系型数据库来说,走向分布式也终将成为必然。随着 Raft 等协议应用越来越广泛,分布式数据库的可靠性也逐渐得到了保证。如果你以前因为事务问题而拒绝采用某些 NoSQL 产品,那么如今完全兼容 MySQL 的分布式数据库,你没有理由再说 No。 云厂商,直接提供了像Aurora、PolarDB之类的MySQL增强,更有类似 TiDB、OceanBase 这样纯粹的分布式数据库,越来越多的业务走向了这个终途。当你的团队加班加点验证着分库分表中间件的时候,却发现其实换个兼容的存储就能玩得转,你会怎么选,简直不用再多说。 当然,一旦你选用了分布式数据库,以前的 DBA 经验可能就不管用了,比如说索引及其二级索引。你的团队不得不学习新的知识,来应对分布式环境。...

[转]数据库连接池的大小与性能 0

[转]数据库连接池的大小与性能

1. 一、前言 基本上来说,大部分项目都需要跟数据库做交互,那么,数据库连接池的大小设置成多大合适呢? 一些开发老鸟可能还会告诉你:没关系,尽量设置的大些,比如设置成 200,这样数据库性能会高些,吞吐量也会大些! 你也许会点头称是,真的是这样吗?看完这篇文章,也许会颠覆你的认知哦!

[汇总]RocketMQ经验 0

[汇总]RocketMQ经验

生产环境下 RocketMQ 为什么不能开启自动创建主题? 弘康人寿基于 RocketMQ 构建微服务边界总线的实践

[汇总]RPC经验总结 0

[汇总]RPC经验总结

东方证券正式开源其微服务框架gRPC-Nebula 如何设计一个短小精悍、可拓展的RPC框架?(含实现代码) 最流行6种微服务RPC技术,看完就知道用哪一种了 100 行代码透彻解析 RPC 原理

[转]千万级用户的大型网站如何设计其高并发架构 0

[转]千万级用户的大型网站如何设计其高并发架构

目录 (1)单块架构 (2)初步的高可用架构 (3)千万级用户量的压力预估 (4)服务器压力预估 (5)业务垂直拆分 (6)用分布式缓存抗下读请求 (7)基于数据库主从架构做读写分离 (8)总结 本文将会从一个大型的网站发展历程出发,一步一步的探索这个网站的架构是如何从单体架构,演化到分布式架构,然后演化到高并发架构的。 1.