Slide 1

Slide 1 text

Salesforce Architect Group, Japan Well-Architected Reliable(信頼性)-パフォーマンス-スループット- 非同期処理 Salesforce Architects Meetup Osaka#17 #archjapan 1

Slide 2

Slide 2 text

Reliable(信頼性)-パフォーマンス-スループット-非同期処 理 Well-Architected

Slide 3

Slide 3 text

Well-Architectedのページ紹介 3 パフォーマンス (Well-Architectedの日本語訳より) ● パフォーマンスとは、システムアーキテク チャの文脈では、システムの全体的な処 理能力(スループット)と、リクエストに対す る応答速度(レイテンシー)を示す指標で す。一般的に、システムのパフォーマンス については、テストや実稼働時の監視を 通じて把握することができます。パワフル なシステムは、予想される需要のレベルに 応じて、タイムリーに処理を完了させま す。 ● パフォーマンスの低下は、遅延の増大や スループットの低下を招き、生産性の低下 やユーザーの不満の増大につながりま す。さらに、パフォーマンスの問題は緊急 性の高い問題であることが多く、顧客の信 頼を失い金銭的な損失にもつながりかね ません。 ● スループット ● レイテンシー ● パターンとアンチパターン

Slide 4

Slide 4 text

スループット(Well-Architectedの日本語訳より) 4 システムのスループットを最適化するために、考慮すべきことがあります。 ● 非同期処理を重視する ● 常に一括処理を使用する ● 検索にはSOSLを使用し、SOQLはデータ操作のように扱う ● プラットフォームキャッシュを使用する

Slide 5

Slide 5 text

Automated(自動化)(Well-Architectedの日本語訳より) 5 「データ整合性のパターンとアンチパターン」より パターン データ処理 Apexにおいて: ● すべての同期DML文またはDatabaseクラスメソッドは、トリガー実行前のコンテキストで実行さ れる ● 非同期Apex実行では、Queueableを使用してトランザクションにまたがる複雑なDMLを「連鎖」 させる ● Batch Apexは大容量データ専用に使用される ● @future Apexは、コールアウトやシステムオブジェクトのDMLなど、特定の用途に限定して使 用される フローにおいて: ● ユーザーコンテキストで起動したすべてのフローは、すべてのシステムコンテキストトランザク ションをサブフローに抽象化し、一貫してPause要素の後に配置され、新しいトランザクションを 作成する ● 関連するデータ操作の複雑な順序をOrchestratorで作成する(単一フロー内で複数のサブフ ローを呼び出す代わりに) ● レコードトリガー型のフローには、すべてトリガーの実行順序が入力されている ● 外部システムのコールアウトや長時間稼働するプロセスを含むフローは、非同期パスを使用す る

Slide 6

Slide 6 text

フロー非同期パスのデモシナリオ 6 レコードトリガーフロー ① ② 非同期HTTPコールアウト(Patch) ④ 処理結果(Chatter) ③ 新規登録 or 更新(Upsert) 取引先 非同期パスを使用した外部システムへのレコードトリガフローの接続 ⇒非同期パスは、レコードの保存後に実行されるレコードトリガフローで使用できる <構成要素> ● 外部ログイン情報 ● 指定ログイン情報 ● 権限セット ○ 外部ログイン情報プリンシパルアクセス ○ オブジェクト設定-ユーザの外部ログイン情報 ● レコードトリガーフロー <構成要素> ● 接続アプリケーション ○ クライアントログイン情報フローを有効化 ● Salesforce Integrationライセンスユーザ ● Salesforce Integrationライセンス用権限セット ○ 取引先の権限を付与 取引先 外部システム

Slide 7

Slide 7 text

デモ(フローの非同期パス) Salesforce Well-Architected

Slide 8

Slide 8 text

参考リソース 8 ● Reliable architect.salesforce.com ● reliable.pdf 日本語訳 ○ 非同期処理を重視する ■ Architecture Basics トランザクション ■ Automated 自動化 ● Record-Triggered Automation ○ 常に一括処理を使用する ■ Platform Multitenant Architecture ● Salesforce の非同期実行アプローチ - ローコード、プロコード、ハイブリッド ● Flow HTTP Callout コミュニティグループ ● HTTP コールアウトを介してコードなしで Salesforce データを外部サーバーに送信 (正式リリース) Winter'24 ● Make a Callout using OAuth 2.0 Client Credentials Flow | Named & External Credentials YouTube ● HOW TO USE THE HTTP CALLOUT PATCH METHOD IN FLOW | Winter'24 Update YouTube ● 外部 ID を使用してレコードを挿入 /更新 (Upsert) する ● OAuth 2.0 クライアントログイン情報フローの接続アプリケーションの設定 ● Order of Execution Overview png

Slide 9

Slide 9 text

No content