Supervisor

nginx+uwsgi 和nginx+gunicorn区别、如何部署

雨燕双飞 提交于 2020-05-02 10:01:08
[线上环境部署Django,nginx+uwsgi 和nginx+gunicorn,这两种方案,应该如何选择?] 大家是采用的何种部署方式? 第一种,高并发稳定一点 我们公司使用的是nginx+gunicorn,主要是方便。性能可以从其他方面优化。 随便吧 我们用的是nginx supervisor gunicorn Instagram由uwsgi转到gunicorn,建议用gunicorn,配置简单方便。 推荐 nginx supervisor gunicorn 配置简单,运维方便。 用的nginx+gunicorn方式,uwsgi没用过所以没法对比,就gunicorn的感受也来讲已经很快了,nginx处理掉了几乎全部的静态文件请求,实际上需要gunicorn再来处理的请求已经很少了。 gunicorn可以用Python文件直接配置,试用起来比较舒服。 我觉得这两种相差不多,根据你们相关的运维人员和开发人员的熟悉程度来决定。 现在的网站其实大部分处理的都是静态文件请求,除了诸如秒杀活动等等特定的业务,一般业务的请求量并不是很大。 所以你可以根据:1、你们当前的业务与以后可能会增加的业务;2、你们的运维人员的技能 来决定,哪个更熟悉就选哪个 [如何使用Nginx和uWSGI或Gunicorn在Ubuntu上部署Flask Web应用] 我在很多的博客中都看过有关 Flask

怎么将uefi改成legacy启动|BIOS设置legacy引导模式的方法

北战南征 提交于 2020-05-02 04:51:14
怎么设置legacy启动?现在新型电脑都是采用uefi gpt启动模式,以适应win8、win10这些新型操作系统,不过win7之前的系统大多不支持uefi,而是采用legacy启动模式,硬盘分区表是MBR,而不是GPT,如果要在新机型装win7之前的系统,就要将uefi改成legacy,然后将硬盘分区表gpt改成mbr。下面系统城小编跟大家介绍将uefi改成legacy启动模式的方法。 相关教程: 不同品牌电脑开机进BIOS界面方法 制作U盘PE启动盘方法 win10怎么重装成win7 (legacy mbr安装) 联想s400 win8改win7教程 一、BIOS设置legacy启动模式 常见选项 注:如果有以下选项,就需要修改,没有就略过 1、Secure Boot改成Disabled,禁用安全启动, 这个最重要 !部分机型需设置BIOS密码才可以修改Secure Boot,找到Set Supervisor Password设置密码 2、CSM改成Enable或Yes或ALWAYS,表示兼容模式 3、OS Mode Selection设置为CSM OS 4、Boot mode或UEFI mode或Boot List Option改成Legacy,表示传统启动方式 5、OS Optimized Defaults改成Disabled或Other OS,禁用默认系统优先设置 6

无法进入docker容器内排查总结

徘徊边缘 提交于 2020-05-01 13:24:44
在进行处理服务器磁盘空间时,发现无法进入docker内部进行清理空间 在执行时,报下面错误 docker exec -it 容器ID bash 查看容器状态 docker ps 发现进程status 状态为up 启动状态,但是在进行进入容器操作时,却提示容器没有启动 临时解决 : 重启了docker服务,正常进入容器 但是具体原因得找到,所以就进行了排查之路 排查过程 : 首先此容器服务正常运行,考虑可能原因点: 内存溢出,导致hang住 服务进程被人异常删除(例如,直接清理了pid文件,却没有常规杀进程,导致ps可以看到进程存在) 在client和容器连接中出来问题(可能client连接不到容器) 容器代码有问题(比如进程的处理过程,资源分配不当) 容器内部署了supervisor,会不会是服务不可用的时候,自己已经停止,然后supervisor强行拉起,但是仍然不可用 容器内部应用服务不可用 磁盘空间不足 ... 然后逐一分析可能性 1 内存 当时没有考虑到这点,所以重启之前忘了查看内存,也进不去容器,所以无法用free -m 查看当时容器的内存情况。后期在重启后有查看系统/var/log下的日志,并没有发现有报内存不足的错,这点排除了 2 pid删除 可以查看一下/root/.bash_history看一下历史命令,看有没有人误操作过删除pid文件,命令中没有找到

django+celery 实现定时任务

