
テストしたdjangoプロジェクトでuwsgiを使用したいのですが、うまくusgi --ini uwsgi.ini
いきます。
書いてエラーが出て systemd
調整したいです。
これは私のファイルです。
/etc/systemd/system/mysite.service
[Unit]
Description=uWSGI for proj
After=syslog.target
[Service]
Restart=always
ExecStart=/usr/bin/uwsgi --ini /usr/share/nginx/ENV/proj/proj/uwsgi.ini
StandardError=syslog
KillSignal=SIGQUIT
Type=forking
NotifyAccess=main
[Install]
WantedBy=multi-user.target
初めて使うときはsystemctl restart mysite.service
大丈夫でしたが、使用してからsystemctl stop mysite.service
再起動しました。systemctl restart mysite.service
ただし、停止してから再起動することはできません
。エラーが発生します。
proj.service - uWSGI for proj
Loaded: loaded (/usr/lib/systemd/system/proj.service; disabled)
Active: failed (Result: start-limit) since Fri 2015-11-13 13:40:35 CST; 887ms ago
Process: 4297 ExecStart=/usr/bin/uwsgi --ini /usr/share/nginx/ENV/proj/proj/uwsgi.ini (code=exited, status=0/SUCCESS)
Main PID: 4298 (code=exited, status=0/SUCCESS)
Nov 13 13:40:35 localhost.localdomain systemd[1]: proj.service holdoff time over, scheduling restart.
Nov 13 13:40:35 localhost.localdomain systemd[1]: Stopping uWSGI for proj...
Nov 13 13:40:35 localhost.localdomain systemd[1]: Starting uWSGI for proj...
Nov 13 13:40:35 localhost.localdomain systemd[1]: proj.service start request repeated too quickly, refusing to start.
Nov 13 13:40:35 localhost.localdomain systemd[1]: Failed to start uWSGI for proj.
Nov 13 13:40:35 localhost.localdomain systemd[1]: Unit proj.service entered failed state.
[root@localhost ~]# vim /lib/systemd/system/proj.service
助けてください
ありがとう
答え1
proj.service 起動要求が早すぎるため、起動が拒否されました。
このメッセージは、サービスを頻繁に再起動しており、あまりにもsystemd
多くの再起動によって問題が発生する前にそれを検出して防止する統合メカニズムがあることを示しています。
StartLimitInterval=
この動作を修正するいくつかのオプションがありますStartLimitBurst=
。もっと読むことができますマニュアルページ。
この場合、/etc/systemd/system/mysite.service
セクションの下に追加するだけです[Unit]
。
答え2
タイプ=フォーク 通知アクセス=基本
これは、準備プロトコルの不一致の別のケースです。 docoは、プログラムがシステムテキストメッセージ準備プロトコルを使用していることを知らせます。
タイプ=通知 通知アクセス=すべて
追加読書
- 「システム」。uWSGI 2.0 ドキュメント。
- ジョナサンデボインポラード(2015)。Unixデーモンの準備プロトコルの問題。よく与えられる答えです。