কোনও সার্ভার এক সাথে শেল কমান্ড পরিচালনা করতে পারে?


11

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

shell_exec('ffmpeg -i inputSong.mp3 outputSong.wav')

সুতরাং আসুন আমরা বলি যে সেখানে 10 জন পৃথক লোক রয়েছে যারা একই সময়ে একটি গান আপলোড করা শেষ করে । লিনাক্স সার্ভার একই সাথে 10 টি শেল কমান্ড কার্যকর করে বা এটি একবারে কেবল একটি করে করে?

যদি কোনও সার্ভার একসাথে একাধিক শেল কমান্ড পরিচালনা করতে পারে তবে সার্ভারটি একই সাথে 10 টি বিভিন্ন গানের রূপান্তর পরিচালনা করতে সক্ষম হবে বা এটি একবারে কেবল একটি করে করতে পারে?


এই উবুন্টু কীভাবে সম্পর্কিত? এটি সার্ভারফল্ট বা ইউনিক্সের অন্তর্ভুক্ত নয়?
বিটমাস্ক

5
ব্যবহারকারীর কাছ থেকে ইনপুট ফাইলের নাম গ্রহণ করার ক্ষেত্রে খুব সাবধান হন। কেউ বিশেষত কোনও ফাইল নাম কারুকাজ করতে পারে যা কিছু আদেশের অনুকরণ করে এবং আপনি কার্যকর করতে পারেন এবং আপনাকে মূলত হ্যাক করা হবে।
ররি

উত্তর:


13

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

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

সিপিইউ নিবিড় কমান্ড ব্যবহার করার সময়, উদাহরণস্বরূপ ভিডিও রূপান্তর করার সময়, কমান্ডগুলির কার্যকর ব্যবহারের পরে আপনার কতটা র‌্যাম রয়েছে এবং আপনার কতটা সিপিইউ পাওয়ার রয়েছে তার উপর নির্ভর করে। MB৪ এমবি র‌্যাম এবং ৮০৮66 এর কারওর জন্য দু'টি ভিডিও এবং 10 টি গানে রূপান্তর করার চেষ্টা করা খারাপ হবে। যে সিস্টেম ওভারলোড হবে। কোর 2 ডুও সার্ভার এবং 4 জিবি র‌্যামযুক্ত কারও জন্য আমি মনে করি বেশ কয়েকটি গান রূপান্তর করা কেকের টুকরো হবে।

সুতরাং মূলত, হ্যাঁ, লিনাক্স একাধিক একযোগে শেল কমান্ডগুলি পরিচালনা করতে পারে, বিশেষত পিএইচপি থেকে, তবে সামগ্রিক কর্মক্ষমতা সার্ভারের সংস্থানগুলির উপর নির্ভর করবে (সিপিইউ, র‌্যাম, হার্ড ডিস্ক ড্রাইভ ইত্যাদি))


6

আপনি যদি বিপুল সংখ্যক ব্যবহারকারীকে সমর্থন করেন তবে আপনাকে রূপান্তর প্রক্রিয়া পরিচালনা করার বিকল্প পদ্ধতিটি অনুসন্ধান করতে হবে।

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

এই প্রশ্নটি আগ্রহী হতে পারে:

/programming//q/265073/175849


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