# توزیع سرعت بارگذاری در یک وب سایت PHP + MYSQL

- پیوند: https://negarnovin.com/%d8%aa%d9%88%d8%b2%db%8c%d8%b9-%d8%b3%d8%b1%d8%b9%d8%aa-%d8%a8%d8%a7%d8%b1%da%af%d8%b0%d8%a7%d8%b1%db%8c-%d8%af%d8%b1-%db%8c%da%a9-%d9%88%d8%a8-%d8%b3%d8%a7%db%8c%d8%aa-php-mysql/
- منتشرشده: 2021-11-02T10:58:57+00:00
- نویسنده: نگارنوین

# توزیع سرعت بارگذاری در یک وب سایت PHP + MYSQL

![توزیع سرعت بارگذاری در یک وب سایت PHP + MYSQL](https://negarnovin.com/wp-content/
uploads/2021/11/%D8%AA%D9%88%D8%B2%DB%8C%D8%B9-%D8%B3%D8%B1%D8%B9%D8%AA-%D8%A8%D8%
A7%D8%B1%DA%AF%D8%B0%D8%A7%D8%B1%DB%8C-%D8%AF%D8%B1-%DB%8C%DA%A9-%D9%88%D8%A8-%D8%
B3%D8%A7%DB%8C%D8%AA-PHP-MYSQL-300x108.jpg)

با شما هستیم با توزیع سرعت بارگذاری در یک وب سایت PHP + MYSQL در خدمت شما خواهیم
بود تا انتهای این مطلب ما را همراهی کنید. و یا با  محیط آن آشنا گردید به مطالعه 
این مطللب بپردازید.

بکاپ منظم روزانه هفتگی ماهانه در یک سرور مجزا از مزیت نگارنوین نسبت به سایرین می
باشد.

شرکت نگارنوین با همت بهترین کارشناس های قوی به شما کاربران و مشتریهای عزیز خدمت 
رسانی میکند تا هرچه آسان تر و بهتر به درخواست های خود برسید.

