mirror of
https://github.com/nextcloud/documentation.git
synced 2026-01-02 17:59:36 +07:00
update transactional file locking for 8.2+
This commit is contained in:
@@ -1,19 +0,0 @@
|
||||
Using the Files Locking App
|
||||
---------------------------
|
||||
|
||||
The Files Locking application enables ownCloud to lock files while reading or
|
||||
writing to and from backend storage. The purpose of the app is to avoid file
|
||||
corruption during normal operation. Operating at a very low level in ownCloud,
|
||||
this application requests and respects file system locks. For example, when
|
||||
ownCloud is writing an uploaded file to the server, ownCloud requests a write
|
||||
lock. If the underlying storage supports locking, ownCloud will request and
|
||||
maintain an exclusive write lock for the duration of this write operation. When
|
||||
completed, ownCloud will then release the lock through the filesystem. If the
|
||||
file system does not support locking, there is no need to enable this
|
||||
application as any lock requested by ownCloud will not be honored in the
|
||||
underlying filesystem.
|
||||
|
||||
The Files Locking app has no configuration options; all you need to do is
|
||||
enable or disable it on your Apps page.
|
||||
|
||||
.. figure:: ../images/files_locking_app.png
|
||||
@@ -2,13 +2,8 @@
|
||||
Transactional File Locking
|
||||
==========================
|
||||
|
||||
ownCloud's new transactional file locking mechanism operates differently than
|
||||
the old File Locking application, and will eventually replace it. The purpose
|
||||
of this mechanism is to avoid file corruption during normal operation. If you
|
||||
elect to use the new file locking mechanism make sure you disable the File
|
||||
Locking app.
|
||||
|
||||
The new file locking mechanism has these capabilities:
|
||||
ownCloud's Transactional File Locking mechanism locks files to avoid
|
||||
file corruption during normal operation. It performs these functions:
|
||||
|
||||
* Operates at a higher level than the filesystem, so you don't need to use a
|
||||
filesystem that supports locking
|
||||
@@ -21,11 +16,24 @@ The new file locking mechanism has these capabilities:
|
||||
* Manages locks correctly on external storage mounts
|
||||
* Manages encrypted files correctly
|
||||
|
||||
You must install the Redis server and corresponding PHP module for the new file
|
||||
locking to work. (See :doc:`../configuration_server/caching_configuration`.)
|
||||
.. note:: Transactional file locking is in core, and replaces the old File
|
||||
Locking app. The File Locking app has been removed from ownCloud in version
|
||||
8.2.1. If your ownCloud server still has the File Locking app, you must
|
||||
visit your Apps page to verify that it is disabled; the File Locking app and
|
||||
Transactional File Locking cannot both operate at the same time.
|
||||
|
||||
When you see the warning on your ownCloud admin page "Transactional file locking
|
||||
is using the database as locking backend, for best performance it's advised to
|
||||
configure a memcache for locking", you are not required to use a memcache. File
|
||||
locking is enabled by default, using the database locking backend. This
|
||||
places a significant load on your database. Using ``memcache.locking`` relieves
|
||||
the database load and improves performance. Admins of ownCloud servers with
|
||||
heavy workloads should install a memcache. (See
|
||||
:doc:`../configuration_server/caching_configuration`.)
|
||||
|
||||
After installing Redis you must enter a configuration in your ``config.php``
|
||||
file like this example::
|
||||
You must install the Redis server and corresponding PHP module for the new file
|
||||
locking to work. After installing Redis you must enter a configuration in your
|
||||
``config.php`` file like this example::
|
||||
|
||||
'filelocking.enabled' => 'true',
|
||||
'memcache.locking' => '\OC\Memcache\Redis',
|
||||
@@ -39,7 +47,7 @@ file like this example::
|
||||
.. note:: For enhanced security it is recommended to configure Redis to require
|
||||
a password. See http://redis.io/topics/security for more information.
|
||||
|
||||
If you want to connect to Redis configured to listen on an unix socket (which is
|
||||
If you want to configure Redis to listen on an Unix socket (which is
|
||||
recommended if Redis is running on the same system as ownCloud) use this example
|
||||
``config.php`` configuration::
|
||||
|
||||
@@ -51,12 +59,6 @@ recommended if Redis is running on the same system as ownCloud) use this example
|
||||
'timeout' => 0.0,
|
||||
),
|
||||
|
||||
.. note:: Large installations especially benefit from setting
|
||||
``memcache.locking``. File locking is enabled by default, which uses the
|
||||
database locking backend. This places a significant load on your database.
|
||||
Using ``memcache.locking`` relieves the database load and improves
|
||||
performance.
|
||||
|
||||
See ``config.sample.php`` to see configuration examples for Redis, and for all
|
||||
supported memcaches.
|
||||
|
||||
|
||||
@@ -15,6 +15,5 @@ File Sharing and Management
|
||||
external_storage_configuration
|
||||
external_storage/auth_mechanisms
|
||||
encryption_configuration
|
||||
files_locking_enabling
|
||||
files_locking_transactional
|
||||
previews_configuration
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 83 KiB |
Reference in New Issue
Block a user