Integrate locking by database in t3lib_lock
In environments with more than one webserver, locking on using the filesystem might not be a good idea since synchronisation of those information is too slow. A possibility is to use the database storage for locking.
This issue is not about database transactions but more about storing a locking semaphore in the database.
A new locking mode besides simple, flock, semaphore and disable shall be integrated: <b>database</b>
(issue imported from #M8010)
#4 Updated by Oliver Hader over 11 years ago
The new patch creates a sys_lock table which holds these locks.
When the database hammers/polls if a lock is active, the information will come from the database cache until the lock is released or changed.
I see no other possibility to implement such a lock for a concurrent scenario.
#5 Updated by Ernesto Baschny almost 9 years ago
Sounds great, Olly. Any way to test or use this kind of locking?
Currently I only see the page generation using t3lib_lock in the core. It's type can be set using ['SYS']['lockingMode'], which defaults to 'simple'.
Maybe we can introduce the new DB based locking to the core and test it using that lock? And later on we can make use of it for other situations.