У меня есть страница, которая выполняет следующие операции:
- Выполняет запрос в БД (точнее, выберите u.user_uid, ut.user_metatada из пользователей u, user_tag ut, где u.uid = ut.uid. Один пользователь может иметь одну или несколько метаданных)
- Генерирует массив данных на основе результата запроса
- Выполняет некоторые сложные операции с этими массивами (подробнее об этой операции читайте в этом посте.). Возвращает окончательный результат в виде массива. Этот массив является одномерным массивом, содержащим user_uids.
- Выполняет другой запрос и получает user_fullname, user_photo всех элементов user_uid
- Печатает результат запроса на странице.
Когда пользователь перезагрузит страницу, эти 5 операций будут выполняться с самого начала. Чтобы избежать выполнения всех этих 5 операций каждый раз, когда пользователь перезагружает страницу, мы можем сохранить конечный результат (операция № 5) в сеансе. Таким образом, мы можем сказать следующее:
If session is not set
Perform those 5 operations
else
Print session values
Это уменьшит нагрузку на процессор, но вместо этого потребуется немного (я не знаю, сколько) памяти, чтобы сохранить информацию в сеансах. Но кто-то утверждает, что лучше загружать процессор, а не память.
Вопрос: Что вы рекомендуете мне делать? Использовать сеансы или нет (в моем случае)? Есть ли еще лучшие решения?