oc_file_locks
oc_file_locks は Nextcloud がデフォルトで使用する DB ベースのロック管理テーブルです。同期時のファイル単位排他制御を保存し、肥大化すると同期が止まります。
詳細解説
oc_file_locks は MariaDB / PostgreSQL 上の Nextcloud 内部テーブルで、各同期セッションがファイル単位でロックを取得・解放するたびに INSERT/DELETE が走ります。memcache.locking が未設定 (DB ロック使用時) のみ使われ、Redis ロックに切り替えれば書き込まれなくなります。負荷集中時にロック数が数十万件に膨れ上がり、新規同期が永久ブロックされる事故が発生することがあります。緊急復旧は TRUNCATE で空に + メンテナンスモード使用が定番。恒久対策は Redis 化が必須です。
実装例 / 使い方
- 01TRUNCATE TABLE oc_file_locks で緊急ロック解放 (要メンテナンスモード)
- 02SELECT COUNT(*) で監視 (500 件超で異常)
- 03Redis 化後は不要、空のまま放置で OK
関連する用語
Nextcloud
Nextcloud (ネクストクラウド) は、Dropbox や Google Drive のようなファイル同期 + 共有機能を、自社サーバーで運用できる OS...
memcache.locking
memcache.locking は Nextcloud のロックバックエンド設定項目で、ファイル同期時の排他制御をどのコンポーネントで実装するかを指定します。...
Redis
REmote DIctionary ServerRedis (レディス) は、メモリ上で動作する高速 Key-Value 型データストアです。キャッシュ・セッション管理・分散ロック・PubSub などの用途で...
メンテナンスモード
メンテナンスモードは Nextcloud を一時的に書き込み禁止にして、サーバー側のメンテナンス作業を安全に実行するための機能です。occ maintenanc...
oc_file_locksを、実際に活用する
用語の意味は分かった。次は実装。EXBANK の無料診断で、貴社で具体的にどう活用できるかをご提案します。
営業時間 平日10-18時 / 通常24時間以内に返信
