Я разрабатываю приложение php / mysql, которое обрабатывает несколько одновременных пользователей. Я думаю о лучшем подходе к блокировке / предупреждению записей, которые в настоящее время просматриваются / редактируются.
Сценарий, которого следует избегать, состоит в том, что два пользователя просматривают запись: один вносит изменения, а другой - аналогичным образом, и существует вероятность того, что одно изменение может перезаписать предыдущее.
В последних версиях WordPress они используют какой-то метод для обнаружения этого, но он не кажется полностью надежным - часто возвращает ложные срабатывания, по крайней мере, по моему опыту.
Я предполагаю, что должна существовать какая-то форма ajax, чтобы «пинговать» приложение и дать ему знать, что запись все еще просматривается / редактируется (в противном случае пользователь может просто закрыть окно своего браузера, а затем узнать, как приложение узнает тот).
Другое решение, которое я мог видеть, - это проверить последнее обновленное время, когда запись отправляется на обновление, чтобы узнать, обновлялась ли она тем временем в другом месте, - а затем предложить пользователю выбрать для продолжения или отмены собственных изменений.
Возможно, я ошибаюсь с точки зрения решения - какое у людей опыт реализации этого (что должно быть довольно распространенного) требования?