Vitsliputsli, ну легко проверить - мне лень что то писать, по этому сделаем проще:
делаем дамп с балк инсертом
mysqldump -u root data > /tmp/bulk.sql
делаем дамп с автокоммитом и кучей insert
mysqldump --extended-insert=FALSE -u root data > /tmp/no_bulk_no_commit.sql
делаем дамп без автокоммита и кучей insert
mysqldump --extended-insert=FALSE --no-autocommit -u root data > /tmp/no_bulk_commit.sql
ls -lah /tmp/ | grep sql
-rw-r--r-- 1 vagrant vagrant 2.8M May 12 07:41 bulk.sql
-rw-r--r-- 1 vagrant vagrant 3.9M May 12 07:39 no_bulk_commit.sql
-rw-r--r-- 1 vagrant vagrant 3.9M May 12 07:36 no_bulk_no_commit.sql
time mysql -u root temp < /tmp/bulk.sql
real 0m2.375s
user 0m0.035s
sys 0m0.008s
time mysql -u root temp < /tmp/no_bulk_no_commit.sql
real 1m11.508s
user 0m0.341s
sys 0m0.586s
time mysql -u root temp < /tmp/no_bulk_commit.sql
real 1m0.423s
user 0m0.427s
sys 0m0.589s
Vitsliputsli, потому что по умолчанию в mysql innodb autocommit = 1 и после каждого insert идет commit, а это накладные расходы, и оборачивание в одну транзакцию эти расходы снижает.
Ипатьев, а что тут удивительного? такие вещи на откуп программистов. я вполне могу хотеть что бы у меня данные вставлялись не в рамках одной транзакции.
Max Logic,
З.Ы. Как вариант на будущее в таких случаях можете вообще рассмотреть простую вещь, если у нас пользователь авторизован - заголовок Expire не пихаем, если пользователь не авторизован - заголовок Expire вперед.
Вопрос какой то странный. Обычно надо реализовать какой то функционал, а вы просто хотите вставить код? А его дальнейшая работоспособность обязательна?
Max Logic, конечно. по этому смело в миддлеваре VerifyCsrfToken прописываете исключения, тогда и вы и сеошник радостно бежите к своему счастью. И в дальнейшем собственно подход такой же - что форма меняет, случится что нибудь страшное если ее вызовут скрыто от пользователя и со своими данными - ну тогда csrf обязателен, а если нет, то если не мешает - нехай будет, мешает - выпиливаем
Max Logic, а можете мне прикинуть вариант что произойдет если злоумышленик выполнит атаку на форму авторизации? Как он это сделает и что случится? Ну или на форму добавления в корзину?
Max Logic, Видите ли - csrf это не какое то магическое заклинание, и вообщем то предназначен для защиты изменения каких либо ЧУВСТВИТЕЛЬНЫХ данных. Использовать csrf для какой нибудь фильтрации на сайте - бесмысленно. Так как у вас идет борьба за то что доступно поисковику, а следовательно вряд ли является чувствительными данными - если уж форма доступна поисковику, возможно там csrf нахрен не вперся.
Вопрос поставлен собственно не правильно - браузер который уткнулся в то что страница не обновлялась просто ее не скачивает а берет из кеша - и что там произошло с токеном ему просто плевать.
lexstile, конечно. вы ж передаете уже id с фронта. В чем проблема к этому добавить цену? Пример запроса который приблизительно должен получиться я вам привел. Только придется потрахать мозги QueryBuilder'у и проверить не свихнется ли оптимизатор мускула.
делаем дамп с балк инсертом
mysqldump -u root data > /tmp/bulk.sql
делаем дамп с автокоммитом и кучей insert
mysqldump --extended-insert=FALSE -u root data > /tmp/no_bulk_no_commit.sql
делаем дамп без автокоммита и кучей insert
mysqldump --extended-insert=FALSE --no-autocommit -u root data > /tmp/no_bulk_commit.sql
у меня выигрыш в 11 секунд.