drupalによる大規模サイトの設計・実装において何に気をつけるべきか

46
デジタルサーカス株式会社 http://www.dgcircus.com Drupalによる大規模サイトの設計・実装 において何に気をつけるべきか

Upload: dgcircus

Post on 26-Jul-2015

189 views

Category:

Internet


3 download

TRANSCRIPT

デジタルサーカス株式会社 http://www.dgcircus.com

Drupalによる大規模サイトの設計・実装 において何に気をつけるべきか

Copyright (C) Digital Circus Corporation All Rights Reserved Page 2

プロフィール

田口 健

デジタルサーカス(株) 団長

[email protected]

Drupalの日本国内の普及・啓蒙活動に尽力中

Copyright (C) Digital Circus Corporation All Rights Reserved Page 3

デジタルサーカス株式会社

– 2008年よりDrupalのカスタマイズ開発を開始

– 日本のDrupal公式サポーティングパートナー第一号

– 国内の大規模サイトへのDrupal導入実績No.1

会社名 デジタルサーカス株式会社

設立 1999年2月

所在地 東京都港区南青山3-5-2 南青山第1韮澤ビル2階

TEL 03-5775-4406

WEB http://www.dgcircus.com/

資本金 8,284万円

従業員数 30名

事業内容 Drupalの導入・カスタマイズ

Copyright (C) Digital Circus Corporation All Rights Reserved Page 4

Drupalナビ

Drupal情報サイト「Drupalナビ」を運営

http://drupal-navi.jp/

DRUPALとは?

Copyright (C) Digital Circus Corporation All Rights Reserved Page 6

DrupalはオープンソースCMS

Wikipediaより抜粋

http://ja.wikipedia.org/wiki/Drupal

Drupal(ドルーパル)は、プログラム言語PHPで記述されたフリーでオープンソースのモジュラー式フレームワークであり、コンテンツ管理システム (CMS) である。

Drupalは一般に、最も優れたWeb 2.0フレームワークの一つであると考えられている。

Copyright (C) Digital Circus Corporation All Rights Reserved Page 7

海外では巨大なシェア

– オープンソースCMSの御三家「Wordpress」「Drupal」「Joomla!」の合計で、CMS全体のシェアの72.3%を占める

– Drupalはそのなかでも最も大規模サイト向けのCMS

– 世界の2%のWebサイト(50サイトにひとつ)がDrupalで稼働中

(出典: W3Techs.com)

CMSマーケットシェア Drupal:5.1%

WEBサイトのCMS利用比率 Drupal:2%

WordPress

Joomla

Drupal

その他

CMS不使用

WordPress

Joomla

Drupal

その他

Copyright (C) Digital Circus Corporation All Rights Reserved Page 8

ハイエンド商用CMSと競合

ガートナー2014年レポートでWEBコンテンツ管理プラットフォームの市場でAdobe, Sitecore, IBM, HP, Oracle とともにリーダーとして選出

【Acquia】 DrupalのPaas

Drupal創始者がCTOを務める

(出典: Gartner)

Copyright (C) Digital Circus Corporation All Rights Reserved Page 9

Drupalの特徴

ライセンス無料

– Drupalはオープンソースソフトウェアとして提供され、商用/非商用問わず誰でも無料で利用可

豊富な機能

– ユーザー管理や多言語化などの機能は標準で実装され、数多くのモジュールを組み合わせることで多種の機能を実現する拡張性があるため、大規模WEBサイトに最適

優れたアーキテクチャ

– 高度に設計された堅牢なアーキテクチャは拡張性と細やかなセキュリティに配慮されており、カスタマイズによる拡張がしやすい構造

Copyright (C) Digital Circus Corporation All Rights Reserved Page 10

数々の受賞歴

Year Aword

2006 Packt Publishing「オープンソースCMSアワード」総合部門2位

2007 Packt Publishing「オープンソースCMSアワード」優勝

CNET「Webware 100」受賞

2008

Packt Publishing「オープンソースCMSアワード」優勝、2冠達成(総合部門、PHP部門で一位を獲得)

