mysql相关以及优化类面试总结

目录

一、innodb有几种锁机制?

二、数据库中的事务是什么?

三、网站访问速度慢的排查方法

四、浅谈打开网页速度慢的原因和解决方法


一、innodb有几种锁机制?

       1)共享/排他锁

        2)意向锁

        3)记录锁

        4)间隙锁

        5)插入意向锁

        6)临键锁

        7)自增锁

二、数据库中的事务是什么?

事务是作为一个单元的一组有序的数据库操作。如果组中的所有操作都成功,则认为事务成功,即使只有一个操作失败,事务也不成功。如果所有操作完成,事务则提交,其修改将作用于所有其他数据库进程。如果一个操作失败,则事务将回滚,该事务所有操作的影响将都取消。

三、网站访问速度慢的排查方法

  •  1、当网站访问较慢时,首先先查看本地网络是否正常。

        方法:先用网络测速测下本地的网络速率:网络速率低于50KB/s,访问网站自然也慢。 

  • 2、本地网络速率正常时,再检查下所访问的网站是否正常。

       方法:测一下网站的访问性能操作:在网站检测中,输入IP或域名,选择单文件或全页面进行测试

分析报告: DNS服务器:显示访问者的出口DNS,作用是通过出口DNS获取访问者所在的网络,如:xx.xx.xx.xx(北京 网通)网站解析IP:网页的IP地址,作用获悉IP地址,可使用ping命令检查该IP的连通性,诊断该网站是否正常,如ping网页时丢包较严重,访问速率也会越低

总时间:网站的响应时间,可了解网站的性能瓶颈或者是利用谷歌或IE浏览器的F12开发者工具查看下网站的大小和网站的打开速度成不成正比。

  • 3、网站出现无法访问时,使用故障诊断命令定位故障点。

命令分析: ping:检测IP或域名的连通性 dig/nslookup:查看DNS解

析情况 traceroute:显示从访问者到网站的路由连接状态,如果有节点无法连接,只需针对该故障点进行修复便可快速恢复网络。

2015-09-24.JPG

  • 4、通过Chrome浏览器开发者工具排查网站打开慢

网站打开速度很慢,通过阿里云ECS控制台“实例监控信息”查看网站所在服务器的性能情况,如果网站所在的服务器性能没有瓶颈,那么可以通过Chrome浏览器中的开发者工具来排查是哪些资源导致了网站打开速度慢。

  • 网站运行速度慢,先判断是前端问题还是后端问题,直接通过开发人员工具(Chrome)或Firefox的Firebug查看请求慢的是资源开始接口。90%网站性能问题是由前端造成的。
    常见前端问题解决思路
    • 前端js css flash资源慢 查看资源十分过大,对js css 进行压缩;删除赘余的包;引入框架时十分选用用于生产的mini包;图片等资源较多是是否试用cdn且cdn是否正常;页面缓存规则设置是否正确。。。。。
    • 前端问题综合查看,可以先看看YSlow的给出的提示。
  • 后端常见问题,数据库执行时间过长、逻辑问题
    后端接口逻辑问题查找方式

四、浅谈打开网页速度慢的原因和解决方法

1、原因一:http请求次数太多

解决:减少http请求次数

① 图片地图:把多张图片整合到一张图片中,以位置定位超链接。

② CSS Sprites合并图片,通过指定CSS的backgroud-image和backgroud-position来显示元素。

③ 合并JS脚本和CSS样式表。

④ 使用外部JS和CSS文件。

 

2、原因二:接收数据时间过长,如下载资源过大

解决:对HTTP传输进行压缩,即在js,css、图片等资源已经压缩的基础上,在HTTP传输过程中的再次压缩。客户端可以通过Accept-Encoding头来声明浏览器支持的压缩方式,服务端通过Content-Encoding来启用压缩,配置压缩的文件类型,压缩方式。gzip使用无损压缩,压缩效果最佳,已经成为使用最为普遍、支持的浏览器最多的数据压缩格式。

 

3、原因三:JavaScript脚本过大,阻塞了页面的加载

解决:将JavaScript脚本放在</body>标签前。script没有async和defer时,JS文件将在下载后立即执行。这种情况下,script放在顶部会阻塞页面呈现,在网速慢的情况下会导致“白屏”,直到脚本下载完毕才继续呈现页面。因此,script放在底部可以让页面尽快呈现。

 

4、原因四:CSS、JavaScript、图片等需要重复加载

解决:静态资源统一放在一个静态域名上,减轻重复下载静态资源的负担。

 

5、原因五:cookie影响

解决:减小cookie的影响

① 去除没有必要的cookie,如果网页不需要cookie就完全禁掉。

② 将cookie的大小减到最小:减小HTTP请求报文的大小,提高响应速度。

③ 设置合适的过期时间:cookie信息将存储到硬盘上,即使浏览器退出cookie还会存在,只要cookie未被清除且还在过期时间内,该cookie就会在访问对应域名时发送给服务器。

④ 通过使用不同的domain减少cookie的使用:cookie在访问对应域名下的资源时都会通过HTTP请求发送到服务器,但在访问一些资源,如js,css和图片时,大多数情况下cookie是多余的,可以使用不同的domain来存储这些静态资源,这样访问这些资源时就不会发送多余的cookie,从而提高响应速度。

 

6、原因六:网页资源过多

解决:使用CDN部署网络以提高下载速度,可以先通过免费的CDN供应商来分发网页资源。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值