অভ্যন্তরীণ নেটওয়ার্কগুলি প্রায়শই 1 জিবিপিএস সংযোগ ব্যবহার করে বা তত দ্রুত। অপটিকাল ফাইবার সংযোগ বা বন্ধন সার্ভারের মধ্যে অনেক উচ্চতর ব্যান্ডউইথের অনুমতি দেয়। এখন একটি এপিআই থেকে জেএসএন প্রতিক্রিয়ার গড় আকারটি কল্পনা করুন। এই জাতীয় প্রতিক্রিয়াগুলির মধ্যে কতটা এক সেকেন্ডে 1 জিবিপিএস সংযোগের মাধ্যমে প্রেরণ করা যায়?
আসুন গণিতটি করা যাক। 1 জিবিপিএস প্রতি সেকেন্ডে 131 072 কেবি। যদি গড় JSON প্রতিক্রিয়া 5 কেবি হয় (যা বেশ অনেকটা!), আপনি কেবল এক জোড়া মেশিন দিয়ে তারের মাধ্যমে প্রতি সেকেন্ডে 26 214 টি প্রতিক্রিয়া পাঠাতে পারেন । এত খারাপ না, তাই না?
এই কারণেই নেটওয়ার্ক সংযোগটি সাধারণত বাধা হয় না।
মাইক্রোসার্ভেসিসের আরেকটি দিক হ'ল আপনি সহজে স্কেল করতে পারেন। দুটি সার্ভার কল্পনা করুন, একটিতে এপিআই হোস্টিং, অন্যটি এটি গ্রাস করছে। যদি কখনও সংযোগটি বাধা হয়ে দাঁড়ায় তবে কেবল দুটি অন্যান্য সার্ভার যুক্ত করুন এবং আপনি কার্য সম্পাদন দ্বিগুণ করতে পারেন।
এটি তখন হয় যখন আমাদের প্রতি 26 সেকেন্ডে 214 টি প্রতিক্রিয়া অ্যাপ্লিকেশানের স্কেলের জন্য খুব ছোট হয়ে যায়। আপনি অন্য নয়টি জুড়ুন, এবং আপনি এখন 262 140 প্রতিক্রিয়া পরিবেশন করতে সক্ষম হবেন।
তবে আসুন আমরা আমাদের সার্ভারের জুটিতে ফিরে আসি এবং কিছু তুলনা করি।
যদি কোনও ডাটাবেসে গড় নন-ক্যাশেড ক্যোয়ারীটি 10 এমএস লাগে তবে আপনি প্রতি সেকেন্ডে 100 টি প্রশ্নের সীমাবদ্ধ। 100 জিজ্ঞাসা। 26 214 টি প্রতিক্রিয়া। প্রতি সেকেন্ডে 214 টি প্রতিক্রিয়ার গতি অর্জনের জন্য প্রচুর পরিমাণে ক্যাচিং এবং অপটিমাইজেশন প্রয়োজন (যদি প্রতিক্রিয়াটি আসলে কোনও ডেটাবেস অনুসন্ধানের মতো কিছু কার্যকর করার প্রয়োজন হয়; "হ্যালো ওয়ার্ল্ড" - স্টাইলের প্রতিক্রিয়াগুলি যোগ্যতা অর্জন করে না)।
আমার কম্পিউটারে, এই মুহূর্তে, ডমকন্টেন্টলয়েড গুগলের হোম পেজে 394 এমএস ঘটেছে। অনুরোধ প্রেরণের পরে। এটি প্রতি সেকেন্ডে 3 টিরও কম অনুরোধ। প্রোগ্রামার্স.এসই হোম পৃষ্ঠার জন্য, এটি ঘটেছে 603 এমএস। অনুরোধ প্রেরণের পরে। এটি প্রতি সেকেন্ডে 2 টি অনুরোধও নয়। যাইহোক, আমার কাছে 100 এমবিপিএস ইন্টারনেট সংযোগ এবং একটি দ্রুত কম্পিউটার রয়েছে: অনেক ব্যবহারকারী আরও অপেক্ষা করবেন।
যদি বাধাটি সার্ভারগুলির মধ্যে নেটওয়ার্কের গতি হয় তবে এই দুটি সাইট আক্ষরিক অর্থে পৃষ্ঠা পরিবেশন করার সময় বিভিন্ন এপিআইতে কয়েক হাজার কল করতে পারে।
এই দুটি ক্ষেত্রেই দেখা যায় যে নেটওয়ার্ক সম্ভবত তাত্ত্বিকভাবে আপনার বাধা হয়ে উঠবে না (বাস্তবে , কোনও নির্দিষ্ট হার্ডওয়্যারটিতে হোস্ট করা আপনার নির্দিষ্ট সিস্টেমের বাধাটির সঠিক অবস্থান নির্ধারণের জন্য আপনার আসল মানদণ্ড এবং প্রোফাইলিং করা উচিত )। প্রকৃত কাজ করতে ব্যয় করা সময় (এটি কি এসকিউএল কোয়েরিজ, সংক্ষেপণ, যাই হোক না কেন) এবং ফলাফলটি শেষ ব্যবহারকারীর কাছে প্রেরণ করা আরও বেশি গুরুত্বপূর্ণ।
ডাটাবেস সম্পর্কে চিন্তা করুন
সাধারণত, ডেটাবেসগুলি তাদের ব্যবহার করে ওয়েব অ্যাপ্লিকেশন থেকে পৃথকভাবে হোস্ট করা হয়। এটি উদ্বেগ বাড়িয়ে তুলতে পারে: অ্যাপ্লিকেশনটি হোস্টিং করা সার্ভার এবং ডেটাবেস হোস্ট করা সার্ভারের মধ্যে সংযোগের গতি সম্পর্কে কী?
এটি প্রদর্শিত হয় যে প্রকৃতপক্ষে, সংযোগের গতি সমস্যাযুক্ত হয়ে ওঠে, যখন আপনি বিপুল পরিমাণে ডেটা সঞ্চয় করেন যা ডাটাবেস নিজেই প্রক্রিয়া করার প্রয়োজন হয় না এবং এখনই উপলভ্য হওয়া উচিত (এটি বড় বাইনারি ফাইল)। তবে এই ধরনের পরিস্থিতি বিরল: বেশিরভাগ ক্ষেত্রে, ক্যোয়ারী নিজেই প্রক্রিয়াকরণের গতির তুলনায় স্থানান্তর গতি এত বড় নয়।
যখন স্থানান্তর গতিটি তখন গুরুত্বপূর্ণ হয় যখন কোনও সংস্থা কোনও এনএএস-তে বড় ডেটা সেট হোস্ট করে এবং একই সাথে একাধিক ক্লায়েন্ট দ্বারা এনএএস অ্যাক্সেস করা হয়। এখানেই কোনও সান সমাধান হতে পারে। এটি বলা হচ্ছে, এটিই একমাত্র সমাধান নয়। বিড়াল 6 কেবল 10 গিগাবাইটের গতি সমর্থন করতে পারে; বন্ধনগুলি কেবল বা নেটওয়ার্ক অ্যাডাপ্টারগুলি পরিবর্তন না করে গতি বাড়ানোর জন্যও ব্যবহার করা যেতে পারে। অন্যান্য সমাধান বিদ্যমান, একাধিক এনএএস জুড়ে ডেটা প্রতিলিপি জড়িত।
গতির কথা ভুলে যাও; স্কেলিবিলিটি সম্পর্কে চিন্তা করুন
ওয়েব অ্যাপ্লিকেশনটির একটি গুরুত্বপূর্ণ বিষয় হ'ল স্কেল করতে সক্ষম। যদিও প্রকৃত পারফরম্যান্সগুলি গুরুত্বপূর্ণ (কারণ কেউ আরও শক্তিশালী সার্ভারগুলির জন্য অর্থ দিতে চায় না), স্কেলাবিলিটি অনেক বেশি গুরুত্বপূর্ণ, কারণ এটি আপনাকে যখন প্রয়োজন হয় তখন অতিরিক্ত হার্ডওয়্যার নিক্ষেপ করতে দেয়।
আপনার যদি বিশেষত দ্রুততম অ্যাপ না থাকে তবে আপনি অর্থ হারাবেন কারণ আপনার আরও শক্তিশালী সার্ভারের প্রয়োজন হবে।
আপনার যদি একটি দ্রুত অ্যাপ থাকে যা স্কেল করতে পারে না, আপনি গ্রাহককে হারাবেন কারণ আপনি ক্রমবর্ধমান চাহিদার প্রতি সাড়া দিতে সক্ষম হবেন না।
একইভাবে, ভার্চুয়াল মেশিনগুলি এক দশক আগে একটি বিশাল পারফরম্যান্স সমস্যা হিসাবে বিবেচিত হয়েছিল। প্রকৃতপক্ষে, কোনও ভার্চুয়াল মেশিনে একটি হোস্ট ভার্সু বনাম একটি সার্ভারে হোস্টিংয়ের একটি গুরুত্বপূর্ণ কার্যকারিতা প্রভাব ফেলেছে। যদিও ব্যবধানটি আজ অনেক ছোট, এখনও রয়েছে।
এই কর্মক্ষমতা হ্রাস হওয়া সত্ত্বেও, ভার্চুয়াল পরিবেশগুলি তাদের নমনীয়তার কারণে খুব জনপ্রিয় হয়েছিল।
নেটওয়ার্কের গতির মতোই, আপনি দেখতে পাবেন যে ভিএম হ'ল আসল বাধা এবং আপনার প্রকৃত স্কেল দেওয়া হয়েছে, আপনি ভিএমএস ছাড়াই সরাসরি আপনার অ্যাপ্লিকেশনটি হোস্ট করে কোটি কোটি ডলার সাশ্রয় করবেন। তবে ৯৯.৯% অ্যাপ্লিকেশনগুলির ক্ষেত্রে এটি ঘটে না: তাদের বাধাটি অন্য কোথাও রয়েছে এবং ভিএম এর কারণে কয়েকটি মাইক্রোসেকেন্ডের ক্ষতির ক্ষতিটি সহজেই হার্ডওয়্যার বিমূর্ততা এবং স্কেলাবিলিটির সুবিধা দ্বারা ক্ষতিপূরণ পাওয়া যায়।