2017 © Pedro Peláez
 

library laravel-swoole

fast you laravel

image

gw123/laravel-swoole

fast you laravel

  • Thursday, April 26, 2018
  • by gw123
  • Repository
  • 1 Watchers
  • 1 Stars
  • 27 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 6 Versions
  • 8 % Grown

The README.md

imageLatest Version Php Version, (*1)

目录说明

image, (*2)

使用swoole加速laravel ,原有的项目代码无需变动! 原有的项目代码无需变动! 原有的项目代码无需变动!!!, (*3)

  • 使用swoole加速laravel
  • 实现websocket和http会话同步机制 ,在websocket断线重连后可以方便的恢复原来的会话

安装

  • 直接 composer require gw123/laravel-swoole
  • 修改根目录下的脚本文件 smallApi 修改为自己的安装位置
prefix=/data/wwwroot/laravelTest  #项目安装目录
php_bin=/data/install/php/bin/php #php执行文件位置
app_entry=${prefix}/api/api.php   #入口脚本位置
app_pid_file=/var/run/swoole.pid  #pid文件

运行方式1

  • 修改app/Console/Kernel ,在$commands数组中添加 LaravelServer\ServerCommand::class.
  • php artisan server 启动服务器
  • php artisan stop 停止服务器
  • php artisan restart 重启服务器

运行方式2

  • chmod +x server
  • ./smallApi start 启动服务
  • ./smallApi stop 关闭服务
  • ./smallApi reload 热重启服务,类似nginx reload
  • ./smallApi restart 请求服务
  • ./smallApi check 检测服务是否正常,这个命令可以配合一个 定时脚本用来检测服务是否正常,服务异常可以自动重启

可以将脚本放到 /etc/init.d目录下面 配合 chkconfig 命令实现开机自动运行 chkconfig --add smallApi

配置文件

config/server.php
    'bind_addr' => '0.0.0.0',  //绑定地址
    'port' => 82,              //绑定端口
    'debug_ip' => ['192.168.30.1', '127.0.0.1'],//限制日志输出的服务器
    'swoole' => []             //服务器配置参数

demo文件夹 示例代码说明(下面代码直接 php scriptname 方式运行)

  • baseServer 基础服务
  • laravelServer 基于laravel框架的swoole服务器
  • wsClient 模拟测试laraveServer服务器的websocket请求

webscoket 请求协议详细参考 wsClient代码

    $frame = '{"header":{},"get":{"username":"gw123","password":123456},"post":{},"body":"value"}';
    $frame = '{"header":{"path_info":"/test"},"get":{"username":"gw123","password":123456},"post":{},"body":"value"}';
    $frame = '{"header":{"path_info":"/gogo"},"get":{"username":"gw123","password":123456},"post":{},"body":"value"}';

    header 同http协议中的 header ,唯一不同的是需要指定  path_info 等同get的请求路径.
    所以协议默认请求下是模拟get请求 提交方式为 application/www-url-decode
    get  可以指定get参数
    post 指定post参数 需要配置header  设置REQUEST_METHOD为 POST
    body 是原始请求体用来实现一些特殊的请求(完善中)

调试

  • 将resource/debug.html 放到web目录下面
  • http://youhost/debug.html
  • 输入服务端网址 点击连接
  • 发送调试信息到浏览器: \LaravelServer\SwooleLog::debug('not foung');

The Versions

26/04 2018

dev-master

9999999-dev

fast you laravel

  Sources   Download

MIT

The Requires

 

26/04 2018

v1.5

1.5.0.0

fast you laravel

  Sources   Download

MIT

The Requires

 

26/04 2018

v1.4

1.4.0.0

fast you laravel

  Sources   Download

MIT

The Requires

 

26/04 2018

v1.3

1.3.0.0

fast you laravel

  Sources   Download

MIT

The Requires

 

26/04 2018

v1.1

1.1.0.0

fast you laravel

  Sources   Download

MIT

25/04 2018

v1.0

1.0.0.0

fast you laravel

  Sources   Download

MIT