特集:マイクロサービス入門(5):新規構築や移行時のリスクを軽減、「ストラングラーパターン」とは?モノリシックなサービスをマイクロサービス化する際、どのように移行させればいいのか。オイシックス・ラ・大地の川上徹氏がOisixのマイクロサービス移行に当たって採用したアプローチと開発プロセスを紹介します。});この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。今回は、ECサイトのOisixをマイクロサービスアーキテクチャへ移行するに当たって採用したアプローチを紹介する。Pages)を用いている。このシステムをマイクロサービス化するに当たって、以下の構成になるよう目指した。API」として実装するフロントエンドの実装をアプリケーションサーバから分離する迅速にサービスを開発するため、アーキテクチャや開発プロセスを整備するシステム移行のアプローチまず前提として、別のシステムとして新規にスクラッチで構築するのではなく、既存のサイト、業務を回しながら段階的に移行するアプローチを採用した。新しいアーキテクチャを採用するに当たって技術的なリスクがあることはもちろん、稼働していないシステムの開発のためにチームを長期間維持するコスト面のデメリットも大きく、事実上不可能と判断したためだ。ストラングラーパターン「システムを段階的に移行する」ためのアプローチとして採用したのがストラングラーパターンだ。既存のアプリケーションと新しいアプリケーションを振り分ける「ストラングラーファサード」というレイヤーを設け、機能の特定部分を新しいアプリケーションに徐々に置き換えながら機能を移行する手法だ。Gatewayサービスを利用した。APIとして開発するアプリケーションに対するルーティングを実装した。同一ドメインに対するリクエストをパスに応じて振り分けることで、フロントエンドのアプリケーションサーバからの分離と業務ロジックのAPI化を段階的に実施できるようにした。パイプラインファースト昨今「パイプラインファースト」という言葉を聞くことがある。アプリケーションを開発する際、まずCI/CD(継続的インテグレーション/継続的デリバリー)パイプラインを整備するというものだ。これはマイクロサービスアーキテクチャを用いて開発する際にも重要なアプローチだと言える。マイクロサービスアーキテクチャを採用して変更に強いシステムを目指すのは、アプリケーションに対して何度もアップデートしたり新機能を追加したりする必要があるからだ。リリースするときの「手動テスト」や「手動デプロイ」といったものを極力減らさないと工数が増えてしまい、開発スピードを落としてしまう恐れもある。自動テストや自動デプロイを取り入れたCI/CDパイプラインを構築することで、マイクロサービスアーキテクチャのメリットを高められるわけだ。Concept:概念実証)を行ってから導入を進めると思うが、その際にはぜひCI/CDパイプラインも検証項目に含めることを推奨したい。設定を有効にする必要があります。2019年秋・ITインフラ編」の特別講演にダイソーの丸本健二郎氏が登壇。内製化によって、データ管理基盤の最適化、高度化を図ったいきさつと結果について講演した。2019」でCo-chairを務めた青山真也氏と草間一人氏に、クラウドネイティブに関してじっくり語ってもらった対談の内容を、4回に分けて掲載している。今回は最終回として、「『こんなのクラウドネイティブじゃない』と思うこと」をお届けする。難しい」なら、どう戦うか?デジタルトランスフォーメーション(DX)の潮流が高まる中、社会全体で「イノベーション」や「スピード」といった要素が注目されている。いくら「新たな価値」を生み出したところで、それがビジネス/サービスである以上、信頼に足る品質を担保していなければ意味がない。内製が難しいトラディショナルな企業にとっては、一般的なIT活用でもDXにおける価値創出でも、社外の開発・運用パートナーと組むことが不可欠となる。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。