如何编写一个PHP解释器文件

  • 北溟有鱼QAQ(LuffyQAQ)
  • 2021-02-20 16:09:47
  • PHP
  • php linux
什么是解释器 概念解释器文件是一种文本文件,它第一行的形式为:`! pathname 指的是可选参数。 PHP脚本执行程序1. 在linux中,我们来执行php程序,一般是使用命令`php xxxx.php` 这样来执行,接下来我们编写这样一个程序运行一下,而下面这个图片则是在linux下运行php脚本的过程 解释器文件上面介绍了解释器文件的概念以及书写形式,接下来咱们编写一个php解释器文件1、查找linux中,你安装的php可执行文件,如果是编译安装的相
阅读全文

Linux下PHP运行的过程

  • 北溟有鱼QAQ(LuffyQAQ)
  • 2021-01-27 15:58:35
  • PHP
  • php linux
Linux下PHP执行的流程在查看PHP执行过程前,我们要学习一个linux命令,也就是strace 命令 strace 命令介绍strace是Linux环境下的一款程序调试工具,用来监察一个应用程序所使用的系统调用及它所接收的系统信息 strace 参数有哪些 c 统计每一系统调用的所执行的时间,次数和出错的次数等. d 输出strace关于标准错误的调试信息. f 跟踪由fork调用所产生的子进程. ff 如果提供o filename,则所有进程的跟踪结果输出到
阅读全文

你心中最高大上最牛X的技术到底是什么

高以下为基,贵以贱为本互联网技术的核心根基就是TCP/IP,TCP/IP的实现依赖于Linux socket API【我们的项目大部分运行在上面】没有它们各种高大上牛逼的技术就无从建立起来。而这根基对大家所用的java,go,py,php,c,c++,nodejs...都是一样的,只不过是基于Linux api做了各种各样的封装百家争鸣,百花齐放,跟易经里的阴阳构成64卦一样,当你刚开始撸程序时,可能并不会觉得基础的重要性,甚至可能几年内一直是框架crud boy,你并不会察觉到基础核心L
阅读全文

Easyswoole之双机热备

1. 介绍 文章主要介绍,EasySwoole使用双机热备思路实现代码不中断部署。 2. 学习案例 1. 先部署`9501`服务 2. 单起一个进程,定时轮询Git分支是否有新版本发布 3. 如有新版本发布,clone一份 4. composer update 更新库 5. 启动`9502`服务 6 更改nginx配置为`9502`并重启 只要有新版本发布,就轮询上面那几个步骤`整个过程的简单架构图` 3. 提前需要了解的知识点
阅读全文

到底有几个进程在运行

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
阅读全文

Centos7实现开机自启EasySwoole

局域网服务器实现开机自启EasySwoole服务需求:前段时间刚用写了教程安装centos系统,后面就内网利用EasySwoole实现Tcp服务端,为保持容错,避免断电造成服务死机而无法维护 在启动文件目录添加配置文件`vm /usr/lib/systemd/system/easyswoole.service` 添加如下内容随便利用cat查看一个.service的文件即可看到如下相似内容```shellDescription=The EasySwool
阅读全文

Centos系统安装

  • 北溟有鱼QAQ(LuffyQAQ)
  • 2020-08-12 15:28:14
  • PHP
  • linux
电脑系统重装Linux系统用于局域网内网开发swoole 镜像下载 直接centos官网下载镜像 制作ios启动盘 下载UltraISO并安装(试用版既可以) 打开软件 `Ctrl + O` 打开已经下载的镜像,如下图所示 插入U盘,点击启动菜单,选址写入镜像(U盘会格式化),如下图 等待写入完成即可 写入完成后,更改U盘的名称,也是是我的电脑里面修改U盘的名称,越简单越好,方便下面使用 重装系统 插入U盘,然后重启电脑,进入BIOS设置U盘
阅读全文

EasySwoole之定时任务面板

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

EasySwoole之链路追踪

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