问题标签 [upstart]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ubuntu - 使用 upstart 在 ubuntu 上运行 Python 服务
我想创建以使用 Upstart 将心跳服务(python 脚本)部署为服务。
我的理解是我必须添加/etc/init/myheartbeatservice.conf
以下内容。
我的脚本启动另一个服务进程并监视进程并定期向外部服务器发送心跳。是startup
和shutdown
正确的事件吗?我的脚本也创建了一个新线程。我假设我还需要添加fork daemon
到我的 conf 文件中?
谢谢。
python - 异步运行一些 Python 代码的正确方法是什么?
我需要从我的普通 Flask 应用程序发送邮件,所以我认为最简单的方法是使用 smtplib 发送邮件。但我必须异步执行 - 你不能只在请求中插入 3 秒延迟 - 对吧?因此,我将电子邮件添加到队列(psql 表)中,然后从另一个读取该表并使用 smptlib 的程序发送它。
第二个程序(maildonkey)作为一个独立的进程在一个独立的 upstart 服务中运行。
现在我需要另一个小的异步服务,我正在考虑是否应该编写另一个 python 脚本(第三个,计算我的 Flask 应用程序和“maildonkey”)或者我应该使用 Python 的“多进程”甚至“线程”之类的东西' 并重写第二个程序?
(当我在 Clojure 中编程时,我可以很容易地使用“futures”在单独的线程中运行代码,所以通常我会这样做。)
networking - 网络启动和系统即将关闭时的 Ubuntu Upstart 事件
我需要以下两个事件的新贵事件名称。
- 网络已启动并正在运行
- 当系统即将关闭时
django - 如何在 virtualenv 中为 Celery (django-celery) 编写 Ubuntu Upstart 作业
我真的很喜欢使用暴发户。我目前有新贵的工作来在许多 virtualenvs 中运行不同的 gunicorn 实例。但是,我在互联网上为 Celery upstart 脚本找到的 2-3 个示例对我不起作用。
因此,使用以下变量,我将如何编写一个 Upstart 作业以在 virtualenv 中运行 django-celery。
Django项目的路径:
该项目的 virtualenv 的路径:
celery 设置的路径是 Django 项目设置文件(django-celery):
此 Celery 实例的日志文件的路径:
对于这个虚拟环境,用户:
和小组:
我想用 celerybeat 运行 Celery Daemon,所以,我想传递给 django-admin.py(或 manage.py)的命令是:
如果脚本在 gunicorn 作业开始后启动,并在 gunicorn 作业停止时停止,那就更好了。假设该文件是:
message-queue - 通过python监听所有新贵的工作和事件
我想通过 Python 监听 Linux 主机(Amazon EC2 Linux AMI)上的所有 Upstart 作业/事件,以便将所有作业/事件桥接到 RabbitMQ 服务器,以便工作主机可以记录它并在某些作业中执行某些操作/事件。
Upstart 的版本是 0.6.5。
我找到了“dbus-python”模块(已经安装在系统中)。但我无法理解。
我怎样才能做到这一点 ?
ubuntu - 为什么在 GNU/Linux 上停止(或重新启动)squid3 这么慢?
我使用的是 Ubuntu 11.04,在调用“/etc/init.d/squid3 restart”时,需要大约半分钟才能重新启动。它在做什么?
输出如下所示:
fedora - 创建适用于 upstart 和 systemd 的 fedora rpm?
我已经建立了一个服务,我想通过 rpm 分发它,并且应该在不同的 Fedora 版本上工作。由于它是一项服务,它应该与系统集成,因此可以执行以下操作:
问题是fedora在版本9 到14 中使用了upstart ,从15 开始使用systemd 。我可以为这两个系统执行此操作,但我不确定如何正确打包它。
我想我必须为 Fedora 版本构建不同的 rpm。唯一不同的是要复制到不同位置的一些文件。
我应该如何处理这些差异?在 .spec 文件或 Makefile 中?还是应该使用两个不同的 .spec 文件?
linux - Upstart:在启动序列期间在启动后脚本节中使用命令替换时出错
我在 upstart 中看到一个问题,在启动后脚本节中使用命令替换会导致错误(系统日志报告“以状态 1 终止”),但仅在初始系统启动期间。
我已经尝试过在阳光下使用几乎所有启动事件挂钩。local-filesystems 和 net-device-up 大约 1/100 次尝试没有错误,所以它看起来像一个竞争条件。它在手动启动/停止时工作得很好。我见过的触发错误的命令替换是一个简单的 cat 或 date,我尝试使用 $() 方式和反引号方式。我也尝试过在启动前使用睡眠来击败比赛条件,但这没有任何作用。
我在带有 Win7 主机的 VMWare 上运行 Ubuntu 11.10。已经花了太多时间来解决这个问题......有人有任何想法吗?
这是我的 .conf 文件供参考:
django - 同时运行 Django fcgi 守护进程
我在 Ubuntu脚本中有以下两个exec
语句:upstart
第二个命令仍然存在,而第一个命令停止工作。当两个命令的顺序颠倒时也会发生同样的情况。
当使用与上述完全相同的语法从同一个新贵服务单独(即单独)运行时,这两个命令都可以完美运行。
我究竟做错了什么?
ubuntu - 向新贵服务发送重新加载命令
如何upstart
在不需要完全停止的情况下向启动的守护程序发送某种重新加载命令?