আমি ভুলভাবে ধরে নিয়েছি যে আমার অভ্যন্তরীণ এবি পরীক্ষার অর্থ আমার সার্ভারটি প্রতি সেকেন্ডে 1k সম্মতি @ 3k হিট পরিচালনা করতে পারে।
এই মুহুর্তে আমার তত্ত্বটি হল নেটওয়ার্কটি হ'ল বাধা। সার্ভার পর্যাপ্ত পরিমাণে ডেটা প্রেরণ করতে পারে না।
১ কেজি সম্মতিতে blitz.io থেকে বাহ্যিক পরীক্ষাটি দেখায় যে আমার হিট / এসগুলি 180 এ কাটবে, সার্ভারের হিসাবে প্রতিক্রিয়া করতে পৃষ্ঠাগুলি আরও বেশি সময় নিয়েছে এবং সেকেন্ডে কেবল 180 ফেরত দিতে সক্ষম হবে।
আমি এনজিনেক্স থেকে একটি ফাঁকা ফাইল পরিবেশন করেছি এবং এটি বেঞ্চ করেছি: এটি একত্রে 1: 1 এর স্কেল করে sc
এখন আইও / মেমক্যাচড বাটোনেকসগুলি বাতিল করার জন্য (এনজিনেক্স সাধারণত মেমক্যাচ থেকে টান দেয়), আমি ফাইল সিস্টেম থেকে ক্যাশেড পৃষ্ঠার একটি স্ট্যাটিক সংস্করণ পরিবেশন করি।
ফলাফলগুলি আমার মূল পরীক্ষার সাথে খুব মিল; আমি প্রায় 180 টি আরপিএস এ ক্যাপড আছি।
এইচটিএমএল পৃষ্ঠাটি অর্ধেকভাগে বিভক্ত করা আমাকে আরপিএস দ্বিগুণ দেয়, সুতরাং এটি পৃষ্ঠার আকারের দ্বারা অবশ্যই সীমাবদ্ধ limited
যদি আমি স্থানীয় সার্ভার থেকে অভ্যন্তরীণভাবে অ্যাপাচিবেঞ্চ করি তবে আমি উচ্চ স্থানান্তর হারে পুরো পৃষ্ঠা এবং অর্ধ পৃষ্ঠা উভয়টিতে প্রায় 4k আরপিএসের ধারাবাহিক ফলাফল পেয়েছি। স্থানান্তর হার: 62586.14 [কেবিটস / সেকেন্ড] গৃহীত হয়েছে
যদি আমি বাহ্যিক সার্ভার থেকে AB করি তবে আমি প্রায় 180RPS পাই - ব্লিটজ.ইও ফলাফলের মতো।
আমি কীভাবে জানব যে এটি ইচ্ছাকৃত থ্রটলিং নয়?
যদি আমি একাধিক বাহ্যিক সার্ভারগুলি থেকে বেঞ্চমার্ক করি তবে সমস্ত ফলাফলগুলি খারাপ হয়ে যায় যা আমার বিশ্বাস করে যে সমস্যাটি আমার সার্ভারগুলি বহির্মুখী ট্র্যাফিকের মধ্যে রয়েছে, আমার বেঞ্চমার্কিং সার্ভার / ব্লিটজ.আইও সহ ডাউনলোডের গতির সমস্যা নয়।
সুতরাং আমি আমার সিদ্ধান্তে ফিরে এসেছি যে আমার সার্ভারটি ডেটা পর্যাপ্ত পরিমাণে পাঠাতে পারে না।
আমি কি সঠিক? এই ডেটা ব্যাখ্যা করার অন্যান্য উপায় আছে? একাধিক সার্ভার + লোড ব্যালেন্সিং সেট আপ করার সমাধান / অপ্টিমাইজেশন যা প্রতি সেকেন্ডে 180 টি হিট সরবরাহ করতে পারে?
আমি সার্ভার অপ্টিমাইজেশনে বেশ নতুন, তাই আমি এই ডেটার ব্যাখ্যার যে কোনও নিশ্চিতকরণের প্রশংসা করব।
আউটবাউন্ড ট্র্যাফিক
আউটবাউন্ড ব্যান্ডউইথ সম্পর্কে আরও তথ্য: নেটওয়ার্ক গ্রাফ প্রতি সেকেন্ডে সর্বোচ্চ 16 এমবি / এস: 16 মেগাবাইটের আউটপুট দেখায়। মোটেও তেমন শোনাচ্ছে না।
থ্রটলিংয়ের বিষয়ে পরামর্শের কারণে, আমি এটি সন্ধান করলাম এবং দেখতে পেলাম লিনোডের একটি 50 এমবিপিএস ক্যাপ রয়েছে (যা আমি স্পষ্টতই আঘাতের কাছেও নেই) not আমি এটি 100 এমবিপিএসে উঠিয়েছি।
যেহেতু লিনোডটি আমার ট্র্যাফিকটিকে ক্যাপ করে রাখে, এবং আমি এটির জন্যও আঘাত করি না, এর অর্থ কি আমার সার্ভারটি সত্যই 100 এমবিপিএস পর্যন্ত আউটপুট তৈরি করতে সক্ষম হওয়া উচিত তবে এটি অন্য কোনও অভ্যন্তরীণ বাধা দ্বারা সীমাবদ্ধ? আমি কেবল বুঝতে পারি না যে এই বিশাল আকারের নেটওয়ার্ক কীভাবে কাজ করে; তারা কী আক্ষরিকভাবে ডেটা প্রেরণ করতে পারে যত দ্রুত তারা এইচডিডি থেকে পড়তে পারে? নেটওয়ার্কের নল হয় যে বড়?
উপসংহারে
1: উপরের ভিত্তিতে, আমি ভাবছি আমি অবশ্যই এলবি এর পিছনে সার্ভারে ঠিক 180RPS এ মাল্টি এনগিনেক্স সার্ভার সেটআপের উপরে একটি এনগিনেক্স লোড ব্যালেন্সার যুক্ত করে আমার 180RPS বাড়াতে পারি
2: যদি লিনোডের 50 / 100mbit সীমা থাকে যা আমি মোটেও হিট করছি না, তবে আমার একক সার্ভার সেটআপের মাধ্যমে এই সীমাটি হিট করার জন্য আমার কিছু করতে হবে। যদি আমি স্থানীয়ভাবে ডেটাটি দ্রুত পড়তে / প্রেরণ করতে পারি এবং লিনোড এমনকি 50 এমবিট / 100 এমবিট ক্যাপ রাখার পক্ষে বিরক্ত করে তবে একটি অভ্যন্তরীণ বাধা থাকতে হবে যা আমাকে সেই ক্যাপগুলিতে আঘাত করতে দিচ্ছে না যে আমি কীভাবে সনাক্ত করব তা নিশ্চিত নই। সঠিক?
আমি বুঝতে পারি যে প্রশ্নটি এখন বিশাল এবং অস্পষ্ট, তবে আমি কীভাবে এটি ঘনীভূত করব তা নিশ্চিত নই। আমি যে কোনও উপসংহারে যে কোনও ইনপুট প্রশংসিত হয়।