Вспышка свободна от условий гонки?
Я обнаружил, что область применения JSF 2.0 Flash реализована в Mojarra 2.x с помощью файла cookie. Похоже, что при переходе от представления A к представлению B с использованием Flash JSF отправляет ответ о перенаправлении. Это тот же самый ответ, который содержит заголовок set-cookie.
Поскольку файлы cookie являются глобальными для браузера, мне интересно, какова вероятность того, что это приведет к состоянию гонки. Поскольку cookie устанавливается во время ответа на перенаправление, я попытался выяснить, гарантирует ли спецификация HTTP каким-либо образом, что запрос, который браузер выдает в ответ, всегда первым использует этот cookie.
В целом, однако, все еще может быть проблема, если этот первый запрос каким-то образом застопорился (поскольку Интернет решил направить этот конкретный запрос на полпути по всему миру), а затем второй запрос, исходящий из другой вкладки, сначала приходит на сервер.
Разве cookie не является ужасной идеей для использования в качестве флеш-области между двумя страницами, или я что-то упускаю, и это совершенно безопасно?
1 ответ
Если есть ресурс, такой как файл или, cookie... наверняка, всегда будет шанс оказаться в состоянии гонки. Но вы должны выяснить, как этого избежать.
Я думаю, что ответом на его сохранение является EJB 3.0. Мы используем EJB 3.0, потому что безопасны для транзакций. Таким же образом мы передаем запрос в EJB для вставки данных в базу данных, вы можете взаимодействовать со своей областью флэш-памяти, используя EJB в качестве отрицателя. Таким образом, ваша транзакция будет защищена, а это означает, что вы будете свободны от гонок.