من توی پروژه کاربر که لاگین میکنه باید به ازای هر کاربر از دو جدول دیگه اطلاعاتی رو بخونم که توی صفحه نمایش بدم ، بنظرتون هنگام لاگین این اطلاعات رو یک بار بخونم و در سیشن بریزم بهینه تر هست یا به ازای هر درخواستی که اطلاعات رو نیاز داره سلکت بگیرم از دیتابیس ، (امکان داره اطلاعت کاربری توسط مدیر تغییر کنه ، نوع دسترسی ها (rbac پیاده سازی نشده)) اگه داخل سیشن مقادیر قبلی باشه به روز نشده نصبت به فیلد های جدول ، راه بهینه کدوم است
اگه تعداد درخواستها زیاده میتونید از سشن استفاده کنید. میشه از کشکردن کوئری هم کمک بگیرین. بستگی به شرایط پروژه شما داره که کدوم راه بهتره.
اگه هنگامی که اطلاعات در سیشن هست مدیر اطلاعات یکی از اون دو جدول رو که مربوط به کاربر جاری هست تغییر بده ، کاربر داره با مقدار های قبلی سیشن کار میکنه ، به عنوان مثال مدیر کاربر رو غیر فعال کنه.
نقل قول:نکته: وقتی مستقیماً بعد از یک پست میخواین جواب بدین نقل قول نکنید. دیتابیس بیهوده سنگین میشه.
درمورد این موضوع هم همونطور که گفتم بستگی به شرایط مسئله شما داره و با این موردی که گفتین، بنظرم هردفعه جداگانه کوئری بزنید منطقیتره. نگران کوئریهای زیاد نباشین. الان صفحه اصلی همین انجمن بیش از 50 کوئری میزنه تا نمایش داده بشه. وقتی PHP و MySQL روی یک سرور هستن، این کار سربار زیادی نمیگذاره.