心不动则不痛 提交于 2020-04-28 05:51:18
利用 celery 实现定时任务   celery支持定时任务,设定好任务的执行时间,celery就会定时自动帮你执行, 这个定时任务模块叫celery beat Celery安装 由于celery 4.0 ,不再支持 Windows,故我们使用celery3.1.26 在windows环境下进行测试 安装: pip install celery== 3.1 . 26 .post2 django-celery== 3.2 . 2 flower== 0.9 . 2 Django中配置 在主项目的配置文件settings.py 中应用注册表INSTALLED_APPS中加入 djcelery INSTALLED_APPS = [ ' django.contrib.admin ' , ' django.contrib.auth ' , ' django.contrib.contenttypes ' , ' django.contrib.sessions ' , ' django.contrib.messages ' , ' django.contrib.staticfiles ' , ' app01.apps.App01Config ' , ' djcelery ' , #加入djcelery ] 在settings.py 中配置celery信息 import djcelery #

node-express项目的搭建并通过mongoose操作MongoDB实现增删改查分页排序(四)

瘦欲@ 提交于 2020-04-28 02:37:22
最近写了一个用node来操作MongoDB完成增、删、改、查、排序、分页功能的示例,并且已经放在了服务器上地址: http://39.105.32.180:3333 。 Mongoose是在node.js环境下对mongodb进行便捷操作的对象模型工具,有人已经总结了使用方法, 传送门 项目代码地址,欢迎star; 项目一共四部分:    1.MacOS下MongoDB数据库的安装配置。   2.MongoDB在MacOS上的客户端Robo 3T 的使用。    3.Centos 下MongoDB数据库的安装配置。    4.node-express项目的搭建并通过mongoose操作 MongoDB数据库详细示例,完成增删改查分页排序。 (本篇文章)    统一声明:安装插件或执行命令的时候linux,mac 有时候需要加上 sudo 一:先安装node.js,安装express等,然后创建项目 新建express站点,express publish-system -e -c less,新建的项目名称是publish-system,选择ejs模板,使用less进行预编译,    如果不知道express的这些指令,可以通过express –help查看  2. 进入到这个项目目录 cd publish-system,安装依赖 npm install 项目目录应该是这样的:    

Linux服务器部署.Net Core笔记:目录

喜夏-厌秋 提交于 2020-04-27 13:12:45
目录 Linux服务器部署.Net Core笔记:一、开启ssh服务 Linux服务器部署.Net Core笔记:二、安装FTP Linux服务器部署.Net Core笔记:三、安装.NetCore运行环境 Linux服务器部署.Net Core笔记:四、安装Supervisor进程守护 Linux服务器部署.Net Core笔记:五、安装Nginx Linux服务器部署.Net Core笔记:六、安装MySQL 来源: oschina 链接: https://my.oschina.net/u/4321806/blog/4255070

Linux服务器部署.Net Core笔记:目录

戏子无情 提交于 2020-04-27 12:57:24
目录 Linux服务器部署.Net Core笔记:一、开启ssh服务 Linux服务器部署.Net Core笔记:二、安装FTP Linux服务器部署.Net Core笔记:三、安装.NetCore运行环境 Linux服务器部署.Net Core笔记:四、安装Supervisor进程守护 Linux服务器部署.Net Core笔记:五、安装Nginx Linux服务器部署.Net Core笔记:六、安装MySQL 来源: oschina 链接: https://my.oschina.net/u/4419100/blog/4255046

物联网架构成长之路(15)-Jenkins部署SpringBoot

♀尐吖头ヾ 提交于 2020-04-27 05:35:25
1.前言   现在慢慢也在负责一些工作了。这段时间有空,就多了解了解软件多人开发的一些知识。以前项目都是我一个人做的,从数据库设计到后端再到前端,全部放在一个war包丢到tomcat里面然后运行,利用tomcat自带的manager插件做简单的部署。根本没有版本管理的概念。   现在项目开始涉及多人合作,多项目模块整合,各个中间件等等,越来越复杂了。今天碰巧了解到Jenkins工具。一个CI持续集成工具。   CI持续集成,第一次了解到,摘抄一下解释: 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。 2.Jenkins 安装   安装JDK   安装Maven   安装 Jenkins.war http://mirrors.jenkins.io/war/latest/jenkins.war   参考这篇博客 http://www.ityouknow.com/springboot/2017/11/11/springboot-jenkins.html   https://www.liaoxuefeng.com/article

CentOS7部署.Net Core2.0站点(中)

风流意气都作罢 提交于 2020-04-26 07:37:03
继续上篇的内容,本篇来学习下nginx的配置和守护进程supervisor的使用。 一、Nginx安装及配置 (1)安装nginx sudo yum install epel-release # 添加源 sudo yum install nginx # 安装nginx (2)启动nginx sudo systemctl start nginx sudo systemctl enable nginx (3)配置防火墙 sudo firewall-cmd --zone=public --add-port=80/tcp --permanent # 开放80端口 systemctl restart firewalld # 重启防火墙以使配置即时生效 成功完成以上配置后,测试nginx是否可以访问,本地浏览器输入127.0.0.1,成功显示如下 (4)修改配置文件转发.net core应用程序 创建并编辑一个新的配置文件netcore.conf,命令如下 [root@localhost nginx] # cd /etc/nginx/conf.d [root@localhost conf.d] # touch netcore.conf [root@localhost conf.d] # vim netcore.conf netcore.conf配置文件内容如下: server { listen

laravel job 队列

喜欢而已 提交于 2020-04-19 23:19:20
1.数据库建表 php artisan queue:table<span> </ span> //队列任务表 php artisan queue:failed-table<span> </ span> //任务执行失败表 php artisan migrate 2.创建job类 <?php namespace App\Jobs; use App\Services\TestService; use Illuminate\Support\Facades\Log; class CommentInfoJob extends Job { public $commentService; public $user_id; public $comment_id; /** * Create a new job instance. * * @return void */ public function __construct($user_id,$comment_id) { $this->user_id = $user_id; $this->comment_id = $comment_id; } /** * Execute the job. * * @return void */ public function handle() { (new TestService())->testsssss(