CNET「Webware 100」受賞

2009

Packt Publishing「オープンソースCMSアワード」2冠達成(PHP部門で一位を獲得、殿堂入り)

CNET「Webware 100」受賞

2010 Packt Publishing「オープンソースCMSアワード」殿堂入り部門2位

InfoWorld「Best of Open Source Software Awards」受賞

2011 InfoWorld「Best of Open Source Software Awards」受賞

2012 InfoWorld「Best of Open Source Software Awards」受賞

「オープンソースCMSアワード」で2年連続優勝ののち殿堂入り

海外ではCMSの代表的なパッケージとして非常に高い評価を獲得

Copyright (C) Digital Circus Corporation All Rights Reserved Page 11

海外の事例(官公庁系)

ホワイトハウス

オーストラリア政府

フランス政府

Copyright (C) Digital Circus Corporation All Rights Reserved Page 12

海外の事例(ポータル)

ワーナー・ブラザース

ワシントンポスト

エコノミスト

Copyright (C) Digital Circus Corporation All Rights Reserved Page 13

海外の事例(グローバル企業)

ジョンソン&ジョンソン

ダノン

メルセデス・ベンツ

Copyright (C) Digital Circus Corporation All Rights Reserved Page 14

国内の導入企業

大規模サイト導入時の留意点

Copyright (C) Digital Circus Corporation All Rights Reserved Page 16

Drupal 大規模サイト導入のポイント

機能/モジュール選定

インフラ設計

データ設計/データ移行設計

セキュリティ

パフォーマンスチューニング

SEO

保守運用

機能/モジュール選定

Copyright (C) Digital Circus Corporation All Rights Reserved Page 18

Drupalの構造

標準機能を構成する「コアモジュール」、追加インストール可能な「拡張モジュール」、自社専用にカスタマイズする「カスタムモジュール」コンテンツを格納する「データベース」、デザインを定義する「テーマ」から構成される。

テーマ データ

ベース コアモジュール

拡張モジュール

カスタムモジュール

コンテンツ更新

サイト管理者 WEBユーザー

サイトサクセス

Copyright (C) Digital Circus Corporation All Rights Reserved Page 19

標準機能/拡張モジュール

コンテンツ管理/会員管理/多言語化等の高度な標準機能に加え、拡張モジュール導入によりさまざまな機能を追加していくことが可能

Copyright (C) Digital Circus Corporation All Rights Reserved Page 20

巨大なオープンソースコミュニティ

世界中で開発されている拡張モジュールをインストールすることで機能を追加することができる。Drupal.orgに 3万本以上のDrupalモジュールが公開されており無料で利用可能。

利用可能な拡張モジュール 30,000 本以上

利用可能なデザインテーマ 2,000 件以上

登録デベロッパー 約40,000社

コミュニティユーザー 1,000,000 人以上

導入サイト数 1,000,000 サイト以上

対応言語 110言語

組織

Drupal Association

2828 SW Corbett Avenue, Suite #203

Portland, Oregon 97201, USA

Copyright (C) Digital Circus Corporation All Rights Reserved Page 21

贅沢な悩み

モジュールがたくさんありすぎてどのモジュールを選べばよいかわからない

→よく導入する定番モジュールは決まっている

→複数モジュール間の相性がある

→専門家によるコンサルティング/導入が必要

機能がありすぎでどれを使えばよいかわからない →利用しない機能はオフ(未使用状態)にできる

→ユーザー権限ごとに利用機能を制限できる

→不要なモジュールはアンインストールができる

Copyright (C) Digital Circus Corporation All Rights Reserved Page 22

ディストリビューション

業種・業界向けに最適なモジュールを組み合わせたパッケージが「ディストリビューション」として600個以上提供されています。

ECサイト用

ブログサイト用

イントラネット用

就職・転職サイト用

政府・公共機関用

教育機関用

ニュースサイト用

コミュニティサイト用

ホテルサイト用

Drupal Commons

