SOY CMS のデータバックアップついでに SQLite.db を最適化する

SOY CMS ネタをこのブログで書くのは一年以上ぶり……。
その間、SOY を全く触っていなかったわけではなくて、主にメンテをするだけな感じで、これといって先っちょを追っかけることはしていなかったというだけ。

と、そんな前振りは三行で切りあげて本題へ。
保守・メンテにおいて最も重要だと思われるのは、データ類のバックアップだ。
SQLite版なら基本的には sqlite.db のコピーを大切に保管しておけばいい。
詳しくは、SOY CMS オフィシャルサイトの、
http://www.soycms.net/product/download
バージョンアップ方法」に書いてある、
common/db以下」と「サイトディレクトリの.db以下」をバックアップせよ、と。

まあそれは当たり前に保守作業として常日頃からやっていることなのだが、ちょっと気になったのが、我がウェブサイトデータが詰め込まれた sqlite.db のファイルサイズが 6.7MB と、メタボ感。
記事数は 54件で、ページは 10 前後。
コメントや TB は皆無なのを総合的にみても、6.7MB はちょっとデカイ。
一番の心当たりは、過去に TBスパムを~万単位でくらっていたので、その頃に DB がエージングされまくったのは間違いない。

というわけで、SQLite の最適化・ダイエットを決行する。
SQLite の最適化には、TkSQLite を使用。
http://reddog.s35.xrea.com/wiki/TkSQLite.html
ダウンロードをポチって、下のほうにあった Win32 のをゲット。
http://reddog.s35.xrea.com/software/tksqlite-0.5.8-win32-bin.zip

解凍して出てきた tksqlite.exe をポチチって起動。
sqlite.db を開いて中のデータを覗き見しつつ、ちょっと動作が鈍いな……なんて思ったり、Tk だからかな……なんて知ったかぶり感。
メニューから VACUUM をポチる。
処理は一瞬。

sqlite.db のファイルサイズを確認すると、6.7MB から 2.33MB にまで最適化されていた。
生まれ変わったこいつをアップロードして、ブラウザから我がウェブサイトをポチポチ巡回してみる。
念のためキャッシュも削除して、またポチポチ巡回してみる。
OK牧場。

最後に、この投稿にて、最終動作確認とする。

Google Chrome のスクロールを滑らかに

Google Chrome のスクロールを滑らかにする拡張機能 SmoothScroll を試す。

Chrome のスクロールは流れるような動作ではなく、一定の高さ(行数)が瞬時に飛ぶだけのシンプルな動作なので、長文を読んでいる途中にスクロールさせてしまうと視点を見失ってしまう。
これがかなりのストレスで、無駄に時間もかかってしまい最悪だった。

長年愛用しているマウスはクリック感のあるスクロールホイールで、一滑り三行~五行くらいスクロールしてくれると感覚的に都合が良い。
クリック感の無い無段滑りタイプのマウスはまた違った感覚になるのだろうとは思うが。

SmoothScroll をインストールし、自分好みに少し調整してみる。

Stride size per scroll in pixel [200] Default value: 95
一度にスクロールする量(高さ)をデフォルトの 95 から 200 に増やす。
これでざっくりと好みの移動量に設定する。
基本的には、この数値を調整するだけでいい。

Animation time in milliseconds [400] Default value: 400
これはスクロールにかける時間、だと思う。
スクロール量をだいぶ増やしたので、時間もデフォルトから 50% ほど増やしてみた……けど、やっぱりトロくさいだけなので 400 にした。
サクサクっとスクロールさせたい場合は下げて、ニュルニュルっとさせたい場合は上げるといい。
同じく、Pulse Scale でも調整できるみたいだけど。

Frames per second [60] Default value: 50
これがフレームレートで、スクロールの描画の滑らかさに影響する。
モロに CPU性能を食うので上げ過ぎないように、と 60 に設定した。
ヘボPC やノートPC で無駄な処理をさせたくない場合は下げるといい。

これにて Chrome でも長文読みが可能となった。