Подрядчик сдал «ускорили, поставили память». Вечером гость собирает три позиции, жмёт «оформить» — корзина пустая. В студии человек уже вписал имя на первом шаге записи, на втором поля пустые. Заявка ещё не визит. Он уверен, что сайт стёр данные. Владелец открывает старую памятку про гостя: сессия короткая, два имени, агент. Те имена не трогали. Трогали ускорение.
Гостевая корзина, которая пустеет сама по жизни сайта, — соседняя поломка: четверть часа, www, кеш с чужим составом, агент-дворник. Здесь пусто началось в день разгона. Страх вернуть «как было медленно». Жадность оставить быструю память в отчёте. Стыд сказать, что сессии положили в тот же Memcache, что копии страниц. Отсюда касса без состава при зелёном балле.
Почему после разгона винят гостя, а не память
Пустая корзина выглядит как старая жалоба. Привычно чинить время сессии и зеркало. Время не меняли. Зеркало не меняли. Поменяли, где лежит блокнот. Выкладка «почистить кеш» после ускорения делает пустоту у всех, кто выбирал час. В отчёте скорость. В чате «сайт выкинул товар». Курс с многошаговой анкетой и кафе с заказом стола после того же разгона теряют черновик на втором экране. Ищут UX. Нужен обработчик сессий.
Два фронта «для скорости» без общей памяти: чётный запрос с составом, нечётный без. Похоже на www. www не трогали. Трогали второй сервер.
Что ускорение делает с блокнотом гостя
Сессия — блокнот: корзина, город, черновик формы, капча. Его держали файлом. В чек-листе скорости пишут «сессии в память». Память быстрее и забывает. Сброс кеша страниц бьёт тот же инстанс — блокноты уезжают вместе с HTML. Срок ключа как у копии раздела: пятнадцать минут. Композит (сохранённая копия страницы) рисует шапку живым куском из этого блокнота: каркас приехал, состав пуст. Человек видит быстрый сайт без своих пар.
- Пусто началось в день смены хранилища сессий, не «всегда так у гостей».
- Сброс кеша в админке не должен убивать корзины живых людей.
- Срок блокнота длиннее пути «каталог → касса» и «услуга → подтверждение».
- Два сервера после разгона смотрят в один блокнот или липнут к одному узлу.
Тестовый магазин в той же памяти, что бой: сбросили тест — бой пустой. Это не агент брошенных корзин. Агент хотя бы пишет в журнале. Память молчит.
Что откатить и развести на этой неделе
- Записать дату ускорения и куда перенесли сессии. Если пусто началось в этот день — не крутят время гостя и не склеивают www первым.
- Развести ключи: кеш страниц и блокноты гостей. Сброс копий не делает flush по сессиям.
- Гостем собрать три позиции и черновик заявки. Сбросить кеш страниц на копии. Состав и поля должны остаться.
- Срок сессии — часы пути покупки и записи, не минуты копии раздела.
- Если два фронта — общая память или липкая сессия. Два окна, два состава, без исчезновения на обновлении.
- Не возвращают сессии на переполненный диск «назло ускорению», пока ключи не развели: получите старую боль диска плюс путаницу.
Чем пустую корзину после ускорения не объясняют
Не винят «пользователи разучились». Не лечат обязательной регистрацией: это маскировка стёртого блокнота. Не увеличивают OPcache: разобранные файлы PHP корзину не держат. Записывают хранилище, срок, что делает сброс кеша, дату разгона. Останавливаются, когда выкладка и уборка копий оставляют три позиции и имя на форме.
Короткая сессия гостя и два имени были до ускорения или нет — смотрят журнал жалоб. Если жалобы пачкой в день памяти, чинят память. Рекламу без живой корзины после разгона не держат: вы сами выбросили выбор человека и назвали это скоростью.
Назад в раздел
