Category: Java Architecture
[转]基于Spring Boot+Cloud构建微云架构
1. 前言 首先,最想说的是,当你要学习一套最新的技术时,官网的英文文档是学习的最佳渠道。因为网上流传的多数资料是官网翻译而来,很多描述的重点也都偏向于作者自身碰到的问题,这样就很容易让你理解和操作出现偏差,最开始我就进入了这样误区。官网的技术导读真的描述的很详细,虽然对于我们看英文很费劲,但如果英文不是很差,请选择沉下心去读,你一定能收获好多。 我的学习是先从Spring boot开始的,然后接触到微服务架构,当然,这一切最大的启迪还是感谢我的一个老师,是他给我指明了新的道路,让我眼前一亮,再次感谢。
[转]颠覆微服务认知:深入思考微服务的七个主流观点
微服务架构现在已经成为了企业应用架构的必聊话题,本文沉淀了作者多年工作的所见所闻和实战思考,跳出纯技术的视角去思考架构,去看待微服务,保证利用现有的技术(工具)实现业务价值的最大化。
[汇总]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)。
[汇总]分库分表经验
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 经验可能就不管用了,比如说索引及其二级索引。你的团队不得不学习新的知识,来应对分布式环境。...
[转]数据库连接池的大小与性能
1. 一、前言 基本上来说,大部分项目都需要跟数据库做交互,那么,数据库连接池的大小设置成多大合适呢? 一些开发老鸟可能还会告诉你:没关系,尽量设置的大些,比如设置成 200,这样数据库性能会高些,吞吐量也会大些! 你也许会点头称是,真的是这样吗?看完这篇文章,也许会颠覆你的认知哦!