Azure上でEC-CUBEを
運用するポイント
自己紹介
•西村誠
•MicrosoftMVP for Windows Development
•EC-CUBE公式エヴァンジェリスト
自己紹介
•西村誠
•MicrosoftMVP for Windows Development
•EC-CUBE公式エヴァンジェリスト
自己紹介
•西村誠
•古代魚庵(フリーランス)
•ブログ:眠るシーラカンスと水底のプログ
ラマー
自己紹介
•書籍:基礎から学ぶC#(増刷決定)
•EC‐CUBE3 店舗運営&デザインカスタマイ
ズガイド
•CodeZineで記事連載中
Gitといえば
•出版社もGit&マークダウン
•VS OnlineもGit対応
発端
•2016年12月某日
•音声だけのセミナーに登壇
•言いたかったことの半分ぐらいしか・・・
•もう一度このネタでやりたい!!
アジェンダ
•EC-CUBEとは?
•EC-CUBEとAzureの概要
•Azure上でEC-CUBEを動かす(開発者向け)
そもそも・・・
•.NETって幅広いよね
•=.NETラボも扱うジャンルが広い
•それに加えてOSSも
EC-CUBEとは?
EC-CUBEの概要
• 国産のECサイト構築フレームワーク
• ECサイト=ネットショップ(Amazon、楽天など)
• 自分だけのネットショップが持てる
• 国産なのでサポートが充実
• 安定の2系と最新の3系
EC-CUBEの概要
• オープンソース=カスタマイズ自由
• プラグインで簡単機能追加
EC-CUBEの概要
• 日本語のフォーラムで質問できる。
http://xoops.ec-cube.net/
EC-CUBEの概要
• DEMO
http://www.ec-cube.net/product/demo.php
EC-CUBEの概要
• DEMO
http://demo.ec-cube.net/
EC-CUBEの概要
• DEMO
• デザインテンプレート
• プラグイン
EC-CUBEのシステム構成
• 言語:PHP
• DB:MySQL or PostgreSQL
• いわゆるLAMP環境で運用されることが多い
EC-CUBEのシステム構成
• サイト規模:DBのレプリケーション対応にはそこそこ
のカスタマイズが必要です。
• 通常DB1台で運用する規模ということ
• 負荷対策のノウハウは色々あります(主に2系)。
EC-CUBE 2 or 3
• EC-CUBEには2系と3系の2つがある
• 2系は安定の枯れたバージョン
• 3系は最新のバージョン
EC-CUBE 2系の利点
• ノウハウがある
• プラグイン(拡張機能)が多い
• 動作が軽い
EC-CUBE 2系の欠点
• 新しいPHPのバージョンに未対応
• 将来のサポートが不安
• オレオレフレームワーク
EC-CUBE 3系の利点
• 新しいPHPのバージョンに対応
• 今後伸びていく
• フレームワークに対応
EC-CUBE 3系の欠点
• プラグインが少ない
• 動作が重い
• 技術的な敷居が高い(Twig、Silex)
• 資料が少ない
EC-CUBEとAzureの概要
Azureの概要
•Microsoftの提供するクラウドサービス
•正式名称=Microsoft Azure
•クラウドサービス=クラウド(雲)のよう
に沢山のサーバーから成立するサービス。
•必要な時に必要なサーバーを利用(後述)
AzureでPHP
•Azureといえば、Microsoftのサービスだか
らPHPは動かないよね?
AzureでPHP
•Azureといえば、Microsoftのサービスだか
らPHPは動かないよね?
•いえいえ、ちゃんと動きます
AzureでPHP
•Azureといえば、Microsoftのサービスだか
らPHPは動かないよね?
•いえいえ、ちゃんと動きます
•IIS(サーバー名)でもPHPは動くし、一般
的なLAMP構成も構築可能です。
クラウドは料金が高い?
•ケースバイケース
クラウドは料金が高い?
•ケースバイケース
•運用ではなくお試しでEC-CUBEを動かすな
ら無料
クラウドは料金が高い?
• ケースバイケース
• 運用ではなくお試しでEC-CUBEを動かすなら無料
• 売上向上、顧客増加にあわせてサーバーを強化した
り、増やしたりというクラウドの強みに合わせた使
い方なら、コストパフォーマンスが高いケースも。
無料でお試しできる?
•実際の運用ではなく「EC-CUBEを動かして
どんなものか見てみたい」といった場合…
無料でお試しできる?
• 実際の運用ではなく「EC-CUBEを動かしてどんなものか
見てみたい」といった場合…
• Web AppのFreeプランでEC-CUBEを動かせます
• Freeプランは性能に制限があるので、お試しの範囲で
• 簡単にEC-CUBEを設置できます(インストール直前ま
で)
Azure新ポータルでEC-CUBEを設置
1.クリック
Azure新ポータルでEC-CUBEを設置
2.「EC-CUBE」と入力
3.リターンキーを入力
Azure新ポータルでEC-CUBEを設置
4.EC-CUBEをクリック
Azure新ポータルでEC-CUBEを設置
5.作成をクリック
Azure新ポータルでEC-CUBEを設置
6.アプリ名を入力(任意)
7.リソースグループを入力(任意)
注意:6、7はすでに使われている
名前は登録できません
Azure新ポータルでEC-CUBEを設置
9.クリック
Azure新ポータルでEC-CUBEを設置
10.購入をクリック
Azure新ポータルでEC-CUBEを設置
11.作成をクリック
Azure新ポータルでEC-CUBEを設置
12.しばらく待ってここをクリック
画像のように「ec-cube-sample(任意)」
というサイトができています
Azure新ポータルでEC-CUBEを設置
13.サイト名をクリック
Azure新ポータルでEC-CUBEを設置
14.水色のURLをクリック
Azure新ポータルでEC-CUBEを設置
EC-CUBEのインストールページに
遷移します
EC-CUBEインストール
• 前述のFreeプランの場合、DBのデータ登録に時間がかかりタ
イムアウトする可能性があります。
• その場合、Azureの設定から
SCM_COMMAND_IDLE_TIMEOUTを長めに指定することで回
避できます。
• Freeプランはあくまで動作確認用とお考えください。
サイトの状態に応じたスケーリング
•売り上げが上がって、サーバーが遅くなった場
合や、広告効果などで一時的にアクセスの増加
が考えられる場合。
サイトの状態に応じたスケーリング
•売り上げが上がって、サーバーが遅くなった場
合や、広告効果などで一時的にアクセスの増加
が考えられる場合。
•サーバーの性能アップ(スケールアップ)
•サーバーの増加
(スケールアウト)
パフォーマンスをチェック
•Webブラウザから各種パフォーマンスをモ
ニタ可能。
まとめ(Azureなら…)
•簡単にEC-CUBEのお試し設置が可能(しか
も無料)
•運用でもクラウドを活かしたスケールアッ
プ、スケールアウトが可能
Azure上でEC-CUBEを動かす
(開発者向け)
ここからは
開発者向けのテクニカルなお話になります。
IISではなく
•オープンソースで使い慣れたApacheやNginxを
使いたい
IISではなく
•オープンソースで使い慣れたApacheやNginxを
使いたい
•Virtual Machines(IaaS)ならLinuxが利用でき
ます
•Web App On Linux(プレビュー)もまもなく登場
します
データベースを自前で
•ClearDBという外部サービスでなく、自前で
用意したい
データベースを自前で
•ClearDBという外部サービスでなく、自前で
用意したい
•Virtual Machinesなら自前でEC-CUBEの対
応しているMySQL、Postgresql共に構築可
能です。
SQL Databaseを使いたい
EC-CUBE2.13用に「Microsoft Azure SQL
Database プラグイン」があります。
http://www.ec-cube.net/products/detail.php?product_id=291
EC-CUBEはスケールアウト対応しているの?
•サーバー側のスケールアウトは可能です
EC-CUBEはスケールアウト対応しているの?
•サーバー側のスケールアウトは可能です
•が…EC-CUBEが遅い場合の多くは、データベー
スに原因があります。
•データベースのスケールアウトはEC-CUBEのカ
スタマイズが必要になります(Azureではない
場合も必要)。
メール送信はどうするの?
• Azureからのメール送信はできません(迷惑メールなどに
利用されるため)
• 外部サービスのSendGridなどを利用します。
• スライド作成時点では12,000通/月まで無料で利用できま
す。
(先述のお試しのFreeプラントも組み合わせできます)
最新のEC-CUBE3対応は?
簡単インストール
は現在ありません
がIISでも動作確認
が取れています。
http://www.ec-cube.net/product/system.php
まとめ
•AzureでもEC-CUBEは開発可能。
•提案のポイントは無料でお試し、スケール
アップ、スケールアウト
•大規模運用ではデータベース周りのカスタ
マイズが必要。(Azureに限らず)
まとめ
•Azureを利用してECサイトを構築したいと
いうご要望がございましたら、お気軽にご
相談ください(営業)。
参考リンク
EC-CUBE公式サイト
http://www.ec-cube.net/
EC-CUBE開発コミュニティ
http://xoops.ec-cube.net/
クラウドだけど難しくない!初心者ならだんぜんWindows Azure!
http://www.ec-cube.net/product/info_azure.php
Microsoft Azure SQL Database プラグイン
http://www.ec-cube.net/products/detail.php?product_id=291
EC-CUBE3 ソフトウェア要件
http://www.ec-cube.net/product/system.php
御清聴ありがとうございました

Azure上でec cubeを運用するポイント