EC構築プラットフォーム「Magento」で考える、ECサイト開発者が目指すべきこと

“日本以外”で盛り上がるMagento

2016年11月22日、都内でベリテワークス主催「Meet Magento」が開催されました。今年で2回目となる同イベントでは、導入事例や越境EC、決済サービス、セキュリティ対策、エクステンション開発など、ECサイトのオープンソースプラットフォームの「Magento」(マジェント)を使いこなすためのさまざまなヒントが紹介されました。

Meet Magentoの会場の様子

始めに少しMagentoのこれまでを振り返ってみます。Magento 1.0が正式リリースされたのは、2008年3月31日。その機能性や拡張性、多言語および多通貨対応など海外展開のしやすさから人気に火が付き、世界中で開発者コミュニティが次々と立ち上がりました。その後、2011年にeBayが同社を買収、2015年7月にMagentoを内包していたeBay Enterpriseが複数の投資会社に売却され、その1つであるイギリスの未公開株投資会社Permira(ペルミラ。最近あきんどスシローを約10億ドルで買収して話題になったところですね)の資本下で独立。2015年11月2日の最終合意を持って、Magento Commerceとして新たな一歩を踏み出しました。

製品は、無償版「Magento Community Edition」のほか、エンタープライズ向けの有償版「Magento Enterprise Edition」や「Magento Enterprise Cloud Edition」などがあり、eBayやアバクロンビー&フィッチなど25万以上のECサイトで採用、年間総額500億ドル相当の取引を生み出す基盤となっています。開発者コミュニティの活動も盛んで、Magento 1.xでは1万近くのエクステンション(拡張機能)が誕生。昨年11月18日にリリースされたMagento 2でも現在700超。特に小売ECサイトのプラットフォーム市場では世界トップシェアを誇り、今もファンは増え続けています。

日本の導入事例の1つに、シャープのロボット型SIMフリースマートフォン「ロボホン」のECサイトがあります。本体とSIM、保守パック、アクセサリ、ココロプラン(サービス基本料)をセット販売しながら本体とサービスを別決済で処理する、売上げ報告や物流、経理システムなど外部システムのメンテナンスやシャットダウンに影響されずに連携させるといった複雑な処理も、多機能でカスタマイズ性の高いMagentoではうまく組み込むことができたと、IoT通信事業本部の日坂幸次氏は講演で明かしました。

シャープ IoT通信事業本部 日坂幸次氏

……が、これはそれほど多くない日本におけるMagento事例。むしろ日本の場合、「Magentoはちょっと…」と難色を示す開発者が多く、「しまいには“Magentoイヤイヤ病”を発症させる人もいます」とベリテワークスのCTO、西宏和氏は苦笑いします。

ベリテワークスCTO、西宏和氏

Magentoイヤイヤ病の原因は?

なぜ日本ではあまり受け入れられてこなかったのでしょうか。

2008年当時の最大の原因は“ケータイ対応”にあると、西氏は分析します。「ケータイ対応じゃないとプラットフォームの候補にすら挙げてもらえない時期がありました」。

このほか、「パフォーマンスが出ない/重い」「コードが複雑で多機能すぎる」「CentOS/RedHat Enterprise Linux 5で動作しない」「公式対応のレンタルサーバがない/少ない(現在進行形。さくらは…何でもないです)」「ドキュメントなどが日本語対応じゃない」といった声もよく聞かれたと西氏は振り返り、「挙げ句の果てには、セキュリティ上の脆弱性が発見され、パッチ未適用サイトが攻撃のリスクに晒されると“Magentoは危険”と言い出すところもあって…」と頭を振ります。

でも、少なくとも技術的な課題は他プラットフォームでも同様に発生しており、解決策が存在します。西氏は、講演で課題と解決策を次のようにまとめました。

1. パフォーマンスが出ない/重い!

原因は、共用レンタルサーバでPHPがCGI版である、キャッシュが全部オフになっている、検索時の絞り込みで商品に追加する属性が異常に多いなどが大半とのこと。

「火力重視ならインフラ全体で処理能力を割り出して、パフォーマンスを阻害する無駄な処理をそぎ落としていくことです。それでもダメなら、フルページキャッシュやリバースプロキシのVarnishを導入する、Apache SolrやElastic Searchなどの全文検索エンジン最適化する方法を検討したいですね」。

2. エクステンション入れすぎた…

大量に入れすぎて関係性も分からなくなり、気付いたら開発元の異なるエクステンション同士が機能衝突している、なんてことも。

「何はともあれ、テスト環境を作ってください。本番環境しかないというデンジャラスなサイト、割とあるんですよね。今はノートPCの性能も良く、仮想環境を気軽に構築できます。実装するエクステンションの数は最小限に抑えつつ、エクステンション同士の相性やライセンス問題、安定性などをきちんと検証することが大事です」。

3. カスタマイズしすぎ!

プラットフォームを凝った作りにしたり、サードパーティ製エクステンションをカスタマイズしすぎたり。でも、改修やライブラリやミドルウェアの世代交代、脆弱性の発見によるアップデートや仕様変更などがあると、対応作業は大変なことになります。そのカスタマイズ、本当に必要なのか、西氏は実施する前に一度考えることを勧めました。

4. コアハックしまくり!

