Plotti.co:リアルタイムのチャート監視のための最も簡単なマイクロサービス

こんにちは、habravchanin!



この投稿はPlotti.coについてのものです。これは、たった1つのことを実行するだけでなく、迅速かつ適切に実行する、非常に使いやすいツールです。 それは、グラフをオンラインで描画し、それらをリアルタイムで更新することです。



その場でライブスケジュールを作成することは、最初に10ページのドキュメントを読み、月額20ドルのサブスクリプションを支払う必要があるタスクではないようです。 これは不可能です。 2016年ではありません。



画像



Plotti.coでは、クライアント部分は、EventSourceを介してサーバーからデータソースにサブスクライブし、それらに従ってスケジュールを更新するSVGイメージです。 ページにシームレスに統合します。



<object data="http://plotti.co/U0N5G5FQigwC/plot.svg" type="image/svg+xml"></object>
      
      







はい、それだけです。 ここで、U0N5G5FQigwCは画像のハッシュです。 現在開いているすべてのブラウザーで画像を更新するには、適切なアドレスにGETリクエストを送信するだけです。 例えば



 wget "http://plotti.co/U0N5G5FQigwC?d=1.5,3.6,7.8mbps" -O /dev/null
      
      









変数の値はパラメーターdで渡され、コンマで区切られます。 変数(および、それに応じて、グラフ上の線)の最大数は9です。 それぞれの色は固定されています。 特定の色の線を取得する場合は、その前にある必要な数の変数をスキップできます(たとえば、 http://plotti.co/U0N5G5FQigwC?d=,,,,,,1.0



http://plotti.co/U0N5G5FQigwC?d=,,,,,,1.0



ように)。



このプロジェクトは「ドッグフードを食べる」という原則に基づいて作成されているため、タイトルページで、実行中のサーバーの現在のプロセッサ負荷のグラフを見ることができます。 データは、単純なシェルスクリプトを使用してチャートに入力されます。



 #!/bin/sh while true; do wget -O /dev/null -q http://plotti.co/lock/plottycocpu?d=`mpstat -P ALL 1 1 | awk '/Average:/ && $2 ~ /[0-9]/ {print $3}' | sort -r -g | xargs | sed s/\ /,/g`\%cpuload done
      
      







PSこのプロジェクトは1人で2日間で作成され、Scaleway ARMサーバーで月額3ドルで開始され、昨日夜のハッカーニュースからのユーザーの侵入(最大4,000同時接続)をほぼ生き延びました。 Gevent FTW! さらなる調査により、Vultr Xeonインスタンスを1か月あたり5ドルで使用することがより正当化されることが示されました。

PPSプロジェクトはオープンソース 、バグレポート、プルリクエストを歓迎します!

PPPS Mopedは私のものではなく、いい人です。 私は基本的にろうそくを保持しました。



All Articles