مشکل سرعت آپلود وب سرور nginx
سلام
یه سرور اختصاصی ویندوز 2008 هستش با پورت یک گیگ که سرعت پورتش حدود 80 مگابایت هست
حالا با nginx وب سرور داده شده و لینک برای دانلود قرار داده شده توی سایت
ولی سرعت دانلود کل کاربرا روی هم از 8 مگابیت در ثانیه بالاتر نمیره
و وقتی می خوای دانلود کنی ارور میده
در صورتی که وقتی پورت 80 رو آزاد می کنم و ای ای اس رو فعال می کنم سرعت آپلود از سرور تا 40 مگابیت هم می رسه
یعنی کاربرا تا 40 مگابیت دانلود میکنند.
حالا سوال اینجاست که چطوری می تونم این محدودیت رو از روی nginx وردارم؟
ممنون
پاسخ : مشکل سرعت آپلود وب سرور nginx
nginx همچین محدودیتی نداره
مگه این که خودتون محدودیت کانکشن و سرعت تعیین کرده باشید
این مورد را هم در نظر بگیرید درخواست های دانلود به صورت رندوم هستند
ممکن هست هاردتون کم بیاره
i/o هارد را چک کنید
پاسخ : مشکل سرعت آپلود وب سرور nginx
دوست عزیز
دستور زیر رو در سروری که nginx داره وارد نمایید:
لیستی از ماژول های Compile شده روی وب سرور nginx نمایش داده خواهد شد
سپس ببینید آیا از مازول مثل:
limit_rate
یا همچنین:
HttpCoreModule
استفاده شده است یا خیر . اگر استفاده شده باشه باعث ایجاد limit connection و Speed limit خواهد شد
:53:
پاسخ : مشکل سرعت آپلود وب سرور nginx
نقل قول:
نوشته اصلی توسط
nginxweb
دوست عزیز
دستور زیر رو در سروری که nginx داره وارد نمایید:
لیستی از ماژول های Compile شده روی وب سرور nginx نمایش داده خواهد شد
سپس ببینید آیا از مازول مثل:
limit_rate
یا همچنین:
HttpCoreModule
استفاده شده است یا خیر . اگر استفاده شده باشه باعث ایجاد limit connection و Speed limit خواهد شد
:53:
limit_rate جز ماژول های استاندارد هست و به صورت دیفالت نصب هست
تا وقتی هم مقدارش تو کانفیگ تعریف نشده باشه تاثیری در سرعت نداره
پاسخ : مشکل سرعت آپلود وب سرور nginx
ممنون از دوستان
این کد رو کجا باید بزنم
مطمئن هستم از هارد نیست چون وقتی از ای ای اس استفاده میشه سرعت خیلی بالاتر از این هستش
با تغییر تعداد کانکشن هم تغییری توی سرعت لحاظ نمیشه. تعداد کانکشن رو به 500 هزار تا هم بردم اما سرعت همونه و همون ارور رو میده
پاسخ : مشکل سرعت آپلود وب سرور nginx
الان تست کردم متوجه شدم که وقتی worker_processes روی دو یا سه می کنم
و وب سرور رو ران می کنم کار نمی کنه و وقتی دوباره یک میزارم شروع می کنه به کار
مشکل از چی هستش؟؟
پاسخ : مشکل سرعت آپلود وب سرور nginx
خوب من خیلی گشتم و متوجه شدم که تعداد هر کانکشن در هر ورکر نمی تونه بیشتر از 1000 باشه و هر چقدر هم تغییر بدیم بیشتر نمیشه مگه اینکه ورکر رو بیشتر کنیم
و وقتی هم که تعداد ورکر رو بیشتر می کنیم سیستم ران نمیشه. متاسفانه
خوب حالا هیچ کدوم از دوستان نمی تونند کمک کنند که تعداد ورکر رو بیشتر کنم؟؟؟؟
پاسخ : مشکل سرعت آپلود وب سرور nginx
نقل قول:
نوشته اصلی توسط
MUV
خوب من خیلی گشتم و متوجه شدم که تعداد هر کانکشن در هر ورکر نمی تونه بیشتر از 1000 باشه و هر چقدر هم تغییر بدیم بیشتر نمیشه مگه اینکه ورکر رو بیشتر کنیم
و وقتی هم که تعداد ورکر رو بیشتر می کنیم سیستم ران نمیشه. متاسفانه
خوب حالا هیچ کدوم از دوستان نمی تونند کمک کنند که تعداد ورکر رو بیشتر کنم؟؟؟؟
خروجی های دستورات زیر رو بده تا ببینم مشکل از چیه..
اول خروجی این سه تا دستور رو بده
کد:
cat /proc/sys/fs/file-max
بعد هم خروجی تک تک این دستورات
کد:
cat /proc/sys/net/ipv4/tcp_mem
کد:
cat /proc/sys/net/core/rmem_default
کد:
cat /proc/sys/net/core/rmem_max
کد:
cat /proc/sys/net/core/wmem_default
کد:
cat /proc/sys/net/core/wmem_max
کد:
cat /proc/sys/net/core/optmem_max
پاسخ : مشکل سرعت آپلود وب سرور nginx
نقل قول:
نوشته اصلی توسط
ali_fattahi
خروجی های دستورات زیر رو بده تا ببینم مشکل از چیه..
اول خروجی این سه تا دستور رو بده
کد:
cat /proc/sys/fs/file-max
بعد هم خروجی تک تک این دستورات
کد:
cat /proc/sys/net/ipv4/tcp_mem
کد:
cat /proc/sys/net/core/rmem_default
کد:
cat /proc/sys/net/core/rmem_max
کد:
cat /proc/sys/net/core/wmem_default
کد:
cat /proc/sys/net/core/wmem_max
کد:
cat /proc/sys/net/core/optmem_max
خوب این وب سرور رو روی ویندوز ران کردم
این کدها که دادید مگه مال لینوکس نیست؟؟
پاسخ : مشکل سرعت آپلود وب سرور nginx
نقل قول:
نوشته اصلی توسط
MUV
خوب این وب سرور رو روی ویندوز ران کردم
این کدها که دادید مگه مال لینوکس نیست؟؟
اها، حواسم نبود ویندوزی هستید ، یه همچین مشکلی یکی دیگه هم تو ویندوز داشت بعد از کلی بررسی فهمیدیم از خود ویندوز هست که محدودیت ایجاد میکنه و راه حلی هم واسش پیدا نکردیم
پاسخ : مشکل سرعت آپلود وب سرور nginx
آره متاسفانه تنها راه حلی که به نظرم رسید این بود که روی سرور اصلی چند تا وی پی اس ایجاد کنیم و روی هر کدوم مقداری از فایلها رو قرار بدیم تا روی هر وی پی اس 1000 کانکشن داشته باشیم
البته من توی انجمن اصلی دیدم که میشه تعداد worker رو زیاد کرد و به تعداد هر worker مثلا 1000 کانکشن لیمیت داد. اما هرکاری کردم نشد.
تا worker رو از یک به هر عددی عوض می کنم ران میشه اما لینکها کار نمیکنند.
مثلا این جا بحث شده: nginx on windows keeps hanging
توی سایت خودش هم اینجوری زده:
- Although several workers can be started, only one of them actually does any work.
- A worker can handle no more than 1024 simultaneous connections.
- The cache and other modules which require shared memory support do not work on Windows Vista and later versions due to address space layout randomization being enabled in these Windows versions.
پاسخ : مشکل سرعت آپلود وب سرور nginx
نقل قول:
نوشته اصلی توسط
MUV
آره متاسفانه تنها راه حلی که به نظرم رسید این بود که روی سرور اصلی چند تا وی پی اس ایجاد کنیم و روی هر کدوم مقداری از فایلها رو قرار بدیم تا روی هر وی پی اس 1000 کانکشن داشته باشیم
البته من توی انجمن اصلی دیدم که میشه تعداد worker رو زیاد کرد و به تعداد هر worker مثلا 1000 کانکشن لیمیت داد. اما هرکاری کردم نشد.
تا worker رو از یک به هر عددی عوض می کنم ران میشه اما لینکها کار نمیکنند.
مثلا این جا بحث شده:
nginx on windows keeps hanging
توی سایت خودش هم اینجوری زده:
- Although several workers can be started, only one of them actually does any work.
- A worker can handle no more than 1024 simultaneous connections.
- The cache and other modules which require shared memory support do not work on Windows Vista and later versions due to address space layout randomization being enabled in these Windows versions.
شاید به خاطر ورژن انجینکس شما هم باشه . ولی winginx رو هم یه تست بزنید