ඕනෑවට වඩා සරල කිරීම: ඔබට පයිතන් ක්රියාත්මක කරන යමක් අවශ්ය නමුත් සියලු ආකාරයේ ඉල්ලීම් හැසිරවීමට පයිතන් හොඳම නොවේ.
[වියාචනය: මම ගුණිකෝන් සංවර්ධකයෙක්]
අඩු සරල කර ඇත: ඔබ භාවිතා කරන යෙදුම් සේවාදායකය කුමක් වුවත් (Gunicorn, mod_wsgi, mod_uwsgi, cherrypy) ඕනෑම ආකාරයක සුළු නොවන යෙදවීමකට ඔබගේ ජැන්ගෝ යෙදුම හැසිරවිය යුතු නොවන ඉල්ලීම් හසුරුවන උඩුමහලේ යමක් ඇත. එවැනි ඉල්ලීම්වල සුළු උදාහරණ වන්නේ ස්ථිතික වත්කම් (රූප / css / js) සේවය කිරීමයි.
මෙහි ප්රති results ලය වන්නේ සම්භාව්ය “තට්ටු තුනේ ගෘහ නිර්මාණ ශිල්පයේ” පළමු ස්ථර දෙකකට ය. එනම්, වෙබ් සේවාදායකය (ඔබේ නඩුවේ Nginx) රූප සහ ස්ථිතික සම්පත් සඳහා බොහෝ ඉල්ලීම් ඉටු කරනු ඇත. ගතිකව ජනනය කළ යුතු ඉල්ලීම් පසුව යෙදුම් සේවාදායකයට යවනු ලැබේ (ඔබේ උදාහරණයේ Gunicorn). (අනෙක් අතට, ස්ථර තුනෙන් තුනෙන් එකක් දත්ත සමුදායයි)
Ically තිහාසිකව ගත් කල, මෙම සෑම ස්ථරයක්ම වෙනම යන්ත්ර මත සත්කාරකත්වය සපයනු ඇත (තවද බොහෝ විට පළමු ස්ථර දෙකේ බහු යන්ත්ර තිබිය හැක, එනම්: 5 වෙබ් සේවාදායකයන් යෙදුම් සේවාදායකයන් දෙදෙනෙකුට ඉල්ලීම් යවන අතර එමඟින් එක් දත්ත සමුදායක් විමසයි).
නූතන යුගයේ දී අපට දැන් සියලු හැඩයන් සහ ප්රමාණයන්හි යෙදුම් තිබේ. සෑම සති අන්ත ව්යාපෘතියකටම හෝ කුඩා ව්යාපාරික වෙබ් අඩවියකටම බහු යන්ත්රවල අශ්වබල අවශ්ය නොවන අතර තනි පෙට්ටියක සතුටින් ක්රියාත්මක වේ. මෙය සත්කාරක විසඳුම් පෙළට නව ඇතුළත් කිරීම් ඇති කර තිබේ. සමහර විසඳුම් යෙදුම් සේවාදායකය වෙබ් සේවාදායකයට විවාහ කර දෙනු ඇත (Apache httpd + mod_wsgi, Nginx + mod_uwsgi, ආදිය). මෙම වෙබ් / යෙදුම් සේවාදායක සංයෝජනයන්ගෙන් එකක් ලෙස එකම යන්ත්රයක දත්ත සමුදාය සත්කාරකත්වය සැපයීම සාමාන්ය දෙයක් නොවේ.
දැන් ගුනිකෝන් සම්බන්ධයෙන් ගත් කල, අපි නිශ්චිත තීරණයක් ගත්තෙමු (රූබීගේ යුනිකෝන් වෙතින් පිටපත් කිරීම) එන්ජින්ක්ස් වෙතින් වෙන් වෙන්ව තබා ගැනීමට එන්ජින්ක්ස් හි ප්රොක්සි හැසිරීම මත රඳා සිටිමු. විශේෂයෙන්, ගුනිකෝන් කිසි විටෙකත් අන්තර්ජාලයෙන් සෘජුවම සම්බන්ධතා කියවන්නේ නැතැයි අපට උපකල්පනය කළ හැකි නම්, මන්දගාමී සේවාදායකයින් ගැන අපට කරදර විය යුතු නැත. මෙයින් අදහස් කරන්නේ ගුනිකෝන් සඳහා සැකසුම් ආකෘතිය ලැජ්ජා සහගත ලෙස සරල බවයි.
වෙන්වීම මඟින් ගුනිකෝන් පිරිසිදු පයිතන් වලින් ලිවීමට ඉඩ සලසයි. එමඟින් සංවර්ධන පිරිවැය අවම වන අතර කාර්ය සාධනය කෙරෙහි සැලකිය යුතු බලපෑමක් සිදු නොවේ. එමඟින් පරිශීලකයන්ට වෙනත් ප්රොක්සි භාවිතා කිරීමේ හැකියාව ද ලබා දේ (ඒවා නිවැරදිව බෆරය යැයි උපකල්පනය කරයි).
HTTP ඉල්ලීම සැබවින්ම හසුරුවන්නේ කුමක් ද යන්න පිළිබඳ ඔබගේ දෙවන ප්රශ්නයට, සරල පිළිතුර වන්නේ Gunicorn ය. සම්පූර්ණ පිළිතුර Nginx සහ Gunicorn යන දෙකම ඉල්ලීම හසුරුවයි. මූලික වශයෙන්, Nginx වෙත ඉල්ලීම ලැබෙනු ඇති අතර එය ගතික ඉල්ලීමක් නම් (සාමාන්යයෙන් URL රටා මත පදනම්ව) එය එම ඉල්ලීම Gunicorn වෙත ලබා දෙනු ඇත, එය එය ක්රියාවට නංවනු ඇත, පසුව Nginx වෙත ප්රතිචාරයක් ලබා දෙන අතර එමඟින් ප්රතිචාරය මුල් පිටපත වෙත යොමු කරයි. සේවාදායකයා.
ඉතින් වසා දැමීමේදී, ඔව්. නිසි ජැන්ගෝ යෙදවීම සඳහා ඔබට Nginx සහ Gunicorn යන දෙකම අවශ්ය වේ (හෝ ඊට සමාන දෙයක්). ඔබ විශේෂයෙන් එන්ජින්ක්ස් සමඟ ජැන්ගෝට සත්කාරකත්වය සැපයීමට බලාපොරොත්තු වන්නේ නම්, මම ගුනිකෝන්, මොඩ්_උස්ගි සහ සමහර විට චෙරිපී යන අය ගැන සොයා බලමි.