弊社が昨年度末に開発しました出版・情報配信会社様の「情報配信サイト、モバイル専用サイト、バックエンドシステム」の構築事例をご紹介させていただきます。
案件概要
WordPressとEC-CUBEで運用していたWEBサイトを、PHPフレームワークであるLaravelとOctober CMSを利用し、再構築いたしました。
開発概要
情報配信サイト・モバイル専用サイト
元のシステムはコンテンツの管理にWordPressとEC-CUBEを採用しており、会員管理等はこれらとはまた別のシステムで運用されておりました。
上記のようなパッケージを利用した結果、必要な機能を実現出来ない等の課題を抱えられていました。
そのため、今回のリプレイスにあたり、パッケージ特有の制限に左右されず、お客様のご要望に沿った機能を実現しやすいよう柔軟性をもたせるため、PHP/Laravelでのスクラッチ開発を提案させていただきました。
バックエンドシステム
情報配信サイトやモバイル専用サイトのみの場合、WordPressでの構築も可能と思い、検討致しました。
しかし、コンテンツ管理だけでなく会員管理やメール配信機能等、お客様のご要望を実現するとなると、代替するシステムが必要となり、現状と同様に複数システムでの運用になると判断しました。
そこで、各々の情報を一元管理し、各システムの統合を実現するため、シンプルでカスタマイズ性の高いOctober CMSを採用する提案をさせていただきました。
October CMSは、Laravelが採用されているCMSであるため、他CMSに比べて学習コストが抑えられる事ができ、工数削減につながりました。
インフラ
元のシステムは、旧システム管理会社が契約されている共用サーバで稼働しておりましたが、サイトがダウンしたりレスポンス遅延が発生する等、不安定な状況が続いておりました。
そのため、今回のリプレイスを機にAWSへの移行を提案させていただきました。
AWSを利用することで初期コストを抑えながら安定した環境を提供でき、ランニングコストも下げることができました。
苦労したところ
まず、メルマガ配信で約1万件のメールを一斉送信する必要がありましたが、普通に送信するだけでは時間がかかりすぎていました。
そこで、並行処理で非同期にメールを送るように改善することで、配信速度を改善できました。
次に、October CMSの情報の少なさです。
公式ドキュメントは存在していますが、逆引きしたくてもなかなか良い情報には巡り合いませんでした。
今後は、本ブログでもOctober CMSについて色々な情報を掲載していけたらと思います。
最後に、複数システムのデータ一元化です。
システムを統合する際にデータを一元管理する必要がありましたが、システム毎にデータの管理の仕方が異なっておりました。
各システムのデータの形式とパターンを調査したうえで新システムの形式へ合わせたため、問題なくデータを移行することができました。
まとめ
柔軟性があるLaravelフレームワークは多様な機能を盛り込んだフロントエンドを実現し、シンプルでカスタマイズ性が高いOctober CMSは無駄がなく操作性が高いバックエンドを実現しました。これまで外部サービスで運用していた顧客管理もバックエンドシステムに統合し、段差の無い社内システムとなり、作業工数の削減へと繋がっています。
また、これまで共用サーバーで稼働していた旧システムは、たびたびサイトがダウンするなど環境性能面で悩まされていましたが、AWS上でスケーラビリティが高いシステムを構築したことにより、その悩みも解消いたしました。