Yii2.0 安装yii2-queue并在Linux启动守护进程监听消息
一、什么是yii2-queue?
Yii2-queue是Yii2.0 PHP框架下一个消息队列拓展插件,支持基于DB, Redis, RabbitMQ, AMQP, Beanstalk 和 Gearman等。yii2-queue GitHub地址:https://github.com/yiisoft/yii2-queue
二、如何安装yii2-queue?
php composer.phar require --prefer-dist yiisoft/yii2-queue
三、Linux systemd介绍
systemd是linux下的一款系统和服务管理器,为什么要使用systemd ? 在rpm包二进制方式安装的linux软件中,使用init守护进程进行服务状态的管理或者使用service命令 例如启动Mysql数据库可以是 /etc/init.d/mysql start 或者service mysql start.
使用linux init进程进行管理服务的时候有两个缺点:
1.init系统进程是串行执行的,也就是同步的 ,只有前一个进程启动完成,才会启动下一进程。
2.启动脚步复杂,init进程是只执行启动脚步,不管其他的任务
使用Systemd优点:
1.Systemd支持并行化任务,
2.同时采用socket于D-Bus总线式激活服务,按需启动守护进程(daemon)
在新版的Linux系统中都在使用sytemd 进行管理 例如(Ubuntu 16、Debian 8、CentOS 7)
四、在Linux创建systemd系统服务监听队列消息
1、在Linux下进入system目录,相关命令:cd /etc/systemd/system;
2、新增yii-queue@.service文件,相关命令:vi yii-queue@.service;
3、yii-queue@.service文件内容如下:
[Unit]
Description=Yii Queue Worker %I
After=network.target
# the following two lines only apply if your queue backend is mysql
# replace this with the service that powers your backend
After=mysql.service
Requires=mysql.service [Service]
User=www-data
Group=www-data
ExecStart=/usr/bin/php /var/www/my_project/yii queue/listen --verbose
Restart=on-failure [Install]
WantedBy=multi-user.target
4、重载systemd配置文件使其生效,相关命令:systemctl daemon-reload;
5、其他相关命令:
# To start two workers
systemctl start yii-queue@ yii-queue@ # To get the status of running workers
systemctl status "yii-queue@*" # To stop a specific worker
systemctl stop yii-queue@ # To stop all running workers
systemctl stop "yii-queue@*" # To start two workers at system boot
systemctl enable yii-queue@ yii-queue@
Yii2.0 安装yii2-queue并在Linux启动守护进程监听消息的更多相关文章
- python实现Linux启动守护进程
python实现Linux启动守护进程 DaemonClass.py代码: #/usr/bin/env python # -*- coding: utf-8 -*- import sys import ...
- YII2.0 ——安装yii2项目
有两种安装方式 第一种:使用composer进行安装 composer global require"fxp/composer-asset-plugin:^1.2.0" compo ...
- yii2.0安装ElasticSearch及使用
yii2.0安装ElasticSearch安装及使用教程:https://www.yiichina.com/tutorial/1046 Elasticsearch 权威指南(中文版):https:// ...
- asp.net core2.0 部署centos7/linux系统 --守护进程supervisor(二)
原文:asp.net core2.0 部署centos7/linux系统 --守护进程supervisor(二) 续上一篇文章:asp.net core2.0 部署centos7/linux系统 -- ...
- linux创建守护进程
守护进程deamon 是一个后台进程,无需用户输入就能运行,用来在系统后台提供某种服务. 常见的守护进程有Wbe服务器.邮件服务器以及数据库服务器等等.守护进程不能控制终端,所以任何的输入和输出都需要 ...
- linux 创建守护进程的相关知识
linux 创建守护进程的相关知识 http://www.114390.com/article/46410.htm linux 创建守护进程的相关知识,这篇文章主要介绍了linux 创建守护进程的相关 ...
- linux C守护进程编写
linux编程-守护进程编写 守护进程(Daemon)是运行在后台的一种特殊进程.它独立于控制终端并且周期性地执行某种任务或等待 处理某些发生的事件.守护进程是一种很有用的进程. Linux的大多数服 ...
- linux系统实现多个进程监听同一个端口
通过 fork 创建子进程的方式可以实现父子进程监听相同的端口. 方法:在绑定端口号(bind函数)之后,监听端口号之前(listen函数),用fork()函数生成子进程,这样子进程就可以克隆父进程, ...
- 【Linux】- 守护进程的启动方法
转自:Linux 守护进程的启动方法 Linux中"守护进程"(daemon)就是一直在后台运行的进程(daemon). 本文介绍如何将一个 Web 应用,启动为守护进程. 一.问 ...
随机推荐
- nginx 搭建 rtmp 服务器
前言 最近接手了一个跟视频监控相关的项目,用了近年来越来越流行的 Web 服务器 nginx 加上 nginx-rtmp-module 搭建 rtmp 服务器.使用了阿里云的服务器,系统 Ubuntu ...
- 75th LeetCode Weekly Contest Rotate String
We are given two strings, A and B. A shift on A consists of taking string A and moving the leftmost ...
- Codeforces - 440C DFS
搜索苦手,注意正负 #include<bits/stdc++.h> #define rep(i,j,k) for(int i = j; i <=k; i++) using names ...
- js最后深入总结
js常用事件: click #点击事件 hover #鼠标漂浮事件,,鼠标移到上面就触发事件 blur #失去焦点就触发事件,多用于文本框操作 focus #获得焦点就触发事件, change ...
- /proc下重要路径知识
/proc 虚拟目录,是内存的映射,内核与进程的虚拟文件系统目录/proc/version 内核版本/proc/sys/kernel 系统内核功能/proc/sys/net/ipv4*/proc/cp ...
- VMware Workstation 12.5.9 Pro虚拟机软件中文版
更新为 VMware Workstation 12.5.9 pro版.VMware虚拟机软件无疑是windows系统下最强大好用的虚拟机软件.最新的VMware Workstation 12 Pro ...
- Mybatis学习笔记18 - 缓存
两级缓存: 一级缓存:(本地缓存):sqlSession级别的缓存.一级缓存是一直开启的:SqlSession级别的一个Map 数据库同一次会话期间查询到的数据会放在本地缓存中.以后如果需要获取相同的 ...
- Linux 系统 文件锁 fcntl函数详解
#include <unistd.h> #include <fcntl.h> int fcntl(int fd, int cmd); int fcntl(int fd, int ...
- tcp的半连接与完全连接队列(二)
队列及参数 server端的半连接队列(syn队列) 在三次握手协议中,服务器维护一个半连接队列,该队列为每个客户端的SYN包开设一个条目(服务端在接收到SYN包的时候,就已经创建了request_s ...
- w3schools juerymobile
http://www.w3schools.com/jquerymobile/jquerymobile_examples.asp <!DOCTYPE html> <html> & ...