09 2019 档案
摘要:一、zookeeper概要、背景及作用 zookeeper产生背景: 项目从单体到分布式转变之后,将会产生多个节点之间协同的问题。如: 1. 每天的定时任务由谁哪个节点来执行? 2. RPC调用时的服务发现? 3. 如何保证并发请求的幂等 4. .... 这些问题可以统一归纳为多节点协调问题,如果靠
阅读全文
摘要:尽可能让一切变得简单,用最简单的方式完成工作 能用最少的概念,最精简易懂的概念模型来抽象系统,多一个概念就多一份别人了解系统以及维护系统的复杂度,别人也会质疑多一个概念的意义所在,自己如果没想清楚就容易被diss。 特别是在类的设计中,会发现其实很多时候用一个类就可以表达要干的单一职责了,每个类职责
阅读全文
摘要:实现的方式概述 注意以下的热部署方式在IDEA是默认没有打开自动编译的,手动编译需要快捷键(Ctrl+Shift+F9),自动编译的修改配置如下:(注意刷新不要太快,会有1 2秒延迟) File Settings Compiler Build Project automatically spring
阅读全文
摘要:类记载过程 多个java文件经过编译打包生成可运行的jar包,最终由java命令运行某个主类的main函数启动程序,这里首先需要通过类加载器把主类加载到jvm。 主类在运行过程中如果使用到其他类,会逐步加载这些类。 注意,jar包里的类不是一次性全部加载的,是使用时才加载的。 从类加载到使用整个过程
阅读全文
摘要:之前多篇文章从mysql的底层结构分析、sql语句的分析器以及sql从优化底层分析, 还有工作中常用的sql优化小知识点。面试各大互联网公司必问的mysql锁和事务隔离级别,这篇文章给你打神助攻,一飞冲天。 锁定义 锁是计算机协调多个进程或线程并发访问某一资源的机制。 在数据库中,除了传统的计算资源
阅读全文
摘要:``` 示例表 CREATE TABLE ( int(11) NOT NULL AUTO_INCREMENT, varchar(24) NOT NULL DEFAULT '' COMMENT '姓名', int(20) NOT NULL DEFAULT '0' COMMENT '年龄', varch
阅读全文
摘要:``` 示例表 CREATE TABLE ( int(11) NOT NULL AUTO_INCREMENT, varchar(24) NOT NULL DEFAULT '' COMMENT '姓名', int(20) NOT NULL DEFAULT '0' COMMENT '年龄', varch
阅读全文
摘要:先来看一个栗子 如果用name索引查找数据需要遍历name字段联合索引树,然后根据遍历出来的主键值去主键索引树里再去查出最终数据,成本比全表扫描还高。 可以用覆盖索引优化,这样只需要遍历name字段的联合索引树就可以拿到所有的结果。 可以看到通过select出的字段是覆盖索引,MySQL底层使用了索
阅读全文
摘要:前几篇文章介绍了mysql的底层数据结构和mysql优化的神器explain。后台有些朋友说小强只介绍概念,平时使用还是一脸懵,强烈要求小强来一篇实战sql优化,经过周末两天的整理和总结,sql优化实战新鲜出炉, 大家平时学习和工作中,遇到的90% 的sql优化都会介绍到,介意篇幅过长,分成3篇文章
阅读全文