Open Hotel

Copyright (C) Digital Circus Corporation All Rights Reserved Page 23

日本向けディストリビューション

デジタルサーカス(株)で日本市場に最適化したディストリビューションをご提供しています。

• 定番モジュール組込/検証済

• SEOやアクセス解析等の基本設定済

• 日本向けのデザインテンプレート

• マルチデバイス対応(スマホ/タブレット)

• 日本語マニュアル

• 日本語保守サポート

インフラ設計

Copyright (C) Digital Circus Corporation All Rights Reserved Page 25

動作環境

利用可能なDrupalのメジャーバージョンはDrupal6&7

より機能が豊富で安定しているDrupal7の利用を推奨

Drupal 6 Drupal 7

動作環境

OS: Linux/Windows WWW Apache1.3~ Microsoft IIS 5~ Nginx 1.2~ PHP: 4.4.0~ DB: MySQL 4.1~ PostgreSQL 7.1~

OS: Linux/Windows WWW Apache1.3~ Microsoft IIS 5~ Nginx 1.2~ PHP: 5.2.5~ DB: MySQL 5.0.15~ PostgreSQL 8.3~

推奨 スペック

CPU: 2core 2.2GHz~ メモリ: 2GB~ HDD: 20GB~ (OS・プログラムファイル含む)

*Drual 8 は2015年内に正式リリース予定(現在はベータ版)

Copyright (C) Digital Circus Corporation All Rights Reserved Page 26

システム構成例

典型的な構成例 – WWWサーバ: ロードバランサにより複数台に振り分け

– 管理用サーバ: コンテンツ登録/更新用の専用サーバ

– DBサーバ: MySQLによるレプリケーション

– ステージングサーバ: 事前検証用のテストサーバ

MySQL

ステージング (Drupal+DB)

管理用サーバ (Drupal)

WWWサーバ(Drupal)

データ設計/データ移行設計

Copyright (C) Digital Circus Corporation All Rights Reserved Page 28

データ設計が重要

Drupalはデータを柔軟に管理するための高度な機能を標準装備

データの種類やボリュームに応じてDrupalの機能を最大限引き出せるようなデータ設計・実装が非常に重要

データタイプ 説明 データ例

コンテンツ サイトに掲載する基本要素

(ページ/記事)

お知らせ、サービス説明、IR情報

エンティティ コンテンツでは対応できない

特別なデータタイプ

複雑な商品、資料請求データ

タクソノミー コンテンツの分類や属性とな

るマスタ情報

カテゴリ、タグ

カスタムテーブル カスタマイズして利用したい

独自テーブル

注文履歴(業務システムと連携)

Copyright (C) Digital Circus Corporation All Rights Reserved Page 29

コンテンツとコンテンツタイプ

標準で用意されているコンテンツ入力項目(タイトル、本文、掲載フラグなど)に加えて、独自項目を管理画面から定義してオリジナルの「コンテンツタイプ」を登録することが可能

標準のコンテンツ登録画面

独自コンテンツ登録画面

Copyright (C) Digital Circus Corporation All Rights Reserved Page 30

データ移行

データ移行用のモジュールが豊富に存在

• 会員データ移行

• コンテンツ移行

• マスタ系データ移行

一括インポート/移行モジュール開発の2通り

静的コンテンツの大量移行は工数への影響大

• HTMLタグ入りコンテンツは検証&微調整必要

• 特にスマホ対応の場合

セキュリティ

Copyright (C) Digital Circus Corporation All Rights Reserved Page 32

堅牢なセキュリティ

セキュリティ要求の高い多数サイトで採用

–Drupalのコアモジュールは、SQLインジェクション/クロスサイトスクリプティング/クロスサイトリクエストフォージャリーなどによるサイトへの攻撃への対策済

–国内大手企業サイト導入時のセキュリティ監査にも合格

Copyright (C) Digital Circus Corporation All Rights Reserved Page 33

セキュリティ強化機能

WEBサイトのセキュリティを高めるための豊富な機能

•権限グループ(ロール)の作成

•権限グループごとのアクセス制御

•組織単位でのアクセス制限

•パスワードの暗号化

•連続パスワード誤入力時のアカウント自動ロック

•IPアドレスによるアクセス制限

・・・・・など

Copyright (C) Digital Circus Corporation All Rights Reserved Page 34

専門のセキュリティチームの存在

Drupalコミュニティに専門のセキュリティチームが存在

セキュリティアップデートを頻繁にリリース

Drupalナビ http://drupal-navi.jp/

• Drupal.orgからセキュリティアップデートがほぼ毎週リリースされています。

• デジタルサーカス(株)では「Drupalナビ」でセキュリティアップデート情報を日本語で配信しています。

SEO

Copyright (C) Digital Circus Corporation All Rights Reserved Page 36

SEO優位性

Drupalで構築したWEBサイトは構造化され検索エンジンからクロールされやすくSEOに有利

【コンテンツ構造化】

コンテンツはデータベースに保存されトップページ/一覧ページ/まとめページなどに適切なリンクが自動で設置されます。

【URL最適化】

コンテンツに対して適切なURLを定義しサイト全体で統合されたURL体系の管理を行うことができます。

Copyright (C) Digital Circus Corporation All Rights Reserved Page 37

豊富なSEO機能

SEOに役立つ機能/モジュールが豊富に存在

• Metaタグ管理

• OGPタグ管理

• パンくずリスト表示

• アクセス解析(Google Analytics連携)

• 検索エンジン用サイトマップ自動作成

• リンク切れ自動チェック

• リダイレクト設定

・・・・・など

パフォーマンスチューニング

Copyright (C) Digital Circus Corporation All Rights Reserved Page 39

大規模サイトでの実績

The Weather Channel(Weather.com)

10億ユニークユーザー/月

2000万件のコンテンツ

Top 20 U.S. site (comScore)

Copyright (C) Digital Circus Corporation All Rights Reserved Page 40

強力なパフォーマンス対策機能

大規模サイトでの運用ノウハウと高アクセスに対処するためのモジュール/ソリューション

標準キャッシュ機能

• コンテンツページのキャッシュ

• 一覧ページのキャッシュ

• Javascript/CSSの圧縮

拡張機能

• memcached利用

• Varnish利用

• CDN利用

保守運用

Copyright (C) Digital Circus Corporation All Rights Reserved Page 42

安定したサイト運営のための支援機能

サイトを安定して運用するための支援機能が標準/拡張モジュールで豊富に存在する

– コンテンツ管理

– ユーザー管理

– 権限管理

– ワークフロー管理

– 稼働状況表示

– ログ記録

– SEO支援

・・・・・など

Copyright (C) Digital Circus Corporation All Rights Reserved Page 43

Drupalの拡張性

Drupalは運用後の拡張性に優れたフレームワーク

– 管理画面での設定で相当の機能拡張が可能

デザインテーマの入れ替え

ページレイアウト変更

ワークフロー設定

– いつでも拡張モジュールのインストールが可能

最新のテクノロジーを好きなときに導入可能

– 高いカスタマイズ性

はじめからカスタマイズ前提で設計されているフレームワーク

世界中のエンジニアのベストプラクティスが集積

Copyright (C) Digital Circus Corporation All Rights Reserved Page 44

標準モジュール(コア) 拡張モジュール

セキュリティアップデート

更新内容やセキュリティ深刻度からアップデートの必要性を判断

Not critical たいして危険ではない

Less Critical 少し危険

Moderately Critical ほどほどに危険

Critical 危険

Highly Critical 超危険!

Copyright (C) Digital Circus Corporation All Rights Reserved Page 45

Drupal公式パートナーの存在

デジタルサーカス(株)はDrupal Associationに認定された日本におけるDrupal公式サポーティングパートナーです。

Copyright (C) Digital Circus Corporation All Rights Reserved Page 46

THANK YOU

ありがとうございました。

http://www.dgcircus.com/ http://drupal-navi.jp/