ブログの復旧が難航してた話

先週末に起きたこのブログの動作不良の件、復旧になかなか手こずってしまった。PHPに関する知識不足と、作業時間があんまり取れなかったので放置状態が続いた。ここ一週間はこのブログがほとんど閲覧できない状態でした。

まだ完全に原因を特定できた訳ではないけど、何とか普通に運用できるようにはなった。サイトが何度もダウンしていたけど、EC2インスタンスのCPU使用率は30%ぐらいの負荷しかかかっていなかった。どうやら割とフロント側の問題で、Wordpressにインストールしているプラグインの組み合わせで起こっていた不具合の様子。

ブログがすぐにダウンしてしまうので、何とか動いている間にUpDraftPlusでバックアップを取って、新しいEC2インスタンスを作って復元を試しても、画面が真っ白になっちゃって、管理画面にもアクセスできなかった。少しずつプラグインを減らして何度もインスタンスを作成し直した。
この機会にブログをWordPress powered by AMIMOTO (HHVM)へ移行してしまった。多少パフォーマンスが上がったかな?



いずれにせよ今までインストールしていたプラグインをいくつか外さなきゃいけなかったから、良い機会なのでインストールしていたプラグインを少し整理することにした。
記事の訪問者数を表示するためにCount Per Dayを使っていたけど、負荷がものすごく大きいことが分かったのでアンインストール。
その他、ほとんど活用できていないダッシュボード拡張プラグインをいくつか外して、動作を軽くした。

割と便利だったJetpack by WordPress.comが上手く動かなくなったので外すことにした。以前までJetPackのportfolio機能を使っていたけど、代替手段を探さないといけない。特定のプラグインに依存したページは避けるべきだったと反省。

プラグインを減らしたら管理画面もサクサク動くようになって快適になった。
ググりながらちょっとずつ原因を探るという、とても帰納的なやり方で復旧したから、完全に直ったと確信できずとても不安(笑)
障害が出ることを前提に、小まめにバックアップを取らないとダメだな。

今回の件で知ったんだけど、Amazon EC2にはリザーブドインスタンスっていう料金プランがあるのね。1のインスタンスを長期運用するならリザーブドインスタンスの方がお得になるらしい。

関連記事

AndroidもopenGLも初心者さ (でもJavaは知ってるよ)

OpenCV 3.1から追加されたSfMモジュール

3D復元技術の情報リンク集

書籍『ROSプログラミング』

PyTorch3D:3Dコンピュータービジョンライブラリ

cvui:OpenCVのための軽量GUIライブラリ

書籍『3次元コンピュータビジョン計算ハンドブック』を購入

OpenCVで顔のランドマークを検出する『Facemark API』

Dlib:C++の機械学習ライブラリ

オープンソースのIT資産・ライセンス管理システム『Snipe-IT』

Super Resolution:OpenCVの超解像処理モジュール

書籍『OpenCV 3 プログラミングブック』を購入

Mechanizeで要認証Webサイトをスクレイピング

PyDataTokyo主催のDeep Learning勉強会

WordPressプラグインによるサイトマップの自動生成

プログラムによる景観の自動生成

Unityの薄い本

openMVG:複数視点画像から3次元形状を復元するライブラリ

ROSの薄い本

Raspberry Pi 2のGPIOピン配置

『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハンズオンセミナーに行ってきた

OpenCVのfindEssentialMat関数を使ったサンプルを読んでみる

Seleniumを使ったFXや株の自動取引

adskShaderSDK

R-CNN (Regions with CNN features):ディープラーニングによる一般物体...

3Dモデルを立体視で確認できるVRアプリを作っている

ブログが3日間ほどダウンしてました

OpenGVのライブラリ構成

HerokuでMEAN stack

SONYの自律型エンタテインメントロボット『aibo』

Russian3DScannerのトポロジー転送ツール『WrapX』

UnityのMonoBehaviourクラスをシングルトン化する

OpenCVの三角測量関数『cv::triangulatepoints』

第1回 3D勉強会@関東『SLAMチュートリアル大会』

OpenCV 3.3.0-RCでsfmモジュールをビルド

bpy-renderer:レンダリング用Pythonパッケージ

OpenCV バージョン4がリリースされた!

Gource:バージョン管理の履歴を可視化するツール

ブログをAWSからwpXへ移行

2D→3D復元技術で使われる用語まとめ

KelpNet:C#で使える可読性重視のディープラーニングライブラリ

UnityからROSを利用できる『ROS#』

コメント