今天我爱编程网小编为大家带来了服务器监控框架php 如何使用PHP实时监控Linux服务器的cpu,内存,硬盘信息,希望能帮助到大家,一起来看看吧!
swoole框架都有哪些
Hyperf:高性能企业级协程框架 (推荐学习: swoole视频教程)
Hyperf 是基于 Swoole 4.4+ 实现的高性能、高灵活性的 PHP 协程框架,内置协程服务器及大量常用的组件,性能较传统基于 PHP-FPM 的框架有质的提升,提供超高性能的同时,也保持着极其灵活的可扩展性,标准组件均基于 PSR 标准 实现,基于强大的依赖注入设计,保证了绝大部分组件或类都是 可替换 与 可复用 的。
框架组件库除了常见的协程版的 MySQL 客户端、Redis 客户端,还为您准备了协程版的 Eloquent ORM、WebSocket 服务端及客户端、JSON RPC 服务端及客户端、GRPC 服务端及客户端、 Zipkin/Jaeger (OpenTracing)、Guzzle HTTP 客户端、Elasticsearch 客户端、Consul 客户端、ETCD 客户端、 AMQP 组件、Apollo 配置中心、阿里云 ACM 应用配置管理、ETCD 配置中心、基于令牌桶算法的限流器、 通用连接池、熔断器、Swagger 文档生成、Swoole Tracker、Blade 和 Smarty 视图引擎、 Snowflake 全局ID生成器 等组件,省去了自己实现对应协程版本的麻烦。
Hyperf 还提供了 基于 PSR-11 的依赖注入容器、注解、AOP 面向切面编程、基于 PSR-15 的中间件、 自定义进程、基于 PSR-14 的事件管理器、Redis/RabbitMQ 消息队列、自动模型缓存、基于 PSR-16 的缓存、 Crontab 秒级定时任务、国际化、Validation 表单验证器 等非常便捷的功能,满足丰富的技术场景和业务场景,开箱即用。
Swoft:PHP 微服务协程框架
Swoft 是一款基于 Swoole 扩展实现的 PHP 微服务协程框架。Swoft 能像 Go 一样,内置协程网络服务器及常用的协程客户端且常驻内存,不依赖传统的 PHP-FPM。
有类似 Go 语言的协程操作方式,有类似 Spring Cloud 框架灵活的注解、强大的全局依赖注入容器、完善的服务治理、灵活强大的 AOP、标准的 PSR 规范实现等等。
easySwoole 高性能HTTP框架
easySwoole 专为API而生,是一款常驻内存化的PHP开发框架,摆脱传统PHP运行模式在进程唤起和文件加载上带来的性能损失,自带服务器功能,无需依赖Apache或Nginx运行。在web服务器模式下,支持多层级(组模式)控制器访问与多种事件回调,高度封装了Swoole Server 而依旧维持Swoole Server原有特性,支持在 Server 中监听自定义的TCP、UDP协议,让开发者可以最低的学习成本和精力,编写出多进程,可定时,可异步,高可用的应用服务。
MixPHP
MixPHP 是一款基于 Swoole 的 FastCGI、常驻内存、协程三模 PHP 高性能框架,MixPHP 秉承 "普及 PHP 常驻内存型解决方案,促进 PHP 往更后端发展" 的理念而创造,采用 Swoole 原生协程与最新的 PHP Stream 一键协程化技术,提供了 Console / Daemon / HTTP / WebSocket / TCP / UDP 开发所需的众多开箱即用的组件。
在其他 Swoole 框架都定位于大中型团队、庞大的 PHP 应用集群的时候,MixPHP 决定推动这项技术的普及,我们定位于众多的中小型企业、创业型公司,我们将 Swoole 的复杂度封装起来,用简单的编码方式呈现给用户,让更多的中级程序员也可打造高并发系统,努力让 Swoole 不再只是高级程序员的专利。
Swoolefy
swoolefy是一个基于swoole实现的轻量级高性能的常驻内存型的API和Web应用服务框架,高度封装了http,websocket,udp服务器,以及基于tcp实现可扩展的rpc服务, 同时支持composer包方式安装部署项目。
基于简单易用,swoolefy抽象Event事件处理类, 实现与底层的回调的解耦,支持swoole原生协程,协程实例应用注册,组件依赖注入,全局事件注册,异步任务管理,自定义进程管理,RPC服务,mysql,redis连接池,支持基于自定义进程的redis,rabitmq,kafka的订阅发布,crontab定时任务等等,让更多phper能够高效低成本开发出常驻内存应用服务。
我爱编程网
php 服务器怎么监控多个下级工作站的网络状态,cpu,磁盘使用情况呢?
1,Linux下可以在/proc/cpuinfo中看到每个cpu的详细信息。但是对于双核的cpu,在cpuinfo中会看到两个cpu。常常会让人误以为是两个单核的cpu。其实应该通过PhysicalProcessorID来区分单核和双核。而PhysicalProcessorID可以从cpuinfo或者dmesg中找到.flags如果有ht说明支持超线程技术判断物理CPU的个数可以查看physicalid的值,相同则为同一个物理CPU2,查看内存大小:cat/proc/meminfo|grepMemTotal3,其他一些可以查看详细linux系统信息的命令和方法:uname-a#查看内核/操作系统/CPU信息的linux系统信息命令head-n1/etc/issue#查看操作系统版本,是数字1不是字母Lcat/proc/cpuinfo#查看CPU信息的linux系统信息命令hostname#查看计算机名的linux系统信息命令lspci-tv#列出所有PCI设备lsusb-tv#列出所有USB设备的linux系统信息命令lsmod#列出加载的内核模块env#查看环境变量资源free-m#查看内存使用量和交换区使用量df-h#查看各分区使用情况du-sh#查看指定目录的大小grepMemTotal/proc/meminfo#查看内存总量grepMemFree/proc/meminfo#查看空闲内存量uptime#查看系统运行时间、用户数、负载cat/proc/loadavg#查看系统负载磁盘和分区mount|column-t#查看挂接的分区状态fdisk-l#查看所有分区swapon-s#查看所有交换分区hdparm-i/dev/hda#查看磁盘参数(仅适用于IDE设备)dmesg|grepIDE#查看启动时IDE设备检测状况网络ifconfig#查看所有网络接口的属性iptables-L#查看防火墙设置route-n#查看路由表netstat-lntp#查看所有监听端口netstat-antp#查看所有已经建立的连接netstat-s#查看网络统计信息进程ps-ef#查看所有进程top#实时显示进程状态用户w#查看活动用户id#查看指定用户信息last#查看用户登录日志cut-d:-f1/etc/passwd#查看系统所有用户cut-d:-f1/etc/group#查看系统所有组crontab-l#查看当前用户的计划任务服务chkconfig–list#列出所有系统服务chkconfig–list|grepon#列出所有启动的系统服务程序rpm-qa#查看所有安装的软件包cat/proc/cpuinfo:查看CPU相关参数的linux系统命令cat/proc/partitions:查看linux硬盘和分区信息的系统信息命令cat/proc/meminfo:查看linux系统内存信息的linux系统命令cat/proc/version:查看版本,类似uname-rcat/proc/ioports:查看设备io端口cat/proc/interrupts:查看中断cat/proc/pci:查看pci设备的信息cat/proc/swaps:查看所有swap分区的信息
如何使用PHP实时监控Linux服务器的cpu,内存,硬盘信息
1,Linux下可以在/proc/cpuinfo中看到每个cpu的详细信息。但是对于双核的cpu,在cpuinfo中会看到两个cpu。常常会让人误以为是两个单核的cpu。
其实应该通过Physical Processor ID来区分单核和双核。而Physical Processor ID可以从cpuinfo或者dmesg中找到. flags 如果有 ht 说明支持超线程技术 判断物理CPU的个数可以查看physical id 的值,相同则为同一个物理CPU
2,查看内存大小:
cat /proc/meminfo |grep MemTotal
3,其他一些可以查看详细linux系统信息的命令和方法:
uname -a # 查看内核/操作系统/CPU信息的linux系统信息命令
head -n 1 /etc/issue # 查看操作系统版本,是数字1不是字母L
cat /proc/cpuinfo # 查看CPU信息的linux系统信息命令
hostname # 查看计算机名的linux系统信息命令
lspci -tv # 列出所有PCI设备
lsusb -tv # 列出所有USB设备的linux系统信息命令
lsmod # 列出加载的内核模块
env # 查看环境变量资源
free -m # 查看内存使用量和交换区使用量
df -h # 查看各分区使用情况
du -sh # 查看指定目录的大小
grep MemTotal /proc/meminfo # 查看内存总量
grep MemFree /proc/meminfo # 查看空闲内存量
uptime # 查看系统运行时间、用户数、负载
cat /proc/loadavg # 查看系统负载磁盘和分区
mount | column -t # 查看挂接的分区状态
fdisk -l # 查看所有分区
swapon -s # 查看所有交换分区
hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
dmesg | grep IDE # 查看启动时IDE设备检测状况网络
ifconfig # 查看所有网络接口的属性
iptables -L # 查看防火墙设置
route -n # 查看路由表
netstat -lntp # 查看所有监听端口
netstat -antp # 查看所有已经建立的连接
netstat -s # 查看网络统计信息进程
ps -ef # 查看所有进程
top # 实时显示进程状态用户
w # 查看活动用户
id # 查看指定用户信息
last # 查看用户登录日志
cut -d: -f1 /etc/passwd # 查看系统所有用户
cut -d: -f1 /etc/group # 查看系统所有组
crontab -l # 查看当前用户的计划任务服务
chkconfig –list # 列出所有系统服务
chkconfig –list | grep on # 列出所有启动的系统服务程序
rpm -qa # 查看所有安装的软件包
cat /proc/cpuinfo :查看CPU相关参数的linux系统命令
cat /proc/partitions :查看linux硬盘和分区信息的系统信息命令
cat /proc/meminfo :查看linux系统内存信息的linux系统命令
cat /proc/version :查看版本,类似uname -r
cat /proc/ioports :查看设备io端口
cat /proc/interrupts :查看中断
cat /proc/pci :查看pci设备的信息
cat /proc/swaps :查看所有swap分区的信息
以上就是我爱编程网整理的服务器监控框架php 如何使用PHP实时监控Linux服务器的cpu,内存,硬盘信息相关内容,想要了解更多信息,敬请查阅我爱编程网。