拥有php标签的文章

到底有几个进程在运行

PHP原始多进程实现以及运行流程 代码如下: ```php$count = 1 ;echo $count;echo "\r\n";echo "main pid=".posix_getpid()."\r\n";for ($i = 0; $i<2;$i++){ echo "for start:pid=".posix_getpid()." i=".$i."\r\n"; $pid = pcntl_fork(); echo "f
阅读全文

EasySwoole实现Execl导入导出

EasySwoole导入导出Execl表格需求:easyswoole实现的服务端要实现execl表格的导入以及导出,从而实现人员以及成绩的变更 安装 execl 组件1. 这里有两种选择,一种就是经常使用的phpoffice/phpspreadsheet,而另一种则是xlswriter,本文章使用的则是phpoffice/phpspreadsheet1. 根据自己的php版本安装对应版本的 phpoffice/phpspreadsheet,执行命令 `comp
阅读全文

EasySwoole之定时任务面板

EasySwoole之定时任务面板 需求实现物联网设备的数据获取,有些设备的数据需要定时获取 思路1、做这个功能期间,请教了开发组的成员,最后通过阿正提供的思路来完成2、首先任务有间隔执行(秒级)和 定时执行(分级),所以就考虑到每种类型的任务开两个进程来执行(也就是正哥所说的管理进程和执行进程),最终间隔执行是开启自定义进程开启一秒的Timer定时器进行从Db查询(定时任务不多的情况下),符合条件的进行投递到Task进程执行并标记为已投递,Task进程根据投递的内容
阅读全文

EasySwoole之链路追踪

什么是链路追踪 链路追踪一般常用于分布式架构中,当实现一个功能的同时,可能会依次调用多个接口,那么此时这一些列的接口调用,称为调用链。想要实现调用链,那么就需要对每次调用的链接进行标识也就是pointId,方便出现调用问题的时候排查问题,但是有调用并不是同级,所以还需要用parentId来标识上下级关系。具体请查看链接 EasySwoole中实现Api链路追踪 安装组件 `composer require easyswoole/tracker` onRequest事件(
阅读全文

TCP 的连接建立与关闭状态及数据传输通信过程 [含有 PHP socket API 测试实验代码]

本文章使用 PHP 代码来测试 TCP 传输层的一个通信过程TCP/IP 协议可以查看本人发布过的内容当然关于该协议的详细内容可自行查阅 <<TCP/IP 详解 卷 1:协议PHP 的 tcp/udp API 内容是 PHP 手册上的内容socket API测试的 PHP 版本PHP 代码 【就是手册的例子了】```php <?php/ Created by PhpStorm. User: 1655664358@qq.com Date:
阅读全文

Nginx负载均衡

什么是负载均衡 Load Balance, web服务器的负载是接收/处理客户端请求; 均衡将客户端的请求”平均的”分配给服务器集群 如何实现负载均衡 Nginx实现负载均衡需要使用反向代理服务器技术 代理Proxy: 也称为网络代理, 是一种特殊的网络服务, 允许一个网络终端通过这个服务与另一个网络终端进行非直接的连接 正向代理服务器: 隐藏了真实的请求客户端, 服务器不清楚真正的客户端是谁 反向代理服务器: 隐藏了真是的服务器端
阅读全文

Nginx和Apache的区别

Apache和Nginx都可以作为web服务器,有什么区别 市场占有率1、首先看下截止今天的市场份额(nginx和apache依旧是最主流的服务器) 2、2019年五月份到2020年五月份的市场份额变化(由此可以看出apache的市场份额占有率在降低,nginx在上升) Apache如何接收/处理请求/返回响应?1、Apache处理客户端请求的两种模式: prefork MPM(预启动多进程模式) + worker MPM(工作多进程模式)2
阅读全文

Nginx下实现授权访问下载

需求 硬件板子实现自动请求服务器,下载更新包,实现在线升级,但是直接请求的话会人人都可以下载,会造成安全隐患 文件服务器,实现浏览文件并下载 Nginx实现(基于centos7) 安装工具(具体命令查看 htpasswd h) `yum install y httpdtools` 生成账号和密码,将文件保存在nginx目录下 `htpasswd c /etc/nginx/conf.d/test test` 查看生成的文件(:前面
阅读全文

Easyswoole下Crontab定时器如何实现奇偶数时间分别运行不用的定时任务

easyswoole vip群中有小伙伴问到, Crontab 下如何实现奇数时间和偶数时间下分别运行不用的定时任务,今天就来给大家普及一下知识
阅读全文

如何利用EasySwoole多进程多协程redis队列实现爬虫

什么是爬虫? 爬虫是一种按照一定的规则,自动地抓取网上数据的程序或脚本 爬虫之前的准备? 根据初始页面,制定规则获取更多的需要爬取的页面 根据页面内容制定规则,爬取想要的东西 用到的组件及框架 EasySwoole框架(https://www.easyswoole.com/) redis连接池组件(https://www.easyswoole.com/Cn/Components/Redis/pool.html) 协程HTTPClient组件(https://ww
阅读全文