zl程序教程

您现在的位置是:首页 >  其它

当前栏目

解决Command "laravoole" is not defined.

解决 not is quot Command defined
2023-09-11 14:16:35 时间

版权声明:本文为博主原创文章,未经博主允许不得转载。 

 

GitHub地址:https://github.com/garveen/laravoole

 

先来执行正常的安装流程:

安装

要开始,将laravoole添加到composer.json文件并运行composer update

"garveen/laravoole": "^0.5.0"
 

或者只是运行shell命令:

composer require garveen/laravoole

 一旦composer完成工作,您需要在您的config / app.php中注册Laravel服务提供商:

'providers' => [
    ...
    Laravoole\LaravooleServiceProvider::class,
],
注意:您不应该使用文件会话处理程序,因为它在此环境中不稳定。改用redis或其他处理程序。

用法

php artisan laravoole [start | stop | reload | reload_task | restart | quit]

 

 结果一运行,。。。

开始跳坑,

网上查了一下,资料好少,基本来自stackoverflow 
建议一:尝试composer update然后php artisan dump-autoload再重试。(好像不管用)
建议二:编辑你的app/Console/Kernel.php文件并将你的命令添加到$commands数组中。

试了一下建议二:

vim blog/app/Console/Kernel.php

//use Laravoole;

protected $commands = [
        //
        //Laravoole\LaravooleServiceProvider::class,
];

 
尝试引入Laravoole到Kernel,后来发现不对
 

最后实在没有办法,在bootstrap/cache/services.php加入Laravoole配置
vim bootstrap/cache/services.php
'deferred' =>
  array (
...
'command.laravoole' => 'Illuminate\\Support\\ServiceProvider\\LaravooleServiceProvider',
);
报了一个刚才乱改blog/app/Console/Kernel.php的错
还原了blog/app/Console/Kernel.php,bootstrap/cache/services.php
居然神奇的启动了,怀疑是缓存的问题!(不太清楚,如有其他见解,请评论留言哈!)

 然后根据文档配置了laravoole.php,重启了laravoole。

 laravoole.php  可以改一些配置参数

<?php
namespace Laravoole;

return [
    // for laravoole itself
    'base_config' => [
        'host' => env('LARAVOOLE_HOST', '127.0.0.1'),
        'port' => env('LARAVOOLE_PORT', 9050),

        // this file storages the pid of laravoole
        'pid_file' => env('LARAVOOLE_PID_FILE', storage_path('/logs/laravoole.pid')),
...

...

...

 


接下来就可以用Apache的ab测试Laravoole的性能优化效果啦!!!