[کاموا](https://kamvataghavi.com/)

## نحوه بهینه سازی سرعت لود سایت های PHP + MYSQL

در این مقاله قصد داریم مرحله به مرحله روش های موثر در توزیع سرعت بارگذاری یک وب 
سایت PHP+MYSQL را توضیح دهیم.

با افزایش تعداد بازدید کنندگان یک وب سایت، فشار بر روی سرور نیز افزایش می یابد. 
این لود باعث افزایش بسیار بالای فشار بر روی سرور می شود؛ به خصوص اگر منابع موجود
کم بوده و CPU یا RAM کافی برای پاسخگویی به کلیه درخواست ها وجود نداشته باشد.

بار زیاد سرور می تواند زمان لود صفحه را به میزان قابل توجهی افزایش دهد؛ یا حتی یک
وب سایت را کاملاً از دسترس خارج کند. بنابراین بسیار مهم است که به صورت پیشگیرانه
به این مسئله پرداخته و لود اضافی را قبل از تبدیل شدن به یک مشکل واقعی، پخش و توزیع
کرد.

روش های مختلفی برای کاهش لود سرور وجود دارد که به بودجه شما بستگی دارد. در این مقاله
ما به اختصار درباره ی آن ها صحبت خواهیم کرد و از ارزان ترین گزینه ها شروع می کنیم.

## بهینه سازی سرور

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

اطمینان حاصل کنید که فقط برنامه های کاربردی مورد نیاز در حال اجرا هستند؛ زیرا هر
سرویس بلااستفاده فقط باعث مصرف CPU و حافظه ی شما می شود. همین مسئله در مورد پلاگین
ها نیز صادق است؛ مانند پلاگین های نصب شده در وردپرس.

بهینه سازی کدهای php کار دشواری است و احتمالاً به کمک یک برنامه نویس نیاز خواهید
داشت. اما چند مورد نیز وجود دارد که می توانید امتحان کنید. اگر وب سایت شما با ابزار
های caching مانند opcache ، memcache یا redis سازگار است؛ اطمینان حاصل کنید که این
موارد در سرورتان فعال شده اند، زیرا می توانند تفاوت قابل ملاحظه ای ایجاد کنند.

### استفاده از ابزارها و نسخه های جدید

هر ورژن جدید php سریع تر از ورژن های قبلی است و از منابع کمتری استفاده می کند. ورژن
php را به صورت مرحله به مرحله به روز رسانی کنید تا سایت شما به درستی لود شود. اگر
از یک پلتفرم مدرن CMS مانند وردپرس استفاده می کنید، می توانید مستقیماً آخرین ورژن
PHP را به روز رسانی کنید.

سرور پایگاه داده شما همچنین برای بهترین کارایی و استفاده از منابع باید از جدیدترین
نسخه MySQL یا MariaDB استفاده کند. یک ابزار تشخیص دهنده مانند MySQLTuner می تواند
برخی از ترفندهای مفید را برای فایل های تنظیمات شما پیشنهاد دهد.

یک ابزار عالی دیگر mytop است که به شما امکان می دهد که هنگام اجرای برنامه، Sql query
ها را دنبال و بررسی کنید. کندی هایی که باعث لود زیاد سرور می شوند را شناسایی کرده
و از برنامه نویس خود بخواهید که آ ن ها را اصلاح کند.

در نهایت یک سیستم Caching مؤثر می تواند بار روی سرور شما را بسیار کاهش داده و به
آن اجازه دهد همزمان به درخواست های بیشتر پاسخ دهد.

حتی caching فایل های استاتیک نیز بسیار مفید است؛ اما تا زمانی که تنظیمات درست باشد،
می توانید صفحات داینامیک را نیز در caching خود ذخیره کنید.

گزینه های caching زیادی در دسترس است. هر CMS چندین ابزار داخلی یا افزونه دارد. همچنین
می توانید Nginx را جهت ذخیره سازی برای Apache نصب کنید؛ یا از راه حل های دیگر مانند
Redis یا Varnish برای این منظور استفاده کنید.

## افزایش منابع سرور

اگر بتوانید منابع بیشتری را اضافه کنید، قطعاً باعث توزیع سرعت بارگذاری خواهد شد.
این کار در سرور اختصاصی کمی مشکل تر است. بدین منظور باید RAM بیشتری اضافه کنید؛ 
یا سرور خود را به ماشین مجازی بزرگتری منتقل کنید، که این کار به یک downtime نیاز
دارد.

با این حال، ارتقاء بر روی یک VPS آسان است و هر سرویس ابری یا مجازی نیز از آن پشتیبانی
می کند و صرفاً یک راه اندازی مجدد ساده سرور لازم است. سعی کنید تعداد Cpu Core ها
یا میزان حافظه سیستم را افزایش دهید. در صورت وجود امکان به روزرسانی، می توانید دیسک
های خود را به راه حل های ذخیره سازی سریع تر مانند SSD منتقل کنید.

## استفاده از Multi-Server ها

ارتقاء در یک سرور محدودیت های خود را دارد، ولی توزیع بار یا ترافیک در چندین سرور
در نهایت گزینه ای مؤثرتر است. بسته به نیاز وب سایت خود، می توانید منابع مورد نیاز
سایت خود را بین چندین ماشین مجازی با role های خاص تقسیم کنید.

برنامه های لینوکس روی ماشین های اختصاصی و هنگامی که منابع خود را با سایر سرویس ها
به اشتراک نمی گذارند، بهتر کار می کنند. ساده ترین روش راه اندازی Multi server برای
سایت php + MySQL آن است که از دو ماشین استفاده کنید. یکی از آن ها فقط به عنوان سرور
پایگاه داده استفاده می شود و دیگری به صورت ریموت فعالیت های وب سرور و php را مدیریت
می کند.

اگر این تنظیمات نتواند ترافیک سایت را کنترل کند؛ زمان آن است که یک راه حل پیچیده
تر را پیاده کنید. دو یا چند وب سرور می توانند لود را بین خود به اشتراک بگذارند. 
در این سناریو به ماشینی نیز احتیاج خواهید داشت که در میان آن ها به عنوان سرور توازن
بار load balancer عمل کند.

سرور توازن بار load balancer را می توان با Nginx یا HAProxy تنظیم کرد و نقش آن توزیع
درخواست ها به backend web server است که می تواند سریع تر پاسخ دهد. وب سرورها باید
document root یکسان را به اشتراک بگذارند، که می توان با تهیه خروجی از یک NFS mount
یا ایجاد یک ماشین جداگانه برای این منظور بدان دست یافت.

این راه حل دارای مزایای بسیاری است: با افزودن یا حذف وب سرورها به راحتی قابل ارتقاء
است و همچنین پایداری سیستم را افزایش می دهد؛ زیرا حتی اگر یکی از وب سرورها نیز خراب
شود، سایت کماکان آنلاین باقی می ماند.

همچنین اگر بودجه قابل توجهی دارید، می توانید یک راه حل کاملاً پایدار را با یک سرور
پشتیبان توازن بار (با استفاده از VRRP) و دو ماشین دیتابیس و به صورت master-master
پیاده سازی کنید.

 

 

[**سرور مجازی فنلاند**](https://negarnovin.com/%D8%B3%D8%B1%D9%88%D8%B1-%D9%85%D8%AC%D8%A7%D8%B2%DB%8C-%D9%81%D9%86%D9%84%D8%A7%D9%86%D8%AF/)

#### تبریک می گوییم مقاله توزیع سرعت بارگذاری در یک وب سایت PHP + MYSQL پایان رسید با مقالات بعدی ما را همراهی کنید.

شعار همیشگی: حفظ مشتریان فعلی ، دعوت از مشتریان قبلی ، جذب مشتریان آتی.

 

### 📌 خلاصه

توزیع سرعت بارگذاری در یک وب سایت PHP + MYSQL/گزینه های caching زیادی در دسترس است.
هر CMS چندین ابزار داخلی یا افزونه دارد.
