TL; DR: просто поместите его в базу данных.:)
Полная история: Это не должно быть ударом по производительности.Все (сам пользователь, имена получателей, множество вещей с вашей страницы) будет поступать из вашей базы данных.вас это не должно волновать.
Если у вас ДЕЙСТВИТЕЛЬНО большая база пользователей, и это становится проблемой, я уверен, что есть другие места, где можно выполнять обновления производительности (например, использовать memcached для всех видов вещей).Но если вы хотите «кэшировать» его, я думаю, вы могли бы получить его один раз при входе в систему и поместить в сеанс.Используйте это значение, чтобы вычесть и проверить и т. Д., А затем ТАКЖЕ проверить один раз в базе данных (в фоновом режиме), чтобы убедиться, что для этого пользователя не происходит ничего странного.Но это может быть асинхронно и не оказывает такого большого влияния на пользовательский опыт.
В редких случаях сеанс говорит, что все в порядке, но база данных говорит, что это не так, просто отправьте пользователю ошибку.С другой стороны, может потребоваться повторный вход пользователя.Но это будет редким или даже невозможным, если вы правильно его реализуете:)