最近、シンブルボードコンピュータで NextCloud と Redmine の環境を構築しました。
導入してみるとリソース消費は、自分の予想に反して Redmine < NextCloud でした。
参考までに以下、メモリ使用量サンプル。
目次
リソース消費量の確認
NextCloud
Orange Pi One なのでメモリ 512MBですが、メモリ消費は 250MB程度で、且つスワップしています。
重いはずだよ...。
# top
Tasks: 136 total, 1 running, 79 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.5 us, 0.4 sy, 0.0 ni, 99.1 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 505064 total, 28880 free, 255084 used, 221100 buff/cache
KiB Swap: 252528 total, 241264 free, 11264 used. 233704 avail Mem
Redmine
こちらは、Raspberry Pi 3 Model B なのでメモリ 1GBですが、メモリ消費を見ると130MB程度です。
# top
Tasks: 98 total, 1 running, 56 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.2 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 949448 total, 665596 free, 137668 used, 146184 buff/cache
KiB Swap: 102396 total, 102396 free, 0 used. 754404 avail Mem
パフォーマンス改善設定
メモリがあればキャッシュを利用して・・・ということができるのですが、如何せん 512MBなので仕方がありません。
ジョブ実行タイミングを変更して体感スピードUPを図ります。
ジョブ実行タイミングの変更
バックグラウンドジョブを AJAX → Cron へ変更すると体感速度がUPします。
設定方法
- 設定
- 基本設定
- バックグラウンドジョブ
- AJAX 既定値
各ページの読み込み時にジョブ実行。 - Webcron
15分間隔でジョブ実行(HTTP経由)。 - Cron
15分間隔でジョブ実行(cronデーモン)。
- AJAX 既定値
- バックグラウンドジョブ
- 基本設定
アプリの無効化
月並みですがバックグラウンドのアプリを減らします。
今回はクローズド環境のため思い切って以下の2つ以外を無効にしました。
- Deleted files
- Password policy
※心なしか早くなった気がします...。
攻撃用テーブルのクリア
ブルートフォース(総当り)攻撃対策用テーブル oc_bruteforce_attempts をクリアすると早くなるという記事を見つけたのですが・・・Snap版は0件だったので影響はなさそうです。
操作方法については、NextCloud の DB データ操作 をご参照ください。