Swoole与TCP四次挥手

free

本文作者黄汉韬,内容是翻译Swoole微课程的视频课程内容TCP关闭的过程(四次挥手)1、客户端 发送FIN包给 服务端,此时客户端处于FIN_WAIT1状态2、服务端 发送ACK包给 客户端,此时服务器处于CLOSE_WAIT状态,并且客户端在等待ACK包的时候,处于FIN_WAIT2状...

教你秒级定位PHP卡死问题

free

PHPer肯定收到过这样的投诉:小菊花一直在转!你们网站怎么这么卡!当我们线上业务遇到这种卡住(阻塞)的情况,大部分PHPer会两眼一抹黑,随后想起那句名言:性能瓶颈都在数据库然后把锅甩给DBA,赶紧找找慢sql,但这是非常错误的做法,因为有太多因素能导致业务卡住,下面列举几种常见的卡住问题。1....

PHP程序员内功心法-常用工具

free

三连问经常有社区的同学问: "我的PHP程序有没有阻塞,我的PHP程序有没有开启协程(对自己写好的代码表示不自信),我的PHP程序有没有问题".然后贴出了自己的程序,然后进入了愉快的灌水环节,随着时间的流逝,我们并没有形成系统的解决方法.求人不如求己,我们自己来解决这些问题....

PHP程序员内功心法-前言

free

江湖有人的地方就有江湖,在我们程序界的江湖中,有不少门派,比如Java,C++,Golang,PHP等,拥有各自的武器和招式。各门各派都有所长,而我们要做的是集众家所长,进而发扬本门武学。使我们修为日日精进。我们将在后面的日子每周和大家一起在这里‘修行打坐’。技能点人在...

PHP+Swoole并发编程的魅力

free

PHP语言是一个短生命周期的Web编程语言,很多PHPer已经形成了fpm下编程的思维定势。实际上在Swoole出现之后,这种串行化编程的模式早已被打破。使用Swoole完全可以轻易实现更灵活的并发编程。场景介绍假设我们要做一个石头剪刀布的Web游戏,3个玩家同时提交竞猜后显示胜者。在传统串行化...

Swoole长连接常见问题

free

这篇文章是总结自Swoole微课程《网络编程第四讲-长连接的常见问题》。这一节学习到了很多的知识,可以说干货满满。连接失效问题例子其中,Redis常见的报错就是:配置项:timeout报错信息:Error while reading line from the serverRedis可以...

PHP程序员内功心法-趣说进程内连接池的作用和实现

free

在一个月黑风高的夜晚,郭靖冒着严寒登上了山顶,只见马钰道长已然等候多时,今日的课程还是练习打坐吐纳的功夫,仿佛耳边又传来的了熟悉的声音......连接池是什么我们常见的池很多,比如内存池,线程池,对象池,连接池等。顾名思义,池子干的事情都是一样的,把一类相同的事物放到一个池里面,已备不时之需,好...

Swoole基础课程第三讲:如何正确搭建HTTP服务

free

本文作者黄汉韬,内容是翻译Swoole微课程的视频课程内容大部分的传统FPM项目性能瓶颈在于每次请求重新创建ZendVM的开销、IO 阻塞导致的上下文频繁切换。Swoole解决的就是这类问题。这篇文章教大家如何让Swoole的HTTP服务器性能达到最大。压测脚本如下,机器的配置是单核、2G...

史上最好用,支持最全的PHP性能调优工具来了!

free

支持所有版本 PHPSwoole Tracker 2.8.3 发布,这个版本开始除了支持PHP7外,全面支持 PHP5.4,PHP5.5 和 PHP5.6,做这个兼容之前很多人和我说这是个收益非常低的事情,因为未来肯定是 PHP7 用户多,我们做这事有以下几点原因:无法迁移到PHP7 很多重...

通过 PHPStorm 配置热更新开发环境

free

在开发 Hyperf/Swoole 这样的持久化应用时,每当应用代码发生了变更时,都需要重启应用使代码生效,尽管在开发 CLI 应用时这也是一个正确且合理地操作,因为我们开发过程中仍需要关注 stdout 输出的信息以判断应用的运行状态与结果。但这跟我们原来开发 PHP-FPM 应用的习惯有很大的差...

Swoole与TCP三次握手

free

本文作者黄汉韬,内容是翻译Swoole微课程的视频课程内容握手常见问题1、连接拒绝2、Operation now in progress 多是因为丢包、错误ip、backlog满了&阻塞&tcp_abort_on_overflow=03、min(maxconn, ...

Linux的shell基础

free

本文作者黄汉韬,内容是翻译Swoole微课程的视频课程内容作业(job) 控制现代的shell解释器中存在作业控制功能1、按ctrl+ Z将向当前进程发送SIGSTOP信号,如果当前进程没有实现SIGSTOP的特定逻辑,默认的行为是当前进程暂停并置入后台2、使用命令fg来使恢复后台进程的...

Swoole Tracker 2.8.0稳定版正式发布!

free

推出个人sass版重大利好!在 2.8 版本来临之际,我们推出了个人sass(数据上报到云端)版,相对于免费的sass版,个人sass版开放所有功能、永久保留数据、不限制客户端机器台数并且提供相应的技术支持,极低的价格每个月只需100元,非常适合用PHP的个人开发者和中小企业!传送门:https:...

recv peek和内存copy性能对比

free

recv peek和内存copy性能对比场景对比每秒程序对Unix Socket执行peek recv操作的次数以及程序每秒copy内存的次数。copy内存以copy 256KB字节的内存为例,代码如下:#include <stdlib.h>#include <stri...