ServerTableau『カスタマーストーリー』を支えるツール特集2019年01月24日たまちゃん(73)36はじめにどうも。DI部@大阪オフィスのtamaです。Serverにはシステム要件が定められており、基本的にはそれを満たすハードウェアを用意することになります。Serverにパブリッシュするワークブック・ビューは組織によって千差万別、そしてそれを閲覧するユーザー数も組織によって千差万別...。「これらのワークブックを同時に10人が見ても快適なサーバースペックってどのくらいやねん...」と迷うと思います。そんな時に役立つのが、Tableau社が開発したオープンソースのツール「Tabjolt」です。Serverに対して負荷テストを行うことが出来ます。Serverに必要なスペックを検討することができます。今回はそんなTabjoltを使ってみたエントリとなります(今回はとりあえず使ってみた...ということで、あまり細かい設定等は触れてません)。最低必須要件としては下記の通りです。Desktopもインストールしておくのが良いです(負荷テストの結果がTableauワークブックなので)。インストール手順インストーラーをダウンロード下記よりGETします(本エントリでは「tabjolt_2018.2.0_x64.exe」をインストールします)。GitHubインストーラーを実行ウィザードをポチポチしていきます。インストールする時は気にしなくていいのですが、アップデートする場合(以前にTabjoltをインストールしている環境の場合)は、インストーラー実行時に旧Tabjoltをアンインストールしていいかどうか聞いてきます。ファイルが全て上書きされるので、Configファイル(C:\TabJolt\config)は別途バックアップをとっておいて、インストール完了後に移動させるなどして再利用することをオススメします。アップデートする場合は、PostgreSQLもアンインストール(した後に新規インストール)されることになります。負荷テストの結果はPostgreSQLに格納されるため、アップデート前は、こちらもバックアップをとっておく必要があります。初期設定を行うウィザードを進めると、Tabjoltの初期設定画面に移動します。ServerのURLとサーバー管理者アカウント情報を入力します。Serverを読み込み、負荷テストの対象となるビューが洗い出されます。問題なく一覧が取得できていることを確認したら、さらにNextをクリック。Login」情報の入力画面です。OSのログイン情報...要するにTSMを使用する時のアカウント情報を入力すればOKです。これでインストールは完了です。Serverにおける負荷テストで重要なのは「複数人が同時にビューを表示したり操作したとき」のパフォーマンスがどんなもんか...です。Tabjoltはそういったテストがすぐ行えるように、3種類のテストが用意されています。InteractVizLoadTest.jmxテスト対象のビューを読み込み、各操作を行うテストまずスライダーとかドロップダウンがあるかどうかをチェックするそういったインタラクション要素がある場合は、それらを実行するない場合はビュー上のマークを選択するViewVizLoadTest.jmxテスト対象のビューを読み込むだけのテストビューに対する操作は行わないViewInteractVizLoadTest.jmxテスト時間の50%はインタラクション(ビューに対する操作)込のテストを実行する残りの50%は読み込むだけのテストを実行する簡単にいうと、「InteractVizLoadTest.jmx」はしっかりやるテスト、「ViewVizLoadTest.jmx」は簡易なテスト、「ViewInteractVizLoadTest.jmx」はリアルな利用状況に似せたテスト(ビューを操作する人もいれば、見るだけの人もいる)...といったところでしょうか。ちなみに、これら以外にも、ユーザー自らカスタムしたテストを使用することもできます。...が、本エントリではそれらは一旦置いておきます(それだけで結構ボリュームがありそうなので)。負荷テストを実行してみる実行方法テストを実行するには、Tabjoltのインストールフォルダに移動してgoコマンドを実行します。コマンドにはいくつかオプションがあります。—cビューを操作する同時ユーザー数を指定する今回は同時に10人が3分間ビューを操作する時の負荷をテストしてみたいと思います。実行するコマンドはこちら。Tableauテストの結果を確認するテストの結果もTableauでさて、本番はここからです。負荷テストの結果はどうだったのでしょうか。結果はTableauワークブックの形で閲覧することができます。そのワークブックは下記の通り。C:\TabJolt\PerformanceViz.twbこいつを開いてみます。...思ってたより複雑だった(そして思ったよりダッシュボードが多い)。想像以上に詳しい結果が表示され、逆になかなか解釈するのが難しいです。このワークブックの詳しい調査は別の機会にじっくりやるとして、とりあえず比較的簡単な使い方を記したいと思います。ID」というものが出ると思います。このIDをワークブック上でフィルタリングできるようになっており、確認したいテストを指定することができます(もちろん複数のテスト結果を同時に見ることもできます)。私が考える超基本的な使い方まず、とりあえずエラーが出るかどうか...に着目してテストを進めていけばいいのではないかと思います。下記は同時ユーザー1人と10人のテスト結果です。Serverは10人が同時にビューを操作しても(パフォーマンスはともかく)大丈夫なことがわかりました。徐々にユーザー数を増やしていって、まずは純粋な限界同時ユーザー数を見つけましょう。Serverのスペックを増強することを考えましょう(もちろんエラー内容によります。Failures」というダッシュボードで詳細を確認することができます)。timeなどの値を見て、どれだけビューの表示や操作に時間がかかるか...といった事を確認します。「同時ユーザーが○○人でこれだけの時間だったら今のスペックでいい」みたいな判断ができるかと思います。ここらへんの項目の解説は、本エントリ下部の参考リンク先に説明があります。おわりにとりあえずTabjoltのインストールと実行をやってみました。実行ができたというだけで、他の設定等の理解が全然できてません。時間をかけていろいろと調べていきたいと思います。Snowflakeの四刀流を目指す。AWS?何それ?元学生プロレスラー。〜ログ収集、監視、分析を触って体感しよう!〜」を開催しますお申し込み受付は終了しました。ありがとうございました。今後セミナーのお知らせを受け取りたい方は、こちらからご登録をお願いします。CAFEのサービスが「LINEアプリ」として利用できるようになりました。これまではLINEのトークから利用する形でしたが、LINEサービス内から利用できるようになりました。これまでより便利に、シームレスにご利用いただけます。Cafe300件のシェア(そこそこ話題の記事)インフラ未経験の私が内定から入社までに読んだ技術書11冊ブログ記事2020年01月16日Yui300インフラ未経験で入社した私がインフラを勉強するために読んだ技術書11冊を感想とともにまとめました。平野重利123Pythonで、標準入力を変換して標準出力に出すCLIプログラムのテンプレートをご紹介します。菊池修治47こんにちは、菊池です。勉強会#1に登壇しました。サーバのみならずネットワーク機器の仮想化も年々進んでいます。スペックに縛られないこととか、展開のしやすさとか初期考慮点が少なくなるのは嬉しいです。武田隆志1098このエントリは、2018年、2019年に公開したAWS全サービスまとめの2020年版です。これまではいくつかに分割して公開していましたが、1エントリにまとめてほしいという要望をもらっていたため、今年は1エントリに集約してみました。CAFEのサービスが「LINEアプリ」として利用できるようになりました。これまではLINEのトークから利用する形でしたが、LINEサービス内から利用できるようになりました。これまでより便利に、シームレスにご利用いただけます。Cafe300件のシェア(そこそこ話題の記事)インフラ未経験の私が内定から入社までに読んだ技術書11冊ブログ記事2020年01月16日Yui300インフラ未経験で入社した私がインフラを勉強するために読んだ技術書11冊を感想とともにまとめました。悠紀235ShifterはWordPress環境をサーバーレスで立ち上げ、静的なサイトを生成することができるサービスです。FAQサイトをサクッと作ってみました。Takumi227こんにちは。DA事業本部の春田です。クラスメソッド株式会社が運営するAWS・iOS・HTML5に関する技術情報サイトです。