littlebot
Published on 2025-04-16 / 0 Visits
0

【源码】基于 Swoole 框架的荣兴制冷设备有限公司网站

项目简介

本项目利用 Swoole 框架制作荣兴制冷设备有限公司网站,最初作为练手项目,后续计划发展成购物网站。荣兴制冷设备有限公司技术力量强、售后完善,在行业内处于领先且口碑良好。网站基于 Swoole 原生协程的新时代 PHP 高性能协程全栈组件化框架构建,具备高性能、全异步非阻塞 IO 等特性。

项目的主要特性和功能

  1. 高性能协程框架:基于 Swoole 扩展,有协程 HTTP、TCP、WebSocket 网络服务器,常驻内存,不依赖传统 PHP - FPM,实现全异步非阻塞 IO。
  2. 强大的编程特性:具备 AOP、灵活完善的注解功能、全局的依赖注入容器。
  3. 遵循标准规范:基于 PSR - 7 的 HTTP 消息实现、PSR - 14 的事件管理器、PSR - 15 的中间件、PSR - 16 的缓存设计。
  4. 丰富的功能组件:有可扩展的高性能 RPC、完善的服务治理、数据库 ORM、通用连接池。
  5. 多样化客户端:提供协程 Mysql、Redis、RPC、HTTP 客户端,协程和同步阻塞客户端可无缝自动切换。
  6. 任务与进程管理:支持协程、异步任务投递,可自定义用户进程。
  7. 其他特性:支持 RESTful、国际化,有高性能路由、快速灵活的参数验证器、别名机制、强大的日志系统和跨平台热更新自动 Reload。

安装使用步骤

环境要求

  1. PHP 7.0 +
  2. Composer

安装步骤

手动安装

  1. Clone 项目
  2. 安装依赖 composer install

Composer 安装

composer create-project swoft/swoft swoft

Docker 安装

docker run -p 80:80 swoft/swoft

Docker - Compose 安装

  1. cd swoft
  2. docker-compose up

配置

若执行 composer install 时程序自动复制环境变量配置文件失败,可手动复制项目根目录的 .env.example 并命名为 .env,执行 composer update 时不会触发相关复制操作。 ``` PFILE=/tmp/swoft.pid PNAME=php-swoft TCPABLE=true CRONABLE=false AUTO_RELOAD=true

HTTP_HOST=0.0.0.0 HTTP_PORT=80

WS_ENABLE_HTTP=true

TCP_HOST=0.0.0.0 TCP_PORT=8099 TCP_PACKAGE_MAX_LENGTH=2048 TCP_OPEN_EOF_CHECK=false

CRONTAB_TASK_COUNT=1024 CRONTAB_TASK_QUEUE=2048

WORKER_NUM=1 MAX_REQUEST=10000 DAEMONIZE=0 DISPATCH_MODE=2 LOG_FILE=@runtime/swoole.log TASK_WORKER_NUM=1 ```

管理命令

帮助命令

```text [root@swoft]# php bin/swoft -h _ __ _ / | _____ / | | ___ \ \ /\ / / _ \| || | ___) \ V V / () | | | |_/ _/_/ ___/|| _|

Usage: php bin/swoft {command} [arguments ...] [options ...]

Commands: entity The group command list of database entity gen Generate some common application template classes rpc The group command list of rpc server server The group command list of http-server ws There some commands for manage the webSocket server

Options: -v, --version show version -h, --help show help ```

HTTP Server 启动

是否同时启动 RPC 服务器取决于 .env 文件配置 ```bash php bin/swoft start

php bin/swoft start -d

php bin/swoft restart

php bin/swoft reload

php bin/swoft stop ```

WebSocket Server 启动

启动 WebSocket 服务器,可选是否同时支持 http 处理 ```bash php bin/swoft ws:start

php bin/swoft ws:start -d

php bin/swoft ws:restart

php bin/swoft ws:reload

php bin/swoft ws:stop ```

RPC Server 启动

启动独立的 RPC 服务器 ```bash php bin/swoft rpc:start

php bin/swoft rpc:start -d

php bin/swoft rpc:restart

php bin/swoft rpc:reload

php bin/swoft rpc:stop ```

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】