এনজিআইএনএক্স ব্যবহারের পারফরম্যান্স সুবিধা


16

ম্যাজেন্টো পরিবেশন করার জন্য এনজিআইএনএক্স ব্যবহার করার বিষয়টি বিবেচনা করে- আমি বাস্তবায়নের বিশদ সম্পর্কে উদ্বিগ্ন নই, তবে কারও সম্পর্কে এটির (বা খারাপ) কিছু বলার আছে কিনা তা জানতে চাই। ব্যালেন্স ম্যাজেন্টো লোড করতে এনজিআইএনএক্সও ব্যবহার করছে বিশেষ আগ্রহ।


NginX- এর সাথে আমাদের একটি ডেডিকেটেড সার্ভারে দুটি দোকান চলছে। উচ্চ ট্র্যাফিক শপের জন্য অবশ্যই একটি সুবিধা রয়েছে কারণ এনগিনএক্স কেবল অনুরোধগুলি আরও ভালভাবে পরিচালনা করে এবং ম্যাগেন্তোর জন্য আরও সংস্থান রাখে। কম ট্র্যাফিক
শপগুলির

উত্তর:


15

ম্যাজেন্টো হোস্টিংয়ের জন্য অবশ্যই এনগিনেক্স একটি ভাল পছন্দ, এবং এটি বেশ কয়েকটি দুর্দান্ত (তবে ছোট) সুবিধার সাথে আসে যা সাইটের কার্য সম্পাদনকে উন্নত করতে সহায়তা করে।

এনগিনেক্স এবং অ্যাপাচি এর মধ্যে প্রধান পার্থক্য হ'ল এনগিনেক্স নন-ব্লকিং ইভেন্টযুক্ত আইও ব্যবহার করে এবং অ্যাপাচি কেবলমাত্র মাল্টিথ্রেডিং / প্রসেসিং ব্যবহার করে। পার্থক্য কী এবং কেন এটি গুরুত্বপূর্ণ? আপাচের ক্ষেত্রে, এটিতে 5 টি থ্রেড রয়েছে বলে মনে করুন এটি কোনও নির্দিষ্ট সময়ে 5 টির জন্য অনুরোধ পরিচালনা করতে পারে। যদি এই থ্রেডগুলির মধ্যে কোনও একটি শেষ করতে দীর্ঘ সময় নেয়, তবে আগত সমস্ত অনুরোধগুলি পরিচালনা করতে কেবল 4 টি থ্রেড বাকি রয়েছে। যদি সমস্ত 5 টি থ্রেড লক হয়ে যায়, তবে আগত কোনও অনুরোধগুলি শেষ না হওয়া পর্যন্ত পরিচালনা করা যাবে না।

সন্নিবিষ্ট আইও দিয়ে যখন কোনও থ্রেড কোনও কিছুর জন্য অনুরোধ গ্রহণ করে, এটি একটি ইভেন্ট থেকে সরে যায় এবং সরাসরি পরবর্তী অনুরোধে চলে যায়। ইভেন্টটি যখন ফিরে আসে, তখন এটি সম্পর্কিত ক্লায়েন্টের প্রতিক্রিয়াটি হয়ে যায় on

এটি প্রায় অসম্পূর্ণ জাভাস্ক্রিপ্ট কীভাবে কাজ করে তার সাথে প্রায় একই রকম। আপনি একটি এজেএক্স অনুরোধ বন্ধ করে দিন এবং আপনি কলব্যাক না পাওয়া পর্যন্ত চালিয়ে যান।

প্রচুর পরিমাণে থ্রেড বা কর্মী সিস্টেম প্রসেসের ওভারহেড ছাড়াই প্রচুর ছোট স্ট্যাটিক ফাইল পরিবেশন করার জন্য এই আধুনিক পদ্ধতিটি বেশ উপযুক্ত।

এনগিনেক্সের অন্য সুবিধাটি হ'ল এর কম স্মৃতি পদক্ষেপ। অ্যাপাচি প্রচুর স্টাফ সমর্থন করে এবং এটি করার ক্ষেত্রে একটি উচ্চ মেমরি এবং গণনার পদচিহ্ন রয়েছে। আপনি এটি ফিরিয়ে আনতে পারেন তবে এনগিনেক্স স্মৃতিচারণের দিক থেকে দুর্বল হওয়ার জন্য স্ক্র্যাচ থেকে আর্কিটেকটেড।

পার্থক্যগুলি বিশাল নয়, তবে আপনি হাজার হাজার অনুরোধগুলি আকারে ছোট ছোট পার্থক্যগুলি সামগ্রিকভাবে একটি বড় পার্থক্য তৈরি করুন।

এখন এটি মনে রাখা গুরুত্বপূর্ণ যে একটি ম্যাজেন্টো অ্যাপ্লিকেশনটিতে সবচেয়ে বড় পারফরম্যান্সের বাধা হ'ল পিএইচপি কোড প্রয়োগ করা। এখানে অ্যাপাচি এবং এনগিনেক্সের মধ্যে পারফরম্যান্সের মূলত তুচ্ছ পার্থক্য রয়েছে। গুরুত্বপূর্ণ বিষয় হ'ল পিএইচপি-এফপিএম, এবং আপাচি সহ কর্মী এমপিএম (এবং স্পষ্টভাবে প্রেফার্ক / মোড-পিএইচপি এড়ানো)। মূল কারণ হ'ল আপনি যখন পিএইচপি কোডটি কার্যকর করতে হবে তখন আপনি কেবলমাত্র একজন পিএইচপি ইন্টারপ্রেটারকে অনুরোধ করেন এবং আপনি কার্যকরভাবে এপিসির মতো অপ-কোড ক্যাশিং সফ্টওয়্যার ব্যবহার করতে পারেন (এবং এটি আপনি পাবেন এমন একক বৃহত্তম পারফরম্যান্সের উত্সাহ)।

শেষ পয়েন্ট: কিছু মডিউল / অ্যাপ্লিকেশন আশা করে যে অ্যাপাচি ব্যবহার করা হবে এবং ডকুমেন্টেশনগুলি ModRewrit ব্যবহার বা .htaccess ফাইল ব্যবহারের জন্য প্রস্তুত করা যেতে পারে। এনগিনেক্সে মোডরাইরাইট শৈলীর সমর্থন থাকলেও প্রতি ডিরেক্টরি .htaccess শৈলী সমাধানের জন্য সমর্থন নেই।

ব্যক্তিগতভাবে, আমি এনগিনেক্স পছন্দ করি কারণ এটি স্ট্যাটিক সামগ্রীগুলি দক্ষতার সাথে পরিবেশন করে, পিএইচপি-এফপিএম সেটআপ করা খুব সহজ এবং আমি এর কনফিগারেশন বাক্য গঠনটি বেশ পছন্দ করি। এটি পারফরম্যান্স সমস্যার কোনও যাদু বুলেট সমাধান নয়, তবে এটি বিবেচনা করার জন্য শক্তিশালী নমনীয় বিকল্প।


1
একটি দুর্দান্ত উত্তর যা ম্যাগেন্টো
বেনমার্ক

হ্যাঁ হারুন 100% এর সাথে একমত, আমরাও স্টেস্টিক বিষয়বস্তুতে দ্রুত সার্ভার করার ক্ষমতা এবং অ্যাপাচের তুলনায় উচ্চতর সংখ্যার সহবর্তী অনুরোধগুলি পরিচালনা করার কারণে আমরা আমাদের বেশিরভাগ ম্যাজেন্টো মোতায়েনের জন্য এনগিনেক্স ব্যবহার করি। নিগিনেক্সের সাথে আমরা যে ক্ষতি করতে পেরেছি তা আমাদের প্রকল্পগুলির একটিতে রয়েছে, এটি এলোমেলোভাবে একটি 504 গেটওয়ে টাইমআউট ত্রুটি ছুঁড়ে ফেলেছে (এমনকি সার্ভারের লোডগুলি বেশ কম থাকলেও)। আমরা এখনও এটি পেরেক দিয়েছি .. বিভিন্ন ফোরামে বর্ণিত বেশিরভাগ সমাধান খুব বেশি সহায়তা করেনি।
ভিঞ্চি রুফাস

1

আমি বলব ম্যাগেন্টো ব্যবহার করার সময় এনগিনেক্সের পারফরম্যান্স সুবিধা উপেক্ষিত is অ্যারন দ্বারা উল্লিখিত ইভেন্ট ভিত্তিক আইও সুবিধা অ্যাপাচি (ইভেন্ট এমপিএম ব্যবহার করার সময়) এর ক্ষেত্রেও প্রযোজ্য।

সাধারণভাবে ম্যাজেন্টো সম্পর্কে কথা বললে, বেশিরভাগ প্রসেসিং (99%) পিএইচপি এবং ডেটাবেসগুলিতে স্থান নেয়, তাই প্রথম 1% অনুকূলিতকরণ আপনাকে তুলনামূলকভাবে সামান্য সুবিধা দেবে benefit

তবে ম্যাজেন্টোর জন্য এনগিনেক্সকে বেছে নেওয়ার অন্যান্য কারণ রয়েছে যেমন একটি ছোট মেমরির পদচিহ্ন, আরও ভাল হারের সীমা এবং এসপিডিওয়াই সমর্থন, কয়েকটি নাম রাখার জন্য।

অ্যাপাচে চলমান বিদ্যমান ম্যাজেন্টো সাইটগুলিকে রূপান্তর করার সময় এনগিনেক্সের একটি বিশাল অসুবিধা রয়েছে, যেহেতু অনেকগুলি .htaccess বিবৃতিগুলি Nginx বিবৃতিগুলিতে সরাসরি ম্যাপ করে না। উদাহরণস্বরূপ, এনগিনেক্স এসিএলে হোস্ট-নেম সমর্থন করে না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.