PDA

View Full Version : بخش هایی از سایت که زیاد تغییر نمی کنند



nazaninam
شنبه 17 تیر 1385, 11:15 صبح
سلام من مثلا یک منو دارم که کاربر خودش اونو داخل مدیریت پر میکنه
این منو از داخل دیتابیس خونده میشه و فکر کنم هر 1 ماه یکبار هم عوضش نکنه
برای اینکه این منو سریع لود شه این فکر ها به ذهنم رسید و چند تا مشکل دارم:
1- از یک فایل xml استفاده کنم
2- از کش استفاده کنم : ولی آیا این درست که مثلا cache duration رو یک عدد خیلی بزرگ مثلا 150000 که مثلا میشه 50 ساعت بدم؟

مهدی کرامتی
شنبه 17 تیر 1385, 12:46 عصر
قرار دادن منوها در یک فایل XML بسیار منطقی تره.

nazaninam
شنبه 17 تیر 1385, 13:07 عصر
جناب مدیر میشه درمورد کش هم توضیح بدید چون هنوز باسم یک علامت سوال
آیا منطقیه که برای outputcache چنین عدد بزرگی در نظر گرفته شود؟ با تشکر

msakbari
شنبه 17 تیر 1385, 17:56 عصر
با سلام .
من یه توصیه به شما دارم . جناب Nazaninam
من قبلا یه همچین کار مشابه با کار شما انجام دادم . من برای این کار مثل شما نیاز داشتم که هر بار یکسری کد جاوا اسکریپت رو با عناصر بانک مخلوط کنم و اونها رو در صفحه رایت کنم .
من در زمان اجرا این کار رو نمی کنم . بلکه محتویات این منو رو در بخش مدیریت توی یه فایل .JS
می گذارم و فقط اونو لود می کنم .
البته شاید با منویی که شما ساختید نشه این کار رو انجام داد .
من از منوی سایت www.milonic.com استفاده کردم و اونو داینامیک کردم .(منوی کاملا قدرتمندی هستش)
الیته توی سایت نسخه ی اصلی اون هست اگه خواستید من نسخه ی FULL اونو دارم .

موفق باشید .

Behrouz_Rad
شنبه 17 تیر 1385, 19:36 عصر
جناب مدیر میشه درمورد کش هم توضیح بدید چون هنوز باسم یک علامت سوال
آیا منطقیه که برای outputcache چنین عدد بزرگی در نظر گرفته شود؟
جواب برخی سوالات آنچنان واضح هستند که گاهی اوقات نمیشه هیچ توضیحی پیرامونشون داد.
تنها برای تایید پاسخ جناب کرامتی، Reply کردم!

موفق باشید.

nazaninam
شنبه 17 تیر 1385, 19:44 عصر
من از بحث منو خارج شدم
یکبار دیگه درمورد کش سوال کرده بودم جواب درستی نگرفتم
کلا برای سایت میزان کش تا چه حدی به سرور فشار نمیاره ...؟

Behrouz_Rad
شنبه 17 تیر 1385, 20:51 عصر
این محدودیت، در ویندوز 2003 و توسط ادمین قابل تنظیم هست.
این مقدار یا به صورت کلی (برای تمامی Web Application ها) و یا به صورت منفرد می تونه تنظیم بشه.
در ویندوز 2003، در IIS 6.0، در پوشه ی Application Pools، بر روی Application Pool وب اپلیکیشن مورد نظر راست کلیک کرده و گزینه ی Properties رو انتخاب کنید.
گزینه ی (Maximum used memory (in megabytes را انتخاب کنید.
مقدار انتخابی نباید متجاوز از میزان حافظه ی فیزیکی سیستم (و نه حافظه ی مجازی) باشه.
به صورت کلی، بهترین مقداری که میشه انتخاب کرد، تخصیص 60 درصد حافظه ی فیزیکی هست.
به عنوان مثال، اگر سروری دارای 512 مگابایت رم باشه،تخصیص 312 مگابایت فضا به برنامه ها مناسب هست.
البته استثناهایی هم وجود داره.
مثلا برای 2 گیگابایت حافظه، مقدار 800 مگابایت مناسب هست اما برای 3 گیگابایت حافظه، تخصیص 1800 مگابایت مناسب هست.

در صورتی که برنامه ای بیش از حد مجاز از حافظه ی تخصیصی استفاده کنه، یا با خطا مواجه میشه و یا در عملکرد برنامه مشکل به وجود میاد.

موفق باشید.

nazaninam
شنبه 17 تیر 1385, 21:09 عصر
ایول مثل همیشه کامل
خوب من چه ارتباطی بین زمان و حجم تخصی پیدا کنم ؟

Behrouz_Rad
شنبه 17 تیر 1385, 21:33 عصر
نمیشه ارتباط قاطعی پیدا کرد!
فوقش اینه که:

در صورتی که برنامه ای بیش از حد مجاز از حافظه ی تخصیصی استفاده کنه، یا با خطا مواجه میشه و یا در عملکرد برنامه مشکل به وجود میاد.

nazaninam
شنبه 17 تیر 1385, 21:42 عصر
ممنون بهروز جان

Behrouz_Rad
شنبه 17 تیر 1385, 21:43 عصر
تکمیلی:
در زمان محدودیتی وجود نداره تا زمانی که برای سرور مشکلی پیش بیاد. (Downing Server)
البته معمولا بیشترین زمانی که آیتمی در Cache نگهداری میشه، 24 ساعت هست.
دلیلی برای نگهداشتن بیشتر وجود نداره!
فلسفه ی وجودی Cache به عنوان یک حافظه ی موقت است نه تقریبا دائم!

خواهش می کنم.

موفق باشید.