実行中の複数のインスタンス竜巻
ページ応答は、特に計算集約的なプロセスではありません
完全なCPUの複数の使用例
マルチポートに対処する方法
マスター構成ファイルの設定ファイルを使用して+プロジェクト:Linuxの一般的なアプリケーションサービスコンフィギュレーションモードのnginxとsupervisord
スーパーバイザ監視プロセスの竜巻を使用します
インストール(あなたはpython2バージョンを指定する必要があるかどうかを確認するためにピップ注意を払うを使用してインストールした場合)
スーパーバイザデフォルトはPython2をサポートしています
須藤はapt-getをインストール監督
python3または実行、インストール上司のサポートのpython3バージョンvirtualenvの活性化した後、
最新バージョンをインストールするためにスーパーバイザーをインストールピップ
メインの設定ファイルのデプロイ/ supervisord.confをチェックします(ディレクトリが存在しない場合は作成する必要があります)
メインコマンドを使用して、サービスプロファイルを生成し、
echo_supervisord_conf>(ディレクトリが確立されて展開されていない場合)/ supervisord.confを展開
inculde構成するかどうかをチェックし、それが追加されません。
[含める]
ファイル=スーパー/ * confに
は、現在のディレクトリによって生成されたsudoをする権限を持っていない場合は、
sudoのcpをデプロイ/ supervisord.confの/etc/supervisor/supervisord.confの過去が
に(名前のtudo_super.confなど)のコンフィギュレーションファイルを実行しているスーパーバイザプロジェクトが増加をの/ etc /監督/スーパー
#グループの竜巻を追加します。
[グループ:竜巻]
プログラム=竜巻-5000、竜巻-5001、竜巻-5002
#3トルネードプロセスの設定を定義します
[プログラム:竜巻-5000]
ディレクトリ= /ホーム/ pyvip / WS / tudo36 /;プログラムの起動ディレクトリ
コマンド= /home/pyvip/.virtualenvs/tudo36/bin/python /home/pyvip/ws/tudo36/app.py --port = 5000 --degbu = falseは、コマンドを起動して、コマンドを手動で起動するには、コマンド・ラインであります以下のように、家の注目〜に置き換えることはできません
自動=真;自動的に開始supervisord開始
startsecs = 5;なしには5秒を開始した後に予期せず終了するが、適切に開始されたとみなされます
自動再=真;異常終了手続き後の自動再起動
startretries = 3;再試行が自動的に起動に失敗した場合、デフォルトは3です
ユーザー= pyvip、どのユーザーで始まります
redirect_stderr =真;デフォルトはfalse、stdoutに標準エラー出力をリダイレクト
stdout_logfile_maxbytes = 20メガバイト; STDOUTログファイルのサイズ、デフォルトの50メガバイト
stdout_logfile_backups = 20; STDOUTログファイルのバックアップ数
;標準出力ログファイルは、あなたが(supervisordが自動的にログファイルが作成されます)指定されたディレクトリが存在しない場合に正常に起動しないときに注意を払う必要があり、手動でディレクトリを作成する必要
stdout_logfile = /tmp/tornado_app_5000.log
ログレベル=情報
[プログラム:竜巻-5001]
ディレクトリ= /ホーム/ pyvip / WS / tudo36 /
コマンド= /home/pyvip/.virtualenvs/tudo36/bin/python app.py --port = 5001
自動=真
startsecs = 5
自動再=真
startretries = 3
ユーザー= pyvip
redirect_stderr =真
stdout_logfile_maxbytes = 20メガバイト
stdout_logfile_backups = 20
stdout_logfile = /tmp/tornado_app_5001.log
ログレベル=情報
[プログラム:竜巻-5002]
ディレクトリ= /ホーム/ pyvip / WS / tudo36 /
コマンド= /home/pyvip/.virtualenvs/tudo36/bin/python app.py --port = 5002
自動=真
startsecs = 5
自動再=真
startretries = 3
ユーザー= pyvip
redirect_stderr =真
stdout_logfile_maxbytes = 20メガバイト
stdout_logfile_backups = 20
stdout_logfile = /tmp/tornado_app_5002.log
ログレベル=情報
`` `
###起動と管理
#####スタートスーパーバイザ
それ以外の場合はエラーになり、管理操作を実行するデーモンプログラム(supervisord)を起動してください(あなたが実行するためにsudoを使用しないことをお勧めします)
>デフォルトのメイン設定ファイル/etc/supervisor/supervisord.confを使用します
> **はsudo supervisord **
>明示的にメインの設定ファイルを指定します
> sudoのsupervisord -c /home/pyvip/working/supervisord.conf
>使用ユーザーユーザーがsupervisordを開始します
> sudoのsupervisord -uユーザー
#####ビュー、業務プロセスのステータス
> **(竜巻)pyvipのVIPの@:〜/ WS /すべての$ sudoをするsupervisorctl **
pyvip用> [須藤]パスワード:
>竜巻:竜巻-8000 RUNNINGのpid 17652は、夜12時00分28秒の稼働時間
>竜巻:竜巻-8001 RUNNINGのpid 17653は、夜12時00分28秒の稼働時間
>竜巻:竜巻-8002 RUNNINGのpid 17654は、夜12時00分28秒の稼働時間
> \#竜巻-8001のサーバー・プロセスを停止します
>監督>ストップ竜巻:竜巻-8001
>竜巻:竜巻-8001:停止
>
> \#竜巻サーバプロセスグループ全体で停止します
>
>監督>ストップ竜巻:
>竜巻:竜巻-8000:停止
>竜巻:竜巻-8001:停止
>竜巻:竜巻-8002:停止
>監督>ステータス
>竜巻:竜巻-8000は、26 7:43 PM 6月STOPPED
>竜巻:竜巻-8001は、26 7:43 PM 6月STOPPED
>竜巻:竜巻-8002は、26 7:43 PM 6月STOPPED
##### supervisorctlコマンド
>一つのプロセスを停止し、program_nameのは、[プログラム:X]であり、ここで、x
> supervisorctl停止program_nameの
>プロセスを開始します
> supervisorctl開始program_nameの
>プロセスを再起動します。
> supervisorctl再起動program_nameの
>(共感を再起動し、起動)groupworkerこのパケットと呼ばれるプロセスのすべての部分を終了
> supervisorctl停止groupworker:
>終了groupworker:NAME1このプロセス(共感を再起動し、起動)
> supervisorctl停止groupworker:NAME1
>すべてのプロセスを停止し、メモ:起動、再起動、停止、最新のコンフィギュレーションファイルをロードしません
>すべて停止supervisorctl
>、最新のコンフィギュレーション・ファイルをロードし、元のプロセスを停止し、キーを押し、すべてのプロセスの新しい構成、管理を開始
> supervisorctlリロード
>最新の設定ファイルによると、プロセスに新しい設定や変更を開始し、何の設定変更はありませんし、プロセスが影響されることはありません再起動します
> supervisorctl更新
##リバースプロキシとしてnginxのを使用
竜巻のサービス利用で###
![IMG](https://upload-images.jianshu.io/upload_images/1446087-de9c70d0e067384a.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/688)
###インストールして実行するには
- インストール
`sudoのnginx`をインストールapt-getを
- 利用できる正しい構成ファイルを検出
`sudoのnginxの-t`
- ファイル名を指定して実行
`sudoのnginx`
- 変更または設定ファイルの再起動に追加した後
`sudoのnginxの-s reload`
### nginxの設定ファイル
メインの設定ファイルは、/ etc / nginxの/ nginx.conf` `です
**プロファイル `` /etc/nginx/conf.d / *。Conf` or`の/ etc / nginxの/ * /サイト対応に項目に対応する**
例のtudo_nginxファイルの場合
`` `nginxの
上流竜巻{
サーバー127.0.0.1:8000;#ローカルアクセスのみ127.0.0.1
サーバー127.0.0.1:8001。
サーバー127.0.0.1:8002。
}
proxy_next_upstreamエラー。
サーバー{
8888聞く;#80は、一般的に
サーバー名を127.0.0.1;#IPが実際の状況フィルに対応します
位置/ {
proxy_pass_headerサーバー。
proxy_set_headerホスト$ HTTP_HOST。
オフproxy_redirect;
proxy_set_header X-のReal-IPの$ REMOTE_ADDR;
proxy_set_header X-スキーム$スキーム。
#リクエスタプロキシサーバーの竜巻が通過し、ロード・バランシング
proxy_passます。http://竜巻。
}
}
`` `
###よくある質問
操作1. Linuxのディレクトリとファイル
タブ2.コマンドを入力しますが、動作を完了しています
3.文書操作の順序(supervisordが与えられて起動しませんでした)
Web管理インターフェースの4監督
設定ファイルは、カスタムアプリケーションのルーチンを修正します
役割を説明するための6 nginxの設定、confファイル
7. vimのとsudoを使用
8.なぜ使用nginxの