Submitted by gouki on 2020, May 13, 5:10 PM
之前写过一篇:laravel 队列报错:`AUTH` failed: ERR Client sent AUTH, but no password is set [tcp://127.0.0.1:6379] ,就在前两天,今天上线看的时候,发现pm2 status的时候显示failed。
于是就在看到底是怎么回事,按理这个参数应该没问题啊?经过不停的测试不停的测试,发现
1、将paramaters放在default和cache中,仍然报错
2、将paramaters放在options里,一样报错
3、将default/cache中的password删除,只除paramaters,报错
4、将default/cache中的password删除,删除paramaters,留options中的paramaters,报错
5、将所有涉及到密码的地方删除,成功
--------再看predis的github发现他已经几年不更新了。所以,我也只能忍喽?不然怎么办?如果有设置密码,就将这个key加回来【因为之前测试过,如果确实有密码,并且设置了,没问题】
再看,pm2 stauts,还是报错,那问题就来了。因为我直接php artisan queue:work --tries=5 --sleep=1没有错,但为什么pm2启动就报错呢?于是查看进程,ps uax|grep artisan,发现运行路径是在release/4目录下。而不是current目录【之所以目录结构 是这样,是缘于我采用deployer进行项目部署的】
即使我在current目录下执行pm2 start xxx.yml,也是默认在release/4路径,毕竟它是映射过来的
所以最终我只能修改yml文件,将artisan路径设置为绝对路径。强行指定为current所在的绝对路径。这样就没有问题了。
至此,Auth没有设置密码的问题解决。同时还解决了artisan 执行queue:work 路径不对的问题(如果不解决这个,这意味着无论我怎么执行,都不在正确的目录下了)
Tags: laravel, predis, auth
PHP | 评论:0
| 阅读:8872
Submitted by gouki on 2020, May 13, 12:34 PM
deployer是一个PHP版的部署工具,支持各类框架以及裸PHP的部署(支持的框架,其实也只是帮你预置了一些代码,方便你调用而已)
但deployer在部署的时候,其实都是从头开始执行了一遍流程,如果只是简单的改了一些小BUG,不影响整体的,这样的话,就性能太低了。或者说不是叫性能太低,是太耗时间了。毕竟composer帮你执行一遍。好歹也得有个1~2分钟了吧。git 拉一下全库,又得1~2分钟这得多痛苦。
所以简单写了一个task,如果更新不涉及composer/migration,就这样执行一下下喽
PHP代码
- desc("只更新代码");
- task("pull",function(){
- writeln(run("cd {{current_path}} && git pull"));
- });
-
- desc("更新代码,并清除一些缓存");
- task("update",[
- 'pull',
- 'artisan:cache:clear',
- 'artisan:config:cache',
- 'artisan:route:cache',
- 'artisan:optimize',
- 'artisan:queue:restart'
- ]);
这种就是属于临时性的。全量还是得靠 dep deploy。
想想的话,这样好象也暂够用了。如果将dep再配置一个后台,也可以完成很多事情。算了,不折腾
Tags: deployer
PHP | 评论:0
| 阅读:8639
Submitted by gouki on 2020, May 12, 9:31 AM
在用pm2管理队列的时候。发现queue:work一直启动失败,用pm2 log 看了一下,发现报错:【`AUTH` failed: ERR Client sent AUTH, but no password is set [tcp://127.0.0.1:6379]】
先确认redis是否有密码:
1、cat /etc/redis/redis.conf中确实 requirepass前的注释没有去掉。
2、运行redis-cli,config get requirepass,发现也确实是空
3、运行redis-cli,输入auth xxx ,返回:(error) ERR Client sent AUTH, but no password is set,证明确实没有密码
然后检查代码:
1、.env 文件中是否设置:未设置
2、config/database.php中是否设置:未设置
那这个问题就怪了,不过还是google了一下,发现好象是 predis 的问题。改成这样就OK了:
PHP代码
- 'default' => [
- 'host' => env('REDIS_HOST', '127.0.0.1'),
- 'port' => env('REDIS_PORT', 6379),
- 'database' => env('REDIS_DATABASE', 0),
- 'password' => env('REDIS_PASSWORD', null),
-
- 'parameters'=>[
- 'password'=>env('REDIS_PASSWORD', null)
- ]
- ],
database.php中关于redis那一块,增加 parameters 的数组下标,问题解决。
PHP | 评论:0
| 阅读:10906
Submitted by gouki on 2020, May 9, 2:34 PM
原来我的frpc是用supervisor来管理的。但不得不说的是,mac上面的supervisor真心不稳定。挂了重启还是会失败。
每次一失败,我都得跑上几十公里,去启动一下。。。于是这次尝试了用pm2来管理着看看,还算比较方便:
npm install -g pm2
pm2 start -x './frpc' -n frp -- -c /xxx/frp/frpc.ini
-x 是指定运行的文件
-n 是在pm2 status中显示的名称
-- 之后的是 ./frpc的参数 (最好是绝对路径)
运行如果没有报错,用pm2 status看一下就知道了。希望这样能够坚持长久一点
Flutter | 评论:0
| 阅读:10078
Submitted by gouki on 2020, April 24, 6:02 PM
如题,windows就有这个功能。虽然是快速打开然后关闭。但好歹不需要等来等去的啊
因为是PDF,所以上一篇的内容就派上用场了。。。
XML/HTML代码
- gouki@gouki 第九章学案 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.1字母表示数学案.pdf
- gouki@gouki 第九章学案 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.2代数式学案.pdf
- gouki@gouki 第九章学案 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.3代数式的值学案.pdf
- gouki@gouki 第九章学案 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.4整式学案.pdf
- gouki@gouki 第九章学案 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.5合并同类项学案.pdf
- gouki@gouki 第九章学案 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.6整式的加减学案.pdf
- gouki@gouki 第九章学案 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.7同底数幂的乘法学案.pdf
- gouki@gouki 第九章学案 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.8幂的乘方学案.pdf
- gouki@gouki 第九章学案 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.9积的乘方学案.pdf
- gouki@gouki 第九章学案 % cd ../第九章作业
- gouki@gouki 第九章作业 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.1字母表示数作业.pdf
- gouki@gouki 第九章作业 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.2代数式作业.pdf
- gouki@gouki 第九章作业 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.3代数式的值作业.pdf
- gouki@gouki 第九章作业 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.4整式作业.pdf
- gouki@gouki 第九章作业 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.5合并同类项作业.pdf
- gouki@gouki 第九章作业 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.6整式的加减作业.pdf
- gouki@gouki 第九章作业 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.7同底数幂的乘法作业.pdf
- gouki@gouki 第九章作业 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.8幂的乘方作业.pdf
- gouki@gouki 第九章作业 % lpr -P`lpstat -v|awk '{print $3}'|head -1|awk 'BEGIN{FS=":"} {print $1}'` 9.9积的乘方作业.pdf
嗯。没有用for in ,想着不多。。。其实还是应该可以用一下for in 或者 find . |exec 之类的
Flutter | 评论:0
| 阅读:9617