クラウドネイティブ時代のマルチテナントアーキテクチャとデータ設計 クラウドネイティブは最近重要なワードですね。 #devsumi #devsumiA pic.twitter.com/uVbzXwkNZN
2019-07-02 16:51:27●和田さん 2006 SIer 2013 エイトレッド パッケージ保守 新規サービス サーバサイドの開発 #devsumiA #devsumi
2019-07-02 16:55:25●エイトレッド ・ATLED Work Platform ワークフローシステム マルチテナント型 業務システム基盤として汎用的に ・パートナー企業を介してエンドユーザへ提供 #devsumiA #devsumi
2019-07-02 16:55:32マルチテナントのアーキテクチャパターン AP 共有する こちらを採用 Redisでセッション管理 共有しない #devsumiA #devsumi
2019-07-02 17:06:20マルチテナントのアーキテクチャパターン DB 1. サーバで分離 2. サーバ & DBの機能で分離 一部はこちら 3. DBの機能で分離 MongoDBはこちらを採用 4. レコードで分離 #devsumiA #devsumi
2019-07-02 17:06:28パフォーマンス改善 資源を共有しているので、問題が発生すると影響が全ユーザに及ぶ。。 #devsumi #devsumiA
2019-07-02 17:06:31MongoDB ほぼすべてのデータ EC2上に構成 AZを分散 データベース名で分離 シャーディングなし パターン3 -> 2へ移行予定 #devsumiA #devsumi
2019-07-02 17:07:35Elasticsearch 全文検索、集計 EC2上に構成 ※マネージドを利用しなかった JVMのクラッシュで苦労 AZを分散 インデックス名で分離 シャーディング利用 #devsumiA #devsumi
2019-07-02 17:07:42リクエストのテナント識別方法 クライアントからのリクエストがどのテナントのものなのか? URLドメイン おすすめはこっち セッション情報 複数テナント同時ログインがあるならこっち #devsumiA #devsumi
2019-07-02 17:08:05#devsumi #devsumiA 全てのスライドをスマホでカシャカシャ音鳴らして撮ってる人が一番前の関係者席にいるけど、関係者なら登壇者を撮るはず。 スライドだけ撮るって。 絶対関係者ではない。
2019-07-02 17:08:29パフォーマンス改善するのにCloudWatch Logs Insight使うにしてもクエリが独特だし使いづらいイメージある #devsumiA
2019-07-02 17:08:42パフォーマンス改善 CloudWatch Logs Insightsで分析 処理時間、クラス名、メソッド名、テナント識別子、リクエスト識別子 #devsumiA #devsumi
2019-07-02 17:09:46特定ユーザによる資源専有 -> 単位時間あたりの呼び出し数制限、アップロード上限など 後から制限するのは大変 #devsumiA #devsumi
2019-07-02 17:10:25マルチテナント 負荷分散・スケール・ユーザ制約の仕組み、最初からきちんと作っておくと、アプリケーションの開発に注力できる。 #devsumi #devsumiA
2019-07-02 17:10:58