201909-09 PHP大文件分片上传的实现方法,你会用嘛 HOT 分片上传主要是前端将一个较大的文件分成等分的几片,标识当前分片是第几片和总共几片,待所有的分片均上传成功的时候,在后台进行合成文件即可。 继续阅读 >
201909-09 一份非常完整的MySQL规范 HOT 所有数据库对象名称必须使用小写字母并用下划线分割 所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来) 数据库对象的命名要能做到见名识意,并且最后不要超过32个字符 临时库表必须以tmp_为前缀并以日期为后缀,备份表必须以bak_为前缀并以日期(时间戳)为后缀 所有存储相同数据的列名和列类型必须一致(一般作为关联列,如果查询时关联列类型不一致会自动进行数据类型隐式转换,会造成列上的索引失效,导致查询效率降低) 继续阅读 >
201909-07 ThinkPHP5结合Swoole开发实现WebSocket在线聊天 HOT ThinkPHP使用Swoole需要安装 think-swoole Composer包,前提系统已经安装好了Swoole PECL 拓展 继续阅读 >
201909-06 PHP 数组和字符串互相转换实现方法 HOT 使用和理解这两个函数的关键之处是分隔符(separator)和胶合符(glue)关系。当把一个数组转换成一个字符串时,将会设置胶合符——将被插入到生成字符串中的数组值之间的字符或代码。 相反,当把字符串转换成数组时,要指定分隔符,它用于标记什么应该变成独立数组元素。 继续阅读 >
201909-06 面试:如何解决web高并发?这个回答给满分 HOT 所谓高并发,就是同一时间有很多流量(通常指用户)访问程序的接口、页面及其他资源,解决高并发就是当流量峰值到来时保证程序的稳定性。 我们一般用QPS(每秒查询数,又叫每秒请求数)来衡量程序的综合性能,数值越高越好,一般需要压测(ab工具)得到数据。 继续阅读 >
201909-06 项目上线后,谈一下感触比较深的一点:查询优化 HOT 1、SQL 行转列,往往是 GROUP BY 配合聚合函数(SUM、MAX、MIN等)来实现,当然也包括 IF 和 CASE...WHEN....THEN; 2、索引是提高查询效率的最有效的、也是最常用的方式,我们对查询的优化都要往索引上靠,EXPLAIN 可以查看SQL的执行计划,我们可以从中获取SQL优化的提示; 3、一定要结合业务来写出高效的SQL 4、要敢于质疑需求 继续阅读 >
201909-05 PHP的灵魂HashTable结构解读 HOT 说 HashTable 是PHP的灵魂,一点也不为过。在Zend引擎中,比如变量表、常量表、函数表、数组,以及资源管理、线程安全等,其实现都有HashTable的身影。HashTable 是一种查找性能极高的数据结构,理想情况下其算法复杂度是O(1)。 继续阅读 >
201909-05 如何设计一个高并发高可用的秒杀或抢券系统 HOT 高并发的接口/系统有一个共同的特性,那就是”快”。 在系统其它条件既定的情况下,系统处理请求越快,用户得到反馈的时间就越短,单位时间内服务器能够处理请求的数量就会越多。所以”快”几乎可以算是高并发系统的要满足的必要条件,要评估一个系统性能如何,某次优化是否提高系统的容量,”快”是一个很直观的衡量标准。 继续阅读 >
201909-04 WebSocket 通信过程与实现,PHPer必备知识 HOT 没有其他能像 WebSocket 一样实现全双工传输的技术了,迄今为止,大部分开发者还是使用 Ajax 轮询来实现,但这是个不太优雅的解决办法,WebSocket 虽然用的人不多,可能是因为协议刚出来的时候有安全性的问题以及兼容的浏览器比较少,但现在都有解决。如果你有这些需求可以考虑使用 WebSocket: 多个用户之间进行交互; 需要频繁地向服务端请求更新数据。 继续阅读 >
201909-04 PHP代码审计,你会吗? HOT 代码审核,是对应用程序源代码进行系统性检查的工作。它的目的是为了找到并且修复应用程序在开发阶段存在的一些漏洞或者程序逻辑错误,避免程序漏洞被非法利用给企业带来不必要的风险。 继续阅读 >
201909-04 让你提高效率的 Linux 技巧 HOT 如果要谨慎使用 rm 命令,可以为它设置一个别名,在删除文件之前需要进行确认才能删除。有些系统管理员会默认使用这个别名,对于这种情况,你可能需要看看下一个技巧。 继续阅读 >
201909-04 Laravel 6.0 版本正式发布了! HOT Laravel 团队今天宣布 Laravel 6.0 版本正式发布,该版本的发布标志着 Laravel 框架开始使用语义化版本,此外,该版本还包含了对 Laravel Vapor 的支持、优化了授权响应、任务中间件、懒集合、子查询优化以及很多其它细节优化。 继续阅读 >
201909-03 如何在Linux下,快速搭建php开发环境 HOT XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,使用XAMPP可快速搭建PHP开发环境。下载链接在文章底部找菲菲获取, 进入下载界面选择XAMPP for Linux下载 继续阅读 >
201909-03 一文带你彻底理解Linux的各种终端类型及概念 HOT 所有这一切其实都是多终端以及多用户的产物,但归根结底其根源都在分时系统。在计算机最初被放在车间大小的屋子里的年代,可能把屋子的门禁做好以及将屋子外的鉴权系统做好显得比后来的多用户login更为重要。 继续阅读 >
201909-02 php与Redis实现分布式锁,你会了吗? HOT redis写入时不带锁定功能,为防止多个进程同时进行一个操作,出现意想不到的结果,so...对缓存进行插入更新操作时自定义加锁功能。 继续阅读 >
201909-02 PHP实现Redis单据锁以及防止并发重复写入 HOT Redis锁在我们的系统中一般只用于解决并发重复请求的情况,对于非并发的的重复请求一般会去数据库或日志校验数据的状态,两种机制结合起来才能保证整个链路的可靠。 继续阅读 >
201909-02 laravel结合workerman开发在线聊天应用 HOT Workerman是一款 开源 高性能异步 PHP socket即时通讯框架 。支持高并发,超高稳定性,被广泛的用于手机app、移动通讯,微信小程序,手游服务端、网络游戏、PHP聊天室、硬件通讯、智能家居、车联网、物联网等领域的开发。支持TCP长连接,支持Websocket、HTTP等协议,支持自定义协议。拥有异步Mysql、异步Redis、异步Http、MQTT物联网客户端、异步消息队列等众多高性能组件。 继续阅读 >
201908-31 在什么场合里,你会使用PHP消息队列呢 HOT 消息队列技术是分布式应用间交换信息的一种技术。消息队列可驻留在内存或磁盘上,队列存储消息直到它们被应用程序读出。通过消息队列,应用程序可独立地执行,它们不需要知道彼此的位置、或在继续执行前不需要等待接收程序接收此消息。 继续阅读 >
201908-31 高并发下,php与redis实现的抢购、秒杀功能实现步骤 HOT 查询出对应商品的库存,看是否大于0,然后执行生成订单等操作,但是在判断库存是否大于0处,如果在高并发下就会有问题,导致库存量出现负数 继续阅读 >
201908-31 想要高可用?搞定负载均衡架构是关键 HOT 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群可以是Web应用服务器集群,也可以是数据库服务器集群,还可以是分布式缓存服务器集群等。 继续阅读 >