概述
毫无疑问,Spring Cloud是目前微服务架构领域的翘楚,无数的书籍博客都在讲解这个技术。不过大多数讲解还停留在对Spring Cloud功能使用的层面,其底层的很多原理,很多人可能并不知晓。因此本文将通过大量的手绘图,给大家谈谈Spring Cloud微服务架构的底层原理。
实际上,Spring Cloud是一个全家桶式的技术栈,包含了很多组件。本文先从其最核心的几个组件入手,来剖析一下其底层的工作原理。也就是Eureka、Ribbon、Feign、Hystrix、Zuul这几个组件。
目录
- 1.Mysql
- 2.CHAR 与 VARCHAR 的区别?
- 3.能说下myisam 和 innodb的区别吗?
- 4.你能说下事务的基本特性和隔离级别吗?
- 5.并发问题 – 脏读、不可重复读、幻读?
- 6.事务的隔离级别?
- 7.说说自增主键、UUID?
- 8.mysql 的约束分类?
- 9.drop、delete 与 truncate 的区别:
- 10.隐式事务、显式事务?
- 11.存储过程
- 12.你们数据量级多大?分库分表怎么做的?
- 13.那分表后的ID怎么保证唯一性的呢?
- 14.那分表后的ID怎么保证唯一性的呢?
- 15.分表后非sharding_key的查询怎么处理呢?
- 16.说说mysql主从同步怎么做的吧?
- 总结
1.Mysql 中有哪几种锁?
(1)表级锁:开销小,加锁快。不会出现死锁,锁定粒度大,发生锁冲突的概率高,并发度低。
(2)行级锁:开销大,加锁慢。会出现死锁,锁定粒度小,发生锁冲突的概率低,并发度高。
(3)页面锁:开销时间、加锁时间、锁定粒度在 表级锁 与 行级锁 之间,会出现死锁,并