上記と同じ理由で問題なのが、コアのソースコードを直接いじる行為です。「エクステンション実装は面倒だからと直接手を入れてしまうサイトは結構ありますが、それは悪夢の始まりで禁じ手です。パッチ適用やバージョンアップの妨げになり、放っておいたらセキュリティ侵害でサイト改ざんが発生。恥ずかしいプレスリリースを出して多額の損害賠償や対応費用を支払うわ、カード決済事業者からは怒られるわ、さんざんな目に遭う可能性もあります」。上記同様、本当にコアをいじる必要があるのか、基本機能の工夫で十分いけるのではないか、検討してほしいと西氏は言います。

EC技術と向き合うために開発者が心がけるべき4つのポイント

Magento 2がリリースされてから早1年。コンポーネントベースに進化し、再利用もCI(継続的インテグレーション)もやりやすく、品質も向上させやすくなりました。

「最近の消費者はスマートフォンなど新しいテクノロジーをどんどん取り入れてくるので、ECサイトもそれに合わせた商品の販売や購入手段をどんどん提供しなければなりません。Magentoのプラットフォームは、時流に合った販売形態などを柔軟に提供する柔軟性があります」。Magentoのエヴァンジェリストであるベン・マークス氏は、それがMagentoの最大の魅力と胸を張ります。

Magentoのエヴァンジェリスト、ベン・マークス氏

Magentoの魅力をもっと知ってもらい、開発者と幸せな関係を築けたら…。そんな思いとMagento 1が誤解されてしまった反省を込めて、西氏はMagentoと正しく向き合うための4つのポイントを挙げました。

1. Fits & Gapを適切に実践する

要件定義時にMagentoの基本機能を一通り確認し、後の面倒を引き起こさないためにもカスタマイズやエクステンションなしで工夫できるか吟味すること。

2. 適切なサーバ構成を選ぶ

サイトのアクセス総数やPV、データ転送量、更新頻度、受注件数、許容されるシステムダウンタイム、1か月にかけられる予算を検証してから、IaaSかVPSか、物理かを決る。

3. 正しい情報を知る
4. 変化を受け入れる

特に3と4は、Magentoに限らずすべてのECプラットフォームに共通するポイントと西氏は強調します。

「WebやEコマースを取り巻く環境は日々変化しており、方法論や技術要素もどんどん新しく複雑になってきています。だからこそ、英語含めて最先端の情報を積極的に収集しに行く姿勢が必要なんです。新しい技術やプラットフォームに疎く、ライブラリやドキュメントが英語だから読みたくない、というのは“甘え”です。このままではオフショアに食われて価格崩れが起き、倒れてしまいます。変化を拒否しても、いいことなんてありません。正しい情報を知り、適切かつ柔軟に追従してもらいたいです」。

「EC-CUBEも3への大型アップデートで設計思想を一新し、Symfony2 ComponentsベースのSilexを実装。Magento同様、コンポーネントベースになりましたよね。従来の環境でのほほんとしていた開発者は、みんなヒーヒー言ってますよ」(西氏)

Magentoで越境ECの波に乗ろう

そして現在、Magentoには追い風が吹き始めています。それが、越境ECへの注目の高まりです。ECサイト構築システムの大手ecbeingは11月10日、越境ECで決済大手PayPalとサービス提携することを発表。花王やライオン、小林製薬なども、今のところは販路拡大と海外向け卸の強化に向けたテストマーケティングの色合いが強いものの、越境EC参入を活発化させています。

越境ECでは、多言語や多通貨、複数ドメインへの対応が必須ですが、これらすべてMagentoが当初よりサポートしている機能です。

ペイメントゲートウェイでアジア進出を支援するOmise Japanの上坂明日香氏は、シンガポール除くASEAN各国のEC化率は1%未満(2013年時点)、グローバルEC市場に占めるシェアも1%未満、ブロードバンド普及率やクレジットカード普及率の低さなど課題はあるものの、2013年から2018年にかけて年平均成長率37.6%との見通しもあると講演で解説(出典:AT Karney「Lifting the Barriers to E-Commerce in ASEAN」)。越境ECサイトの利用傾向も、シンガポールやマレーシアを筆頭に増加傾向にあるなど、伸びしろに期待大と述べました。

Omise Japan ビジネスデベロッパー 上坂明日香氏

「越境ECに最適な機能を揃え、世界で戦えるのがMagentoの強みの1つ。Magentoで日本のEC市場をさらに盛り上げたいですね」(西氏)

Magento関連情報は、Magento Resources下に揃っています。セキュリティパッチ情報などを提供する「Security Center」、使いこなしのヒント情報がある「Magento Forums」内の「Monday Community Digest」などもここからアクセスできます。このほか、開発者向けドキュメントは「Magento 2 Developer Documentation」で参照できます。

とはいっても、最初から英語資料を漁るのは厳しいという方には、ベリテワークスが定期的に開催する「Magento Meetup Tokyo」があります。興味がわいた方は、ぜひ次回のミートアップに参加されてみてはいかがでしょうか?

Magentoをこよなく愛する“髷人”4人衆(左から)カナダのMagentoコンサル企業Bit79のタレシュ・シーパルサン氏、エヴァンジェリストのベン・マークス氏、ベリテワークスの西宏和氏、ベリテワークスのケネス・ボリレ氏