Mysql合理建立索引,索引优化
2019年7月18日
数据库2019年7月18日
数据库2019年7月18日
数据库事情起因: 使用了一个varchar类型的字段储存数字值。 在根据该字段进行大小筛选的时候,出现该问题。 类似select * from sheets where s_status > 3
php调用时条件传的是数字类型 组件生成的SQL语句直接执行正常
2019年7月18日
计算机基础2019年7月13日
PHP2019年7月10日
SWOOLE2019年7月4日
前端在我使用jquery扩展,拖拽组件的时候,因为使用的布局模板有些冲突,导致无法使用扩展,所以才会解决之后写下这篇文章。 Layui中内置了jquery 只有你所使用的模块有依赖到它,它才会加载,并且如果你的页面已经script引入了jquery,它并不会重复加载。内置的jquery模块去除了全局的$和jQuery。 这是layui文档中的描述,它内置了jq,但是去除了全局的$和jQuery对象,也就是在window的全局对外接口被删除了。 拖拽组件的实现 假设siam.js是一个扩展,里面提供了一个类似这样的方法
2019年6月29日
计算机基础这篇文章,主要讲讲非堵塞编程带给程序的意义。 在我们谈到今天的主题之前,先来做一点基础知识的补充。
我们的计算机系统架构简易可看成如下,I/O接口连接其他硬件如:网卡、键盘鼠标、磁盘等。 I代表Input,输入数据。 O代表Output,输出数据。 当程序需要发送网络请求或者从磁盘中读取文件等IO操作时 CPU发出指令,然后信号经过总线到达网卡或者磁盘 然后拿到数据,再经过总线到达主存中,CPU继续对主存中的数据进行操作。
CPU的执行速率:主频 比如3GHz = 一秒钟有30亿个时钟脉冲,执行一条指令一般只需要几个时钟脉冲。也就是一秒可以执行的指令经常是以亿计算的。
以网络请求为例(磁盘IO也是一样的原理),当CPU发出指令之后,想要得到结果需要经过很长的等待(比如网络延迟经常是几十ms时间,CPU都过了多少千万个时钟脉冲了)
相信看这篇文章的你也不是第一次看到这种概念,在很多文章中经常会以购物等场景做例子。 这里只做一个简单的介绍: 同步、异步
分为一组概念; 堵塞、非堵塞
分为一组概念; (同步、异步):关注的是:数据的接收方式 (堵塞、非堵塞):关注的是:是否等待结果返回 这是两个分组(因为它们的关注点不同) 但是往往同步跟堵塞
是一起的,异步跟非堵塞
是一起的。 如果我们需要同步接收数据,肯定要让当前程序暂停,等待数据返回再做处理。 如果我们选择了异步接收数据,程序还堵塞的话那就没什么意义了,所以非堵塞模式,一般会返回发送调用请求的结果,然后程序继续执行,直到结果准备好了,再通过回调函数等方式触发程序做处理。
2019年6月23日
计算机基础在我们日常打开网页、对接接口时,使用到的一般都是HTTP协议。 HTTP 的工作方式是客户端与服务器之间的请求-响应。 HTTP 请求方法有:HEAD、PUT、DELETE、OPTIONS、CONNECT 两种最常被用到的HTTP方法是:GET
和 POST
。 本篇文章讲讲GET
和POST
两种请求方法的区别。
GET
2019年6月19日
PHP2019年6月12日
计算机基础这次我们来讲讲对象池、连接池的意义,在此之前我们先了解学习一些其他的基础知识,以便我们结合理解池的意义。
nginx采用多进程模型,启动之后的进程将包含一个master
和多个worker
进程。 master是worker的父进程,主要职责是用来管理worker进程的。
可以实现
从容重启
:master进程在接收到信号后,会先重新加载配置,然后再启动新进程开始接收新请求,并向所有老进程发送信号告知不再接收新请求并在处理完所有未处理完的请求后自动退出。
worker进程负责处理请求,如果是静态文件则可以直接处理完,如果是php程序还需要调用php来处理,当php处理完成时获取php的返回,并返回给客户端。 采用的是异步非堵塞
,当调用php的时候不会堵塞等待,会抽空处理下一个请求,当php处理完成时恢复之前的请求并返回给客户端。 php-fpm是php-cgi的管理器,在php >= 5.3.3
就已经集成在php中了。 它的出现提供了更好的php管理方式