افزون بر تکنیکهایی که کارایی و سرعت تولید محتوا را زیاد میکنند، چند تکنیک بدون هزینه نیز وجود دارند که میتوانند سبب کمشدن زمان انتظار مشتری برای بارگزاری صفحه شوند.
محتوایی که توسط php تولید و به مرورگر ارسال میشود، پیش از ارسال به مرورگر در بستههایی با حجم مشخص قرار میگیرند و اگر حجم آن زیاد نباشد، معمولا پیش از پایان اسکریپت به مرورگر فرستاده نمیشوند.
یکی از سادهترین کارهایی که برای افزایش سرعت میتوان به انجام رساند، استفاده از دستور «flush» پس از پایان تگ «head» در HTML است. دستور flush در php باعث میشود محتوای تولیدشده تا کنون فورا برای مرورگر فرستاده شود. با توجه به اینکه معمولا بخش head حاوی پیوند به فایلهای دیگر مانند فایلهای css و اسکریپتها و ... است. ارسال فوری آن باعث میشود تا مرورگر دریافت این فایلها را زودتر آغاز کند و زمان انتظار برای دریافت محتوای صفحه به بهترین شکل ممکن مورد استفاده قرار گیرد.
برای پیادهسازی این تکنیک، قطعه کد زیر را درست بعد از تگ پایان «head» فراخوانی کنید
<?php flush(); ?> |
نکتهی سادهی بعدی، قرار دادن تگهای «style» در بخش «head» است ( مگر در زمانی که این کار ممکن نباشد ). این کار سبب میشود، کارایی تکنیک قبلی به بیشینهی خود برسد و علاوه بر آن، هنگامی که مرورگر خصوصیات css عناصر را از پیش بداند، محاسبات سنگین و زمانبر تعیین حالت نمایش به حداقل خود میرسد.
برخلاف تگهای Style، بهتر است تا تگهای Script را در انتهای فایل خود قرار دهید( مگر زمانی که این کار ممکن نباشد ). علت این امر خاصیت ویژهی اسکریپتها است. مطابق استانداردهای موجود، تا زمانی که یک اسکریپت بارگزاری نشود، دریافت فایلهای دیگر متوقف میماند و ادامهی دریافت و پردازش آنها وابسته به پردازش فایل اسکریپت میشود.
بهینهسازی بعدی استفاده از کمترین تعداد فایلهای خارجی است. به این معنی که تا جایی که امکان دارد، از فایلهای خارجی -مانند Styleها و Script- کمتری استفاده کنید. با یکی کردن محتوای این فایلها، تعداد درخواستهای http به حداقل میرسد و سرعت بارگزاری صفحهی شما زیادتر میشود.
از قرار دادن قالببندیهای درونخطی خودداری کنید و تمام قالببندیها را به فایلهای css منتقل کنید. اینکار علاوه بر حذف موارد تکراری، سبب کاهش حجم html اصلی و افزودهشدن قابلیت Caching به قالببندیها میشود.
با تشکر از مطلب مفیدی که گذاشتی...
من هنوز تست نکردم ولی فکر میکنم منطقی هستند.
ممنون، واقعا جالب و بقول دوستمون منطقی بودن.
ممنون
عالی بود
عالی بود ممنون
من اونو توی سایتم اجرا کردم می تونید نتیجه اونو ببینید
freecenter
سلام امتحان کردم فکر کنم که نتیجه داد امامطمئن نیستم لطفا از وبلاگم دیدن کنید و اگر عمل کرد اطلاع دهید
ولی خوب انگار عمل کرده
مهدی یارتون باشه
عالی بود
منتظر مطالب جدیدتر هستیم
مرسی
مثل همیشه عالی
سوالی از شما داشتم واقعا ممنون میشم راهنماییم کنید
در سایت زیر میخواستم بدونم چگونه نحوه ی پیمایش بین صفحات را اینگونه قرار داده اند؟
http://www.lianmusic.com/
ممنون از وقتی که گذاشتید
سلام
فرصت نکردم کل سورس سایت رو نگاه کنم
اسکریپتهایی که در صفحه استفاده شده، jquery و افزونهی easing هست
به نظر میرسه به دلیل منظم نبودن کار، اسکریپت دست نویس باشد
با توجه به اینکه این صفحه به نظرات وبلاگ اختصاص دارد. لطفا برای گفتگوهای دیگر از ایمیل استفاده کنید
با تشکر