練習ページ/58

Last-modified: 2015-06-19 (金) 00:47:14

コメント欄検討用資料 Edit

種類pcommentプラグインrtcommentプラグインzawazawaβ
現在の使用箇所コメント欄等多数雑談チャット試用のみ
処理サーバwiki鯖外部鯖外部鯖
負荷対応(運営側)キャッシュサーバ設置済み手動にてチューニングオートスケールに対応
wiki鯖へのアクセス表示および書き込みの全て最初の表示のみ最初の表示のみ(埋め込み時)
zawazawa.jpからの利用時は全くなし
ログ保存wikiページとして保存
行数・文字数のオーバー時は手動で更新が必要
外部鯖に1000行まで保存
古いものから順次自動的に消去される
全て保存される?
wikiダウン時表示不可ページをリロードしなければ更新可能
リロードすると表示不可
ページをリロードしなければ更新可能
リロードすると表示不可
zawazawa.jpから常に利用可
最新ログの表示手動自動(チャット風)手動(新着表示・リロードボタン有)
表示更新時のアクセスwiki鯖(表示のみはキャッシュ鯖有効)
書き込み時はキャッシュ無効で負荷大
外部のみ外部のみ
書き込みの表現・装飾wikiページと同じテキストのみMarkdown記法やHTML(の一部)が使用可
wikiとは記述法が異なるため共用できない
階層化第3レベルまで(なしも選択可)なし第3レベルまで
ログ管理wikiページと同じ一切不可自分の書き込みは変更・削除可
管理グループは任意のコメントを削除可
DiffAnalyzer有効無効無効
アクセス制限SMS投票による規制
(管理者による規制が可能だが不在)
なし管理グループによる規制が可能
ただし管理権限付与は手動
NGワード設定機能なし?なしなし
個人識別DAのID(IPアドレス依存)
SMS認証(電話番号依存、規制投票兼用)
トリップ機能ユーザ登録によるアカウントID表示可
(表示せずにゲストのように見せることも可能)
ゲストはセッションIDおよびIPアドレス(管理画面のみ)

zawazawa仕様簡易まとめ Edit

※zawazawaはベータ版につき仕様は変更される可能性があります


権限毎の主な利用可能機能は以下の通り。

機能オーナーアドミニ
ストレ
ーター
モデレ
ーター
メンバーゲスト備考
グループ設定×××
トピック作成
タグ管理×作成/設定
コメント投稿
コメント削除××一括削除を含む
無視設定××
メンバー管理×××
管理ログ閲覧×
各種一覧閲覧×


  • zawazawaと2ch互換掲示板の用語の対応関係は「グループ=板」「トピック=スレッド」「コメント=レス」
  • 基本的な仕様は wikiwiki.jp/新サービスのお知らせ の通り
  • [[BracketName]]形式でのリンク設置は不可
  • ログインユーザーがログインしたまま名前を隠して投稿してもコメント一覧(メンバー以上閲覧可)にはidが表示され識別可能
    • とは言えアカウントはメールアドレスだけで取得可能
  • オーナーはグループの作成者
  • アドミニストレーターはオーナーとアドミニストレーターの除名はできない
  • グループ全体ないしトピック単位で非メンバーの閲覧と投稿を制限できる
    • メンバーの権限単位での閲覧・投稿制限はできないためモデレーター専用トピックなどが必要なら別グループが必要
  • アドミニストレーターはアドミニストレーターを増殖させられる
    • 不用意に権限を与えると大変なことに
  • 上位権限のメンバーのコメントを削除したり無視対象に設定したりできる
    • モデレーターがアドミニストレーターのコメントを一括削除(トピック/グループ単位)することも可能
    • そして一度削除されたコメントは復活できない
    • 不用意に権限をあt(ry
  • コメントの削除・編集時の処理
    • 投稿者が削除したコメントは管理画面のログからも消える。
    • 投稿者以外(モデレーター以上のメンバー)が削除したコメントは管理画面のログに残る。
    • 編集されたコメントは最新の内容しかわからない。(編集前の内容は管理画面のログにも残らない)
    • コメント編集の有無は打ち消し線の入った最初の投稿日時と最終更新日時が併記されるため誰でも識別可能。
      • ただし最終更新日時しか表示されないため、いつ編集されたか、何回編集されたかはわからない。

イベントページの高負荷対策 Edit

現状 Edit

  • イベントの度に限界までページが肥大化してしまう
  • 記述内容が多くかつ頻繁に更新されるため、編集時に衝突が起きやすくなる
  • ページの読み込みが遅くなる、場合によってはエラーが発生してしまう
  • 編集時の読み込みが不完全なまま更新してしまい、意図しない記述の削除が発生してしまう

イベントページにおいて、pcommentプラグインの使用時にwikiへの負荷が高まる仕組みをざっくり Edit

wiki鯖のフロントにはキャッシュ鯖が設置されていて、画像やコンテンツを一定時間キャッシュしている

アクセスが殺到しても通常はキャッシュ鯖の(必ずしも最新ではない)データが送信されるのでwiki鯖の負荷は小さい

pcommentで投稿したブラウザは一定時間キャッシュなしで表示される(空投稿すると最新が表示されるのはこの仕様による)

イベントページが大きく、かつコメント欄がたくさんあるため、どこかに書き込みが発生すると
書き込みデータを送信すると共にイベントページの最新データもwiki鯖から取得することになるため、wiki鯖への負荷が高まる
(イベントページもコメントログもキャッシュ鯖を経由せずに取得するため、wiki鯖が処理しなくてはならない)

解決方法は… Edit

  • イベントページを分割し、リロードされた時の負荷を軽減する
  • pcomment欄に書きこまれていたコメントの一部をrtcommentかzawazawaによるコメント欄に逃がす
    • イベントページはキャッシュ鯖から取得、コメント部分は外部鯖から取得することになり、wiki鯖の負荷が軽減される



ちなみに…仮にwiki内の全てのpcommentをrtcommentに置き換えると(非現実的ですが)

WIKIサーバーの負荷は通常を100%とした場合、20%程度に負荷を軽減できます。

(WIKIWIKI.jp*運営チームの返信より引用)