もう半年くらいフルDockerでmicroservicesなサービスを運用してるんですが、イマイチパフォーマンスを出し切れていないなという面がありまして、今回DockerホストのTCPカーネルパラメータを抜本的に見直しました。 そしたら劇的に症状が改善して、インスタンス数も削減できた上に安定してメシウマ状態になったので紹介します。実際効果があったのでチューニングポイントとしてはある程度正解であったと考えていますが、もちろん扱ってるアプリケーションの特性にもよるはずなので一つのケーススタディであることをご了承頂ければと。 前提 まずは今回のお話の前提を。こんな環境です。 EC2 c3.xlarge ホストはUbuntu(EC2 Optimized AMIは未使用) Docker 1.11.2 MySQL(HAProxy経由)やRedisへのデータストアの通信、各microservicesへの
こんにちは。サイオステクノロジー武井です。今回は、非同期処理のためのメッセージキューイングに使われる「RabbitMQ」というオープンソースソフトウェアについてお話したいと思います。 非同期処理とは? まず非同期処理について、説明します。ユーザー登録やメール送信処理を実現するための一般的なフローは以下の通りと思います。 ユーザーがブラウザから情報を入力する Webアプリケーションは、入力した情報に基づき、ユーザー登録やメール送信処理などのを行う。 ユーザーのブラウザに処理完了画面が表示される。 ユーザーは2の処理が完了して、完了画面が表示されるまで、待つことになります。しかし、一般的にユーザー登録やメール送信処理などは、ユーザーがその処理結果をすぐに必要なものではありません。 ユーザー登録したからと言って、すぐにそのユーザーが利用することはないと思います。ユーザーへのIDやパスワードの通知
SREの深尾です。kurashiru [クラシル] のインフラを担当しています。 タイトルのとおり、クラシルのwebサイトではRailsを使っており、1サーバあたり10,000人程度のアクセスに耐えることができます。実際には余裕を持たせて5,000人/サーバを目安にスケールさせており、TV CMをガンガンやったり、国内外のTV番組で特集されたり、芸能人にSNSで拡散されても動じませんが、実は過去に1度だけWebサイトがダウンしてしまったことがあります。それは2017年3月11日にSmaSTATION!!というTV番組でクラシルが取り上げられた時のことでした。 以下はその時のリクエスト数を表すグラフです。ダウンしてしまったので計測できなかったユーザの数字は含まれませんがそれでもアクセス数は1分で数万人を超えていました。 それまで、Webサイトの負荷対策はあまり行っておらず、2台のWebサーバ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く