Upgrade to Pro — share decks privately, control downloads, hide ads and more …

クラウドサービスの負荷テストで嵌ってる話.pdf

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

 クラウドサービスの負荷テストで嵌ってる話.pdf

Avatar for SHIFT EVOLVE

SHIFT EVOLVE PRO

July 26, 2021
Tweet

More Decks by SHIFT EVOLVE

Other Decks in Business

Transcript

  1. 2 現在担当している案件  案件:MS のクラウドサービスをバリバリ活用したシステム開発案件! • Dynamics 365 • Power

    Apps • Power Automate • Power BI • Logic Apps • SharePoint • Azure • Azure DevOps • Azure AD • WVD ・・・  担当:テスト領域の技術支援(E2Eテスト自動化、負荷テスト) クラウド関連で話したいことはいろいろありますが・・・ (複雑なライセンス、課金、アカウント、テナント構成、etc.) 本日のテーマ JMeterによるクラウドサービスへの負荷テストについて スクラッチな開発は 極力しない!
  2. 3 Dynamics 365 (Azure) に対する負荷テストだと・・・?  何のためにやるの?  どこに負荷をかけて、どこの性能を測るの? 

    どのくらいの負荷をかけるの?やっていいの? いろいろと疑問はあるが JMeterでやることはほぼ確定済み!
  3.  対象のDynamics 365はOAuth 2.0認証を使ってるよ  他にクレームベース認証、Active Directory認証もサポート  JMeterでOAuth 2.0認証の対応方法を検索しても、直接的

    な解決策にヒットしない!  対応可:ベーシック認証、ダイジェスト認証、Kerberos認証、LDAP認証 わかったこと(最初からわかってたことも含む) 最近のクラウドサービスは OAuth 認証や OpenID Connect だよね、知ってるよ OAuth 認証に利用できるパラメータオプションが多すぎて OAuth 認証に利用できるパラメータオプションが多すぎて クラウドサービスによって違うからね こういう手順ででき るはずだ、俺はやっ たことないけど Postmanなどで認証 プロセスを解析して みるといいかも
  4. 6 対応方針  方針1: Web Driver Sampler (Plugin) を使う 

    要はSelenium、ブラウザを操作  動いた!でもCPU、メモリを大量に食う!(当たり前)  方針2: Azureの 「APIのアクセス許可」 を使う  Azureで操作して、外部アプリアクセス用のクライアントID、クライアントシークレットを払 い出しておく  動くはず(実機検証中)、でも認証プロセスは実業務アクセスとは別物  方針3:プロトコルと認証プロセスを解析してOAuthの動的パラメータをを設定する  最初に諦めた方式  有能なエンジニアが時間をかけてトライすればできるはず 前提次第ではもっともお手軽、簡単♪ 方針3よりは簡単(なはず) メソッド リクエスト名 パラメータ GET login.microsoftonline.com/{tenant}/oauth2/authorize state, nonce POST login.microsoftonline.com/{tenant}/login canary, ctx, hpgrequestid, flowToken POST XXXXXXXXXXXXXXXX .dynamics.com code, id_token, state, sessin_state