彭峰的博客
05
01
软件开发原则 软件开发原则
https://mp.weixin.qq.com/s/WAa4ezth4CGwyjJD7FcP6w 软件开发原则 剔除无效状态 数据一致性让系统更简单 数据设计先行 杀鸡不要用牛刀 避免为了局部简单性而增加全局复杂性 识别内在的复杂性 使用
2021-05-01
01
Arthas Arthas
查看JVM 信息 sysprop:打印所有的System Properties信息 sysenv:获取到环境变量 jvm:打印出JVM的各种详细信息 dashboard:查看当前系统的实时数据面板 查看已加载的类 sc:查找到所有JVM已
2021-05-01
01
Mysql 查询优化 Mysql 查询优化
客户端/服务器端通信协议使用半双工的通信方式。使用的是无控制流的协议。 查询线程的状态 Sleep:线程等待客户端发请求 Query:正在执行查询语句或者返回结果给客户端 Locked:等待锁(表锁或者行锁) Analyzing and
2021-05-01
01
Mysql 缓存 Mysql 缓存
查询缓存机制 缓存是放在内存当中的。 如何查询命中缓存的缓存查询策略:全局扫描。 不放入缓存的情况:使用不确定的值。如NOW(),CURRTEN_DATE()等 使用缓存会有额外的开销: 读之前要查询缓存是否命中 将结果存储缓存 在写数据
2021-05-01
01
Mysql 高级特性 Mysql 高级特性
查询缓存机制缓存是放在内存当中的。 如何查询命中缓存的缓存查询策略:全局扫描。 不放入缓存的情况:使用不确定的值。如NOW(),CURRTEN_DATE()等 使用缓存会有额外的开销: 读之前要查询缓存是否命中 将结果存储缓存 在写数据的
2021-05-01
01
Mysql 访问优化 Mysql 访问优化
优化数据库访问确认检索的数据超过需求的数据几种典型不好的操作 查询不需要的数据 多表关联时获取所有列 获取所有的列 重复查询相同的数据 确认MySQL服务器扫描的数据超过需求的数据三个指标 执行时间 扫描的行数 检查的行数 wher
2021-05-01
01
Mysql 特殊查询优化 Mysql 特殊查询优化
优化查询优化关联查询 确保ON或者USING子句中的列有索引 确保GROUP BY和ORDER BY中的表达式只涉及到一个表中的列 优化GROUP BY和DISTINCT采用查找的标识列分组的效率会比其他列高 优化LIMIT分页如果分页偏
2021-05-01
01
DB瓶颈的发现 DB瓶颈的发现
Benchmarking(基准测试)作用:测量系统的性能 功能: 测量当前应用的性能 检验系统的可扩展性 规划扩展。估计未来需要多少的硬件,网络资源等 测试应用在不断变化的环境中的承受能力 可以比较不同硬件上、软件和操作系统上的性能比较
2021-05-01
01
Mysql 引擎 Mysql 引擎
MySQLmysql使用文件系统存储表名和表的。 使用.frm文件存储表 MyISAM myISAM提供了全文检索,压缩和空间函数等功能。但是不提供事务支持和行级锁 存储方面使用了数据文件和索引文件分离模式。使用.MYD记录数据,.MYI记
2021-05-01
01
sql范式 sql范式
范式使用范式的好处: 更新操作通常要比不使用范式的要快 几乎不存在重复的数据 规范化的表通常更小,拥有更好的性能 当查询列表的值,不需要使用DISTINCE 和 GROUP BY 进行分组 使用范式缺点: 很多情况下都要联表查询 可能
2021-05-01
12 / 22