Movable Type クラウド版の公開キューとダイナミックパブリッシングについて

2017.07.22  渡邉達朗

Movable Type クラウド版のテンプレート機能には、通常の「スタティック」のほか、「公開キュー経由」「ダイナミックパブリッシング」という公開設定がある。

Webサイトを自動的に最新の状態にしておきたい開発者は、これらの公開設定について検討することもあると思うが、公式サイトなどに情報がほとんど掲載されていないため、入手した情報を公開しておく。

まず、「公開キュー」はバックグラウンドで再構築をおこなうための機能で、再構築処理が実行待ち(キュー)の状態となり、予約された再構築は「run-periodic-tasks」スクリプトにより実行される。

このスクリプトを定期的に実行するためにはサーバ側で設定する必要があるが、Movable Type クラウド版ではcron設定が行えないので、シックス・アパート社に問い合わせてみた。

返答は以下のようなもので、1つのブログ内で完結するものであれば「公開キュー」で問題ないが、複数のブログをカスタムフィールドも利用して組み合わせたサイトでは自動的に再構築することは不可能で、プラグインを独自開発する必要があるようだ。

公開キューは、要約すると再構築処理を後回しにする機能です。通常は即時おこなわれる再構築が、run-periodic-tasks の実行時におこなわれるようになります。

そして、再構築処理は指定日投稿によりおこなわれます。指定日投稿は、記事の公開日に指定した日時を過ぎたあと、最初に run-periodic-tasks が実行されるタイミングで処理されます。

Movable Type クラウド版では、run-periodic-tasks は 5 分おきに実行されるため、実際の再構築は記事の公開日時 + 5 分以内におこなわれることになります。ただし、扉ページと詳細ページは、あくまでテンプレートとカスタムフィールドで擬似的に紐付いている状態であり、Movable Type クラウド版のシステム上で紐付いているわけではありません。

そのため、詳細ページを指定日投稿で公開したり、扉ページのブログで再構築用に指定日投稿の記事を作成しても、扉ページは再構築されません。再構築対象となるのは、指定日投稿の記事とその前後の公開日の記事、インデックステンプレート、関連するアーカイブ(月別やカテゴリ別など)のみとなります。

指定した日時に、指定したブログもしくは記事を自動で再構築する動作を実現するには、やはりプラグインにて機能を拡張する必要があるかと思われます。

念のため、お客様のご要望を実現するプラグインがないか探しましたが、見つけることはできませんでした。

弊社パートナー企業の中には、プラグイン開発を請け負っている企業もあるかと思われます。再構築の自動化が必須となる場合は、弊社パートナーへのプラグイン開発依頼もご検討ください。

また、Movable Typeのテンプレート機能には「ダイナミックパブリッシング」という、スタティックなHTMLを作成せず、リクエストごとに逐次ページを生成する公開設定がある。「ダイナミックパブリッシング」を利用することで問題を解決できるが、サーバへのアクセス負荷が気になったので、これについてもシックス・アパート社に問い合わせてみた。

返答を以下に引用するが、結論としてはプラグインを開発するほかないことが判明した。検討していた案件のプランはM16系だが、達成目標のアクセス数から考えると、扉ページのアクセスが最大15セッションというのは問題があるためだ。今後のバージョンアップで動的なページ表示における負荷対策が強化されることを期待したい。

お問い合わせいただきましたダイナミックパブリッシングの負荷についてですが、ダイナミックパブリッシングは対象の公開ページにアクセスがあった時点で PHP で動的にページを生成(再構築)する機能です。

そのため、1 日に投稿する記事数には関係がなく、ダイナミックパブリッシングで公開しているページへのアクセス数が重要となります。

お客様がご利用のプランはわかりかねますが、最小プランの S1i での PHP の同時実行数は 7 となり、最大プランの M16 系では 15 となります。

そのため、PHP を利用するダイナミックパブリッシングで公開しているページに対して、同時アクセス数が PHP の同時実行数を超えた場合には、ページにエラーメッセージが表示されます。

対象ページのアクセス数に関しては、Google Analytics などを利用して事前にご確認いただくことをおすすめいたします。

ダイナミックパブリッシングで公開予定のページのアクセス数が多くない場合や、アクセス時間帯が極端に集中するようなことがなければ、特にご心配の必要はないかと思われます。

コメントをどうぞ

CAPTCHA


Movable Type クラウド版の公開キューとダイナミックパブリッシングについて

2017.7.22

Movable Type