
获得徽章 1
赞了这篇文章
赞了这篇文章
#青训营笔记创作活动#
2月13日 打卡day22 今日学习 数据库索引,绝对是MySQL的核心功能之一,如果没有索引机制的数据库,那数据的检索效率绝对是令人无法接受的,毕竟没有索引的表数据,就如同一个普通的文本文件存储在磁盘中。在《索引上篇》中,我们对于MySQL提供的索引机制,从引入,到创建、使用、分类、管理....等进行了全面阐述,相信经过上一篇的讲解后,大家对MySQL索引机制建立了系统化的认知,而本篇则会以上篇为基础,对索引机制进一步加深掌握。
2月13日 打卡day22 今日学习 数据库索引,绝对是MySQL的核心功能之一,如果没有索引机制的数据库,那数据的检索效率绝对是令人无法接受的,毕竟没有索引的表数据,就如同一个普通的文本文件存储在磁盘中。在《索引上篇》中,我们对于MySQL提供的索引机制,从引入,到创建、使用、分类、管理....等进行了全面阐述,相信经过上一篇的讲解后,大家对MySQL索引机制建立了系统化的认知,而本篇则会以上篇为基础,对索引机制进一步加深掌握。
展开
评论
点赞
#青训营笔记创作活动#
2月11日 打卡day21 今日学习 由于MySQL是作为存储层部署在业务系统的最后端,所有的业务数据最终都要入库落盘,但随着一个项目在线上运行的时间越来越久,数据库中的数据量自然会越来越多,而数据体积出现增长后,当需要从表查询一些数据时,效率会越发低下。在正常情况下,表的查询性能和数据量是成反比的,也就是数据越多,查询越慢。
2月11日 打卡day21 今日学习 由于MySQL是作为存储层部署在业务系统的最后端,所有的业务数据最终都要入库落盘,但随着一个项目在线上运行的时间越来越久,数据库中的数据量自然会越来越多,而数据体积出现增长后,当需要从表查询一些数据时,效率会越发低下。在正常情况下,表的查询性能和数据量是成反比的,也就是数据越多,查询越慢。
展开
评论
点赞
#青训营笔记创作活动#
2月10日 打卡day20 今日学习 Bytebase是一款实用的数据库管理及变更工具,让我们在没有客户端的情况下也能方便地进行数据库管理,它的SQL审核功能可以避免开发人员对数据库的误操作。
2月10日 打卡day20 今日学习 Bytebase是一款实用的数据库管理及变更工具,让我们在没有客户端的情况下也能方便地进行数据库管理,它的SQL审核功能可以避免开发人员对数据库的误操作。
展开
评论
点赞
#青训营笔记创作活动#
2月10日 打卡day19 今日学习 慢查询日志记录慢SQL explain分析SQL的执行计划 profile 分析执行耗时 Optimizer Trace分析详情 确定问题并采用相应的措施
2月10日 打卡day19 今日学习 慢查询日志记录慢SQL explain分析SQL的执行计划 profile 分析执行耗时 Optimizer Trace分析详情 确定问题并采用相应的措施
展开
评论
点赞
#青训营笔记创作活动#
2月8日 打卡day18 今日学习 ①先将SQL发送给SQL接口,SQL接口会对SQL语句进行哈希处理。 ②SQL接口在缓存中根据哈希值检索数据,如果缓存中有则直接返回数据。 ③缓存中未命中时会将SQL交给解析器,解析器会判断SQL语句是否正确: 错误:抛出1064错误码及相关的语法错误信息。 正确:将SQL语句交给优化器处理,进入第④步。 ④优化器根据SQL制定出不同的执行方案,并择选出最优的执行计划。 ⑤工作线程根据执行计划,调用存储引擎所提供的API获取数据。 ⑥存储引擎根据API调用方的操作,去磁盘中检索数据(索引、表数据....)。 ⑦发生磁盘IO后,对于磁盘中符合要求的数据逐条返回给SQL接口。 ⑧SQL接口会对所有的结果集进行处理(剔除列、合并数据....)并返回。
2月8日 打卡day18 今日学习 ①先将SQL发送给SQL接口,SQL接口会对SQL语句进行哈希处理。 ②SQL接口在缓存中根据哈希值检索数据,如果缓存中有则直接返回数据。 ③缓存中未命中时会将SQL交给解析器,解析器会判断SQL语句是否正确: 错误:抛出1064错误码及相关的语法错误信息。 正确:将SQL语句交给优化器处理,进入第④步。 ④优化器根据SQL制定出不同的执行方案,并择选出最优的执行计划。 ⑤工作线程根据执行计划,调用存储引擎所提供的API获取数据。 ⑥存储引擎根据API调用方的操作,去磁盘中检索数据(索引、表数据....)。 ⑦发生磁盘IO后,对于磁盘中符合要求的数据逐条返回给SQL接口。 ⑧SQL接口会对所有的结果集进行处理(剔除列、合并数据....)并返回。
展开
评论
点赞
#青训营笔记创作活动#
2月7日 打卡day17 今日学习 502问题怎么排查 HTTP状态码用来表示响应结果的状态,其中200是正常响应,4xx是客户端错误,5xx是服务端错误。 客户端和服务端之间加入nginx,可以起到反向代理和负载均衡的作用,客户端只管向nginx请求数据,并不关心这个请求具体由哪个服务器来处理。 后端服务端应用如果发生崩溃,nginx在访问服务端时会收到服务端返回的RST报文,然后给客户端返回502报错。502并不是服务端应用发出的,而是nginx发出的。因此发生502时,后端服务端很可能没有没有相关的502日志,需要在nginx侧才能看到这条502日志。 如果发现502,优先通过监控排查服务端应用是否发生过崩溃重启,如果是的话,再看下是否留下过崩溃堆栈日志,如果没有日志,看下是否可能是oom或者是其他原因导致进程主动退出。如果进程也没崩溃过,去排查下nginx的日志,看下是否将请求打到了某个不知名IP端口上。
2月7日 打卡day17 今日学习 502问题怎么排查 HTTP状态码用来表示响应结果的状态,其中200是正常响应,4xx是客户端错误,5xx是服务端错误。 客户端和服务端之间加入nginx,可以起到反向代理和负载均衡的作用,客户端只管向nginx请求数据,并不关心这个请求具体由哪个服务器来处理。 后端服务端应用如果发生崩溃,nginx在访问服务端时会收到服务端返回的RST报文,然后给客户端返回502报错。502并不是服务端应用发出的,而是nginx发出的。因此发生502时,后端服务端很可能没有没有相关的502日志,需要在nginx侧才能看到这条502日志。 如果发现502,优先通过监控排查服务端应用是否发生过崩溃重启,如果是的话,再看下是否留下过崩溃堆栈日志,如果没有日志,看下是否可能是oom或者是其他原因导致进程主动退出。如果进程也没崩溃过,去排查下nginx的日志,看下是否将请求打到了某个不知名IP端口上。
展开
评论
点赞
赞了这篇文章
#青训营笔记创作活动#
2月6日 打卡day16 今日学习 优秀后端开发好习惯 1、注释尽可能全面,写有意义的方法注释 2、项目拆分合理的目录结构 3、不在循环里远程调用、或者数据库操作,优先考虑批量进行。 4、封装方法形参 5. 封装通用模板 6. 封装复杂的逻辑判断条件 7. 保持优化性能的嗅觉 8. 可变参数的配置化处理 9. 会总结并使用工具类。 10. 控制方法函数复杂度 11. 在finally块中对资源进行释放 13.把日志打印好 14. 考虑系统、接口的兼容性 15. 代码采取措施避免运行时错误
2月6日 打卡day16 今日学习 优秀后端开发好习惯 1、注释尽可能全面,写有意义的方法注释 2、项目拆分合理的目录结构 3、不在循环里远程调用、或者数据库操作,优先考虑批量进行。 4、封装方法形参 5. 封装通用模板 6. 封装复杂的逻辑判断条件 7. 保持优化性能的嗅觉 8. 可变参数的配置化处理 9. 会总结并使用工具类。 10. 控制方法函数复杂度 11. 在finally块中对资源进行释放 13.把日志打印好 14. 考虑系统、接口的兼容性 15. 代码采取措施避免运行时错误
展开
评论
点赞
#青训营笔记创作活动#
2月5日 打卡day15 今日学习 网络原理 局域网(LAN)
局域网LAN(Local Area Network),在地理上局限的范围,如1km左右。但可以将多个互连的局域网,来覆盖校园或者企业中。所以局域网也被称为校园网或企业网。
城域网(MAN)
城域网MAN(Metropolitan Area Network),城域网的作用范围可跨越几个街区甚至整个城市,距离约也可以为5到50km,所以一般也是一个城市。
广域网(WAN)
广域网WAN(Wide Area Network)范围通常为几十到几千公里,可以通过长距离运送主机所发送的数据,所以可以跨越不同国家,也是互联网的核心部分。
互联网
当你蓦然回首,把许多计算机连接在一起形成了计算机网络,而把许多网络连接在一起就构成了互联网;一个覆盖范围更大的计算机网络,覆盖范围可以是全球。
2月5日 打卡day15 今日学习 网络原理 局域网(LAN)
局域网LAN(Local Area Network),在地理上局限的范围,如1km左右。但可以将多个互连的局域网,来覆盖校园或者企业中。所以局域网也被称为校园网或企业网。
城域网(MAN)
城域网MAN(Metropolitan Area Network),城域网的作用范围可跨越几个街区甚至整个城市,距离约也可以为5到50km,所以一般也是一个城市。
广域网(WAN)
广域网WAN(Wide Area Network)范围通常为几十到几千公里,可以通过长距离运送主机所发送的数据,所以可以跨越不同国家,也是互联网的核心部分。
互联网
当你蓦然回首,把许多计算机连接在一起形成了计算机网络,而把许多网络连接在一起就构成了互联网;一个覆盖范围更大的计算机网络,覆盖范围可以是全球。
展开
评论
点赞
赞了这篇文章
#青训营笔记创作活动#
2月4日 打卡day14 今日学习 使用fabric.js开发图片编辑器 fabric.js的功能很强大,可以很轻松的开发出一个简版的图片编辑器,自定义素材、模板、字体文件;还可以结合数据接口拼接模板生成图片,很轻松的实现定制模板 + 生成图片的功能
2月4日 打卡day14 今日学习 使用fabric.js开发图片编辑器 fabric.js的功能很强大,可以很轻松的开发出一个简版的图片编辑器,自定义素材、模板、字体文件;还可以结合数据接口拼接模板生成图片,很轻松的实现定制模板 + 生成图片的功能
展开
评论
点赞