নোড.জেএস কি আসলে স্কেলাবিলিটি বাড়ায়?


21

আমি সি 10 কে সমস্যা সম্পর্কে পড়ছি এবং বিশেষ দ্রষ্টব্য হ'ল সেই অংশ যা অ্যাসিঙ্ক্রোনাস সার্ভার I / O বোঝায়। http://www.kegel.com/c10k.html#aio

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

পরবর্তীকালে এর অর্থ হ'ল একটি থ্রেড সকেটগুলিতে এবং তাই সার্ভারের ব্যবহারকারীদের জন্য আরও 'উপলব্ধ'।

তারপরে আমি এটি পেয়েছি: http://teddziuba.com/2011/10/straight-talk-on-event-loops.html

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

আমি একজন সরল কোডার, কোনও সার্ভার অ্যাডমিন বা এর মতো কিছু নয়। আমি কেবল এটি জানতে আগ্রহী: নোড.জেস কি 'ক্লাউড কম্পিউটিং'-এর দেবতাদের কাছ থেকে উপহার, নাকি এটি সমস্ত গরম বায়ু, এবং প্রকৃতপক্ষে স্কেলাবিলিটি উন্নত করে সংস্থাগুলির সময় এবং / বা অর্থ সাশ্রয় করবে না?

অনেক ধন্যবাদ.


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

1
+ +! লোকটি অবশ্যই একটি ট্রল।
প্যাট্রিক হিউজেস

এটি আপনার তুলনার সাথে নির্ভর করে - যদি আপনি এখনও অ্যাপাচি ব্যবহার করেন (কোনও কারণে) - তবে নোড দেবতাদের কাছ থেকে উপহার, তবে আপনি যদি এটি এনজিঙ্ক্সের সাথে তুলনা করেন - উন্নতিগুলি খুব কম কঠোর হয়, এবং নোড এমনকি ধীর হয়। (দশ বার ধীর, 2ms 20ms বনাম একটি কোন সাড়া জেনারেট করতে, কিন্তু আমাদের পরীক্ষা, nginx পরিমিতরূপে ভারী লোড অধীনে 504 দান করা হয়েছিল, এবং নোড স্বাভাবিক প্রতিক্রিয়া দান হয়)।
c69

এখন আপনি বলছি ছেলেরা, ট্রোল লোকটি স্পষ্টভাবে একটি ট্রল is @ c69 এটি ভাল তথ্য, অনেক অনেক ধন্যবাদ।
অ্যালেক্স

আপনার "ইভেন্ট লুপগুলিতে সরাসরি কথা" লিঙ্কটি আর কাজ করে না।
রবার্ট হার্ভে

উত্তর:


20

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

আপনার যখন I / O বাউন্ডেড কাজ করবেন তখন সিপিইউ বাউন্ডের জন্য নোড.জেএস দুর্দান্ত। আমি নোডে ভারী উত্তোলন করব না, যদিও এটি করা যেতে পারে। নোড.জেএসগুলি ফিবোনাচি নম্বর সার্ভারের মতো কল্পিত বা কল্পনাযুক্ত নয়, আসল সমস্যাগুলি সমাধান করে । এটি "উত্তপ্ত বাতাস" নয়।


কিছু মানদণ্ড পরীক্ষা করা এবং প্রকৃতপক্ষে পৃষ্ঠাগুলি পরিবেশন করার ক্ষেত্রে এটি দ্রুত গতিতে দেখায় : zgadzaj.com/… .. আমার ধারণা আমি এই পরে যা করেছি ...
অ্যালেক্স

3
@ অ্যালেক্সডাব্লু: এই মানদণ্ডগুলি সম্পর্কে ভাল কথাটি হ'ল আপনি মূলত স্ট্যাটিক সামগ্রী সরবরাহ করছেন। আমার মিলিয়ন মিলিয়ন হিট এক দিনের টুকরো দেখুন। পিএইচপি ইন্টারপ্রেটারের জন্য এটি স্পঞ্জ করা অপচয়। ফাইল ডিরেক্টরি পরিবেশন করার জন্য নোড-স্ট্যাটিক জাতীয় কিছু দেখুন ।
জোশ কে

@ অ্যালেক্সডাব্লু, কেবল মনে করিয়ে দেওয়ার জন্য যে zgadzaj.com/… নোড.জেএস 0.1.103 ব্যবহার করে, যা এখন পুরানো!
সাম্যক ভূতা

4

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


-1

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


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

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

2
@ ওয়াটসিসনাম একক থ্রেডযুক্ত সম্মতি একটি বিশাল সুবিধা যা আমার মতে একটি ভাষা থাকার চেয়ে অনেক বড়।
প্লি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.