マイクロサービスで、部分ごとにリプレースするという選択
「大規模ECタイプ」「特殊タイプ」のような大規模ECをリプレースするには、スクラッチ開発、海外製パッケージ、コマース21のようなECシステムが適していると話してもらった。さらに具体的に、どのようなポイントを押さえておけばいいのだろうか。製品技術部 部長である村松さんに聞いた。
村松 大規模ECの特徴として、数々の競争相手がいる中で現在の売上や地位を築いてきたわけですから、これまでもさまざまな変化に対応し続けてきたはずです。その結果、レガシーなECシステムが複雑な状況になっている可能性が高いです。一方で昨今のトレンドとして、マイクロサービスやAPIベースのアーキテクチャが謳われています。マイクロサービスとは、個別に開発された小さなサービスを組み合わせて大きなシステムを構築するというもの。あるひとつのサービスに手を加えても、他の部分への影響が少なく、該当部分以外を作り直さなくてもよい点が優れています。レガシーなひとつの大きな塊となっていたECシステムから、機能ごとに細分化したサービスに置き換え、リプレースしていく方法を取ることができます。
マイクロサービスにはもうひとつ、スケーラブルであるというメリットもあります。処理するデータ量に合わせて、対応するコンピュータのスペックや台数を伸縮できるということです。ECで言えば、夏・冬のセールやSNSの投稿などでピークを作り出すでしょうから、必ず波がある。その場合に、ピーク時にあわせてシステムのスペックをキープするとコストが膨大になるため、波にあわせて調整するのが一般的です。もちろんコンピュータを増やせば無尽蔵にデータを処理することはできますが、費用対効果を考えた場合、一台あたりの処理能力が高性能であることも検証する必要があります。そのためにも、規模を問わずさまざまなECを構築し、トラフィックをさばいてきた経験が不可欠です。
また変化に対応しやすくするために、事業者自らソースを直すことができたり、構築ベンダー以外のパートナーでも保守を引き継ぐことができるなども大切ではないでしょうか。内製化を視野に入れる必要もあるでしょう。そのためには、国内開発ベンダーのサポートが必要ですので、国内開発のシステムが適しているのではないかと思います。また良い意味で歴史のあるベンダーは、長年の経験値をシステムに詰め込んでいますから、それも判断軸に加えるといいかもしれません。
そして昨今のシステムの特徴のひとつとして、様々なオープンソースソフトウェアによって開発されているという点が挙げられます。それらの保守サポート切れなどにより本体システムのバージョンアップや、システム全体のリプレースが必要になることもあります。この点を考慮した製品ライフサイクルになっている製品を導入していただければ、EC 事業者の方は長期にわたり、安定して使っていただけると思います。
大規模ECのリプレース、システム面でおさえておきたい7つのポイント
- 変化への対応が容易なマイクロサービスであること
- 必要な性能と規模にあった製品であること
- 実績、ソース公開
- 国内のサポートが手厚いこと
- 開発経験者が国内に豊富であること
- 大規模ECサイト構築の貴重な経験を継続的に詰め込み、製品開発に努めていること
- オープンソースソフトウェアの更新、Javaの新バージョンへの対応、継続的にぜい弱性への取り組みを行っていること