সার্ভারটি হ'ল উবুন্টু 13.04 (জিএনইউ / লিনাক্স 3.9.3-x86_64-লিনোড 33 x86_64)।
এনজিনেক্স হ'ল এনজিনেক্স / ১.২..6।
আমি এখন বেশ কয়েক ঘন্টা ধরে এটি নিয়ে কাজ করছি, তাই আমি যা পাচ্ছি তা এখানে এবং আমি যা করেছি তা এখানে।
tail -f /usr/local/nginx/logs/error.log
2013/06/18 21:35:03 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files)
2013/06/18 21:35:05 [crit] 3426#0: accept4() failed (24: Too many open files)
Nginx চলমান:
geuis@localhost:~$ ps aux | grep nginx
root 3422 0.0 0.0 39292 380 ? Ss 21:30 0:00 nginx: master process /usr/local/nginx/sbin/nginx
nobody 3423 3.7 18.8 238128 190848 ? S 21:30 0:13 nginx: worker process
nobody 3424 3.8 19.0 236972 192336 ? S 21:30 0:13 nginx: worker process
nobody 3426 3.6 19.0 235492 192192 ? S 21:30 0:13 nginx: worker process
nobody 3427 3.7 19.0 236228 192432 ? S 21:30 0:13 nginx: worker process
nobody 3428 0.0 0.0 39444 468 ? S 21:30 0:00 nginx: cache manager process
/Etc/security/limits.conf (ফাইলের শেষে থেকে সেটিংস) নরম / শক্ত সীমাবদ্ধকরণ
root soft nofile 65536
root hard nofile 65536
www-data soft nofile 65536
www-data hard nofile 65536
nobody soft nofile 65536
nobody hard nofile 65536
সর্বোচ্চ ফাইল পড়া
cat /proc/sys/fs/file-max
500000
এবং /etc/pam.d/common-session এ:
session required pam_limits.so
এটি যুক্ত হয়েছে এবং সার্ভারটি ভাল পরিমাপের জন্য পুনরায় শুরু হয়েছে, এনজিনেক্সের জন্য আমি প্যারেন্ট প্রসেসের পিআইডি পেয়ে নরম / শক্ত সীমাটি গণনা করি এবং:
cat /proc/<PID>/limits
Limit Soft Limit Hard Limit Units
Max open files 1024 4096 files
অভিভাবক প্রক্রিয়াটি 'রুট' হিসাবে চালিত হয় এবং 4 জন শ্রমিক 'কেউ নয়' হিসাবে চালায়।
root 2765 0.0 0.0 39292 388 ? Ss 00:03 0:00 nginx: master process /usr/local/nginx/sbin/nginx
nobody 2766 3.3 17.8 235336 180564 ? S 00:03 0:21 nginx: worker process
nobody 2767 3.3 17.9 235432 181776 ? S 00:03 0:21 nginx: worker process
nobody 2769 3.4 17.9 236096 181524 ? S 00:03 0:21 nginx: worker process
nobody 2770 3.3 18.3 235288 185456 ? S 00:03 0:21 nginx: worker process
nobody 2771 0.0 0.0 39444 684 ? S 00:03 0:00 nginx: cache manager process
আমি কীভাবে করব এবং গুগল থেকে পেতে সক্ষম হয়েছি সে সম্পর্কে আমি চেষ্টা করেছি। Nginx বাড়ানোর জন্য আমি ফাইলের সীমাটি পেতে পারি না ।
সহায়তার প্রয়োজন?
worker_rlimit_nofile
uWSGI সেটিংস পরিবর্তন করেন এবং সিস্টেম সীমাটি না (যা আমার জন্য কাজ করেছিল), আপনি এটি মাধ্যমে যাচাই করতে পারবেন নাulimit
। পরিবর্তে, আপনি সরাসরি তাকান উচিত/proc/<pid of worker>/limits
।