事象 メモリ使用率が90後半に張り付いたまま、コンテナごとホストに落とされる リクエスト数増大につれ、メモリリークっぽい動きをしている Worker再起動すれば、メモリ使用率が下がる 調査 max_requests ってオプション使えばリクエスト数ベースでWorkerをリロードしてくれるっぽい ただし、すべてのプロセスが同時にリロードした場合、リクエストを受け付けられないので、同時に落ちないようにしなきゃならない max_requests_delta ってオプションでずらせるようにマニュアルに書いてある なお、max_requests_delta はpipからインストールした場合使えない模様 利用する場合は、ソースからビルドしなきゃならない 対応 --idleと--cheapで一定時間リクエスト来なかったらworkerを停止するようにした 参考 結果 一定負荷をかけた後、放置するとメモリ使
かなり前の話になるけどnginx + uWSGI で秒間2000アクセスくらいさばく必要があったので負荷試験をやった。 アプリケーションによってオプションの最適値はいろいろあると思うし、負荷をかけるとアプリ側にボトルネック見つかったりすると思うので、そういうのはめいめいやっていただくとして、あのー、やってるときに、ある多重数にすると突然全部エラーになる、みたいな、これはサーバの限界とかでなく明らかに何かの制限に引っかかってんなーという事象がいくつかあって、調べて対応するなどした。 有名なお話が多いけど、もしかしたら誰か探してるもしれないからまとめておくね。 同時100アクセスの壁 最初に出会った壁。Apache Benchで100より多くの同時アクセスをすると死ぬ。そんな貧弱なサーバを買った覚えはない。誰だ。お前だ。uWSGIのlistenキューのデフォルトが100だからだ。 とか適当に上
TL;DR uWSGIでサーバーの状態(Stats)を見るには、uWSGI Stats Serverを使えばよい uwsgiの起動オプションとして設定すれば、利用可能 データはソケット(HTTP含む)で取得できる ただし、取得できる項目がどういった意味なのかは特にドキュメンテーションされていない様子… ソースコードを見て把握するしかなさそう モチベーション uWSGIを使ってアプリケーションをデプロイ、公開する際に、uWSGIからメトリクスを取得したい、というのが動機です。 The uWSGI Stats Server で、ページを見つけたはいいものの、取得できる項目のサンプルはありますが、それがどういう意味家はドキュメントには見当たらず、日本語情報もなさそうです…。 といって、このページでそれを解説するわけでもないのですが。 そもそも、uWSGIでメトリクスを取得するには? 前述のドキュ
背景 PythonとDjangoでソマートフォンゲームのアプリケーションサーバを開発しており、そのwebサーバとしてuWSGIを使っています。 uWSGIには多くのパラメータがありすぎてどれを選んでいいかわかりにくいです。 実際に負荷試験をして、各種パラメータを変え、安定的にパフォーマンスが出せるようになったので、 そのときにどのように計測して、どのパラメータを変えたのかを共有したいと思います。 環境 python: 2.7.10 uWSGI: 2.0.11.1 locust: 負荷試験のツールです。ユーザシナリオを作ってアプリケーションサーバの各種API負荷試験をしました。 EC2: c4.2xlargeの8コア 性能測定ツール という言葉がありますが、何をおいても計測できなければ改善したかどうかわかりません。 主に以下のツールが今回役立ちました。 NewRelic: おなじみですね。有
前提 Flaskアプリケーションのローカル環境での開発方法は知っていて、本番環境でのdeploymentの方法が知りたい。uWSGIやNginxについてはあまり知らない。 概略 Flaskの公式によると You can use the builtin server during development, but you should use a full deployment option for production applications. とのことなので、アプリを公開するには組み込みサーバーの利用はせずに、別の方法を考える必要があるらしい。様々な方法があるようだが、ここではuWSGIとNginxという組合せで進める。 まず、基本的な言葉の整理からおこなう。 uWSGIは、WSGIと名前は似ているが異なる概念であることに注意する。 WSGI(Web Server Gateway In
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く