分类 PHP 下的文章

不定时总结第二期——laravel5.4如何记录实时SQL语句日志(2018)

之前自己开发的一个项目,在线上运行一个多月之后,有些页面异常的慢,讲道理十几万的数据根本不会超过0.5秒的打开时间的,然后我就排查,数据库做了慢查询日志,超过一秒的都会记录,但是记录一条都没有(事实上应该是没记到,不知道运维是不是配置错了),最后还逼我自己记录实时的sql语句才发现问题,搞得我框架的一些什么配置缓存、类映射都白做了,根本不是框架运行的锅。最后原因是有一张表我当时先设置了一个主键,后来因为需求加了一个自增长id,没有把老的主键换成唯一索引,就直接把id设置成主键了,结果形成一个组合主键,导致查询异常慢,因为我查询的时候都是单独用,并没有用到组合主键查询。

- 阅读剩余部分 -

不定时总结第一期(2018)

好久好久没更新博客了,拖到了2018了,想起2017说的种种,要是说打脸的话,估计能肿成猪。。。

复习UML(统一建模语言)

主要只是复习一下各类间的几种关系

- 阅读剩余部分 -

linux关于ls命令返回的最后修改时间问题

昨天老大突然和我说,我做的日志view系统出现了时间bug。然后发现了linux下ls -l命令获取的结果,显示的最后修改时间,并不是网上所说的一年前的就会以月 日 年来显示(今年的按月 日 分时显示),而是去年的最后修改时间距离今年6月以内的依然是以月 日 分时来显示,超过6个月的就以月 日 年显示。

- 阅读剩余部分 -

读CI框架源码后感

CI框架是一个轻量级的框架,所以我试着去看了一下它的核心部分的源码,弄清楚了CI一个运行的流程和整体代码的一个设计是什么样的。下面就是我的一些粗浅的理解。

- 阅读剩余部分 -

CI框架钩子hook的使用

最近打脸了,因为很久没更博客了,脸好疼。。。

钩子的使用起源是在刚面试的时候,被面试官指着我基于CI做的demo说用过这个(指着hooks目录)吗?,当时我就懵逼了,只能摇头尴尬苦笑的说了没有。不过事情过去了我并没有把它放过,然后回去看了一下钩子hook。


HOOK是什么?

HOOK(钩子)见名思其意,这东西应该是用来“挂”在哪儿的。没错,hook像事件驱动,hook具体操作就像js里的事件绑定的那个方法函数,而各种click、blur等等就像钩子的挂载点,当你做相应的操作就会触发这个钩子。

- 阅读剩余部分 -