#fedibird #fedibird_info さきほどから起きている現象と対応、書き留めておきます。
データベースが何度か落ちています。データベース自身が自動shutdownする挙動です。
過去の経験から、データベース接続数などのパラメータを大きくとった時に同様の現象が起きており、過負荷が疑われるため、少し数値をしぼって様子見しています。
ルート変更については、Mastodonプロセス側の効率が向上するため、データベースからみると負荷が高まるため、無関係ではないかもしれません。
データベースが落ち着いたら、再度、ルート変更を試してみます。
#fedibird #fedibird_info 原因がはっきりしないので、経路の変更を戻しました。少し様子をみます。
#fedibird #fedibird_info 接続経路の変更など、大きめのチューニングを行いました。
また、それと関連があるかどうかわかりませんが、データベースに問題が発生したため対処しました。こちらは詳細を調査中です。
MastodonのWebUIは、自分の投稿をサーバに送信すると同時に、(手元の)ホームタイムラインに流し込みます。
これにより、投稿を行ったら遅延無く反映されている……ように思わせています。
実際には、サーバに送られた自分の投稿が、あとからストリーミングを通じてホームタイムラインに挿入するよう指示が流れてきます。これは無視します。
この時、ホームタイムラインの処理が遅延していると、実際に反映されるまで時間がかかります。
まだ反映されていないうちにリロードすると、サーバ上の状態にリセットされるので、さきほど投稿直後に差し込んだものが消えてしまいます。
しかし、これは見た目上のことで、あとでホームタイムラインの該当箇所が流れてくるタイミングでちゃんと流れてきます。
まとめると……
ホームが遅延しているときにリロードすると、自分の投稿が消えたように見えますが、追いついた時にちゃんと流れてきますので、ご承知おき下さい。
#fedibird #fedibird_info defaultキュー、pullキューがだいぶ積み上がっていたので、sidekiqのプロセス数とデータベースコネクション数などのパラメータを変更し、より効率の良い状態に調整しました。
負荷が高まっている状態にならないと最適パラメータがわからないので、これでだいぶ良くなったんじゃないかな。
あとは、リソースを追加投入しないでどこまでいけるか……。
#fedibird #fedibird_info ちょっと遅延入ってるみたいなので、手を打ちますねー
#fedibird #fedibird_info サーバ移転、まだ完全に仕上がったわけでもないし、もっと投稿が流れる時間にならないと安定動作するかわからないのですが、ここまではうまくいきました。
予定していた全機能を新サーバに移し替え、現在すべて新サーバで動作しています。
深夜帯はこのままデータベースの最適化を流しておきますので、ちょっと重いときがあるかと思いますが、よろしく!
おまたー #fedibird #fedibird_info
#fedibird #fedibird_info そろそろ「えいやっ」をやろうかな。
目標の停止時間はだいたい5分。
何かあったら @noellabo@nightly.fedibird.com あたりから #fedibird #fedibird_info タグ付きで投稿すると思うんでよろしく。
まだ起きてる人は、どうせなら止まるところから戻るところまで立ち会うといいよ。
fedibird.comは複数のサーバで構成されていて、Webのアクセス全般、APIアクセス、ストリーミング、メディアなどを、それぞれ異なるサーバが受け持っていたりするんですが、
実はHTTPの応答に応答したサーバ識別が可能な項目を潜ませてあるので、覗くとわかるようにしてあります。
デベロッパーツールの扱いがわかれば、という話ではありますが……
#fedibird #fedibird_info ちょっと工夫してみたよ。改善した?
WebUIが真っ白になる件、複数あるうちの一つのサーバにあたると再現することが確認でき、さきほど修正しました。
リロードすると別のサーバ引き当ててなおることがあるっていうやつね!
あと、常時赤字運営なので、コスト削減も目指しています。
応答が遅めだったり、少し遅延するのは、移行作業の都合だけでなく、どこまで削れるか判断するためにリソースを抑えているためでもあります。
ヘンに遠慮されても判断効かないので、ちょっと不便かもしれませんが、いつも通り使っていていただけると助かります。
高速道路や鉄道などで、片側車線で交互通行させたり、仮設道路を設けたり、いつもと違うホームで発着したり、止めない運用を工夫しているところは見かけるかと思います。
fedibird.com規模の構成になると、sidekiqだけ移し替えるとか、5台のうち、2台だけ動かして他を切り替えるとか、そういうオペレーションを駆使していく感じになります。
でも、データベースを切り替える時だけは、全面的に止めないと無理なんですわ。危ないし。
新サーバ移行、サーバダウンを伴わない作業は段階的に進行してますので、応答が遅くなったり、たまにエラーでたりしますけど、
「やってるなー」ぐらいでみておいてください。
ヤバイときは報告します。
#fedibird #fedibird_info 大丈夫そうかな。
あらためて、昨晩からさきほどまで、サーバがつながりにくい・ほぼつながらない状態が続いていたようで、ご迷惑お掛けしました。
misskey.backspace.fm(ばすきー)のアカウント削除がたくさん流れていたのかな。これを大量に同時処理したことで、データベースが過負荷になっていました。
現在も削除処理は走っていますが、同時実行するプロセスを減らすなど構成をアレンジして、動作に差し支えないレベルに負荷を抑えられたかなと思います。
まだ様子見していますが、まあこれでなんとかなるでしょう。たぶん!
だいぶマシになった?
主に、Fediverseへの関心に基づいた投稿を行うアカウントです。DTP・印刷に関する話をしたり、同人の話をしたり、カレーをブーストしたりします。
Mastodonのcollaborator(開発者の一員)です。また、独自機能を盛り込んだFedibirdを管理・開発しています!
Mastodonサーバ『fedibird.com』の管理者アカウントでもあります。ご連絡は当アカウントへ、サーバインフォメーションについては https://fedibird.com/about/more と @info を参照してください。