সার্ভার - SMH Amiri

সর্বশেষ লিখাসমূহ

সার্ভার

.com/dms/image/C5612AQEGrmCFP4-PXg/article-cover_image-shrink_600_2000/0/

সার্ভার 
------

সার্ভার (server) হল একটি কম্পিউটার সফ্টওয়্যার ও অন্তর্নিহিত হার্ডওয়্যার যা হাইপার টেক্সট ট্রান্সফার প্রোটোকল ( HTTP ) অথবা এর বৈকল্পিক সুরক্ষিত হাইপারটেক্সট ট্রান্সফার প্রোটোকল সিকিউর (HTTPS ) এর মাধ্যমে অনুরোধ গ্রহণ করে। একজন ব্যবহারকারী সাধারণত একটি ওয়েব ব্রাউজার অথবা ওয়েব ক্রলার HTTP ব্যবহার করে একটি ওয়েব পৃষ্ঠা অথবা অন্যান্য সংস্থানের জন্য একটি অনুরোধ করে যোগাযোগ শুরু করে থাকে এবং সার্ভার সে সংস্থানের সামগ্রী বা একটি ত্রুটি বার্তার সাথে প্রতিক্রিয়া জানায়৷ এটি করার জন্য কনফিগার করা হলে একজন সার্ভার ব্যবহারকারী এজেন্টের কাছ থেকে পাঠানো সংস্থানগুলি গ্রহণ এবং সংরক্ষণ করতে পারে।
ওয়েব সার্ভার চালানোর জন্য ব্যবহৃত হার্ডওয়্যার অনুরোধের পরিমাণ অনুযায়ী পরিবর্তিত হতে পারে। এর পরিসরের নিম্ন প্রান্তে এমবেডেড সিস্টেম রয়েছে ; যেমন:একটি রাউটার যা একটি ছোট ওয়েব সার্ভারকে কনফিগারেশন ইন্টারফেস হিসাবে চালায়। একটি উচ্চ-ট্রাফিক ইন্টারনেট ওয়েবসাইট শত শত সার্ভারের সাথে অনুরোধগুলি পরিচালনা করতে পারে যা উচ্চ-গতির কম্পিউটারের র‌্যাকে চলে।
Server  শব্দের বাংলা অর্থ হল পরিবেশক। অর্থাৎ যে সার্ভ করে তাকে সার্ভার বলে। কম্পিউটার বিজ্ঞানের ভাষায় সার্ভার হল এমন একটি কম্পিউটার যেখানে ডাটা বা ইনফরমেশন জমা থাকে। এটিকে আমরা একটি স্টোরেজ ডিভাইসের সাথেও তুলনা করতে পারি। একটি সাধারণ কম্পিউটার ও সার্ভার কম্পিউটার দুটো আলাদা জিনিস। কারণ সার্ভার তৈরি করার আসল উদ্দেশ্য হল তা থেকে যেন ডাটা সহজেই অন্যান্য কম্পিউটারে আদান-প্রদান করা যায়। যা একটি সাধারণ বা পার্সোনাল কম্পিউটার দিয়ে নেটওয়ার্কের মাধ্যমে করা অনেক কঠিন ও কষ্টসাধ্য। সকল সার্ভারই কম্পিউটার কিন্তু সব কম্পিউটার সার্ভার নয়। এর প্রধান কারণ হল হার্ডওয়্যার ও সফটওয়্যার কনফিগারেশন। একটি সার্ভার তৈরি করার সময় কম্পিউটারের থেকে বেশি শক্তিশালী হার্ডওয়্যার ব্যবহার করা হয়। যা সার্ভারে আনলিমিটেড ডাটা জমা রাখতে ও ২৪/৭ অ্যাক্টিভ রাখতে সহায়তা করে। তথ্য সংগ্রহ রাখা বাদেও সার্ভারের আরেকটি বড় কাজ হল রিকোয়েস্ট হ্যান্ডেল করা। যেমন এই লেখাটি পড়ার জন্য আপনি যখনি লিংকে প্রবেশ করেছেন তখনি ব্রাউজার সার্ভারে ফাইল ওপেন করার রিকোয়েস্ট সেন্ড করেছে। সেন্ড করা রিকোয়েস্ট প্রসেস করে নির্দিষ্ট ফাইল পুনরায় ব্রাউজারে পাঠানো পর্যন্ত সকল কাজ সার্ভারের অল্প সময়ের মধ্যে খুব নিখুঁতভাবে করতে হয়।
মোটকথা, সার্ভার হলো একটি সফটওয়্যার যা একটি কম্পিউটারকে নেটওয়ার্ক দ্বারা ফাইল আদান-প্রদান করার সুযোগ প্রদান করে। যা নিজে ফাইল জমা রাখে জাতে যে কোন কম্পিউটার নেটওয়ার্কে যুক্ত হয়ে চাহিদামতো ফাইল ডাউনলোড বা মডিফাই করতে পারে।

সার্ভার যেভাবে কাজ করে
--------------
সার্ভার কীভাবে কাজ করে তা জানার আগে আমাদের জানতে হবে সার্ভার কি কি দ্বারা তৈরি। প্রধানত সার্ভার তৈরি ও পরিচালনা করার জন্য প্রয়োজন পড়বে এক বা একাধিক কম্পিউটারের। অর্থাৎ Server তৈরি করার জন্য আমাদের লাগবে পাওয়ার, প্রসেসর, র‍্যাম এবং অনেক গুলো হার্ড-ড্রাইভ। 
পাওয়ার লাগবে ফুল সিস্টেম সচল রাখার জন্য যাতে সার্ভার কখনই বন্ধ না হয়। প্রসেসর ও র‍্যাম প্রয়োজন পড়বে সার্ভারে আসা রিকোয়েস্ট ম্যানেজ করা সহ ফাইল আদান-প্রদান করতে। সর্বশেষে প্রয়োজন অনুযায়ী স্টোরেজ ড্রাইভ। স্টোরেজ ড্রাইভ হিসেবে এসএসডি বা এইচডিডি যেটাই থাকুক, সব গুলো সচল থাকতে হবে। 
আমরা ইতিমধ্যে সার্ভার সম্পর্কে ধারণা লাভ করেছি। এখন সার্ভার কীভাবে কাজ করে তা বোঝার জন্য আমাদের ক্লাইন্ট সম্পর্কে ধারণা থাকতে হবে। ক্লাইন্ট বলতে যে ডিভাইস নেটওয়ার্ককে মাধ্যম হিসেবে ব্যবহার করে সার্ভারের কাছে ডাটা রিকোয়েস্ট করে তাকে ক্লাইন্ট বলে। এই যেমন ওয়েব ব্রাউজার একটি ক্লাইন্ট। 
সার্ভার Request-Response Cycle প্রক্রিয়ায় কাজ করে। অর্থাৎ ধরুন আপনি গুগলে একটি মোবাইল সম্পর্কে তথ্য চেয়ে সার্চ দিলেন। এখন ওয়েব ব্রাউজার ক্লাইন্ট হিসেবে গুগলের ওয়েব সার্ভারে উক্ত ডাটা চেয়ে রিকোয়েস্ট পাঠাবে। গুগলের সার্ভার রিকোয়েস্ট গ্রহণ করে তা প্রসেসর দ্বারা প্রসেস করে দেখবে তাদের স্টোরেজ ড্রাইভের কোথায় সেই ইনফরমেশন আছে। খুঁজে পাওয়ার সাথে সাথে গুগলের সার্ভার সার্চ এর ডাটা ক্লাইন্ট সফটওয়্যার বা ওয়েব ব্রাউজারে প্রেরণ করবে। তখন আপনি চোখের সামনে সেই ডাটা দেখতে পারবেন। 

সহজভাবে বলতে গেলে–
  • প্রথমে আমাদের ক্লাইন্ট সফটওয়্যার বা ব্রাউজারে ওয়েবসাইট বা ফাইলের URL (Uniform Resource Locator) প্রবেশ করাতে হবে। ব্রাউজার তখন URL থেকে ডাটা নিয়ে DNS (Domain Name Server) এ রিকোয়েস্ট করে। 
  • তারপর DNS সার্ভার পুরো বিশ্বব্যাপী বিস্তৃত WEB সার্ভারে উক্ত URL এর IP খুঁজে। 
  • IP পাওয়ার পর তা DNS সার্ভার পুনরায় ব্রাউজারে প্রেরণ করে। 
  • ব্রাউজার তখন DNS সার্ভার থেকে পাওয়া IP অ্যাড্রেসে HTTP/HTTPS রিকোয়েস্ট পাঠায়। 
  • উক্ত রিকোয়েস্ট সার্ভারে প্রসেস হয়ে ব্রাউজারে ফেরত আসে। ব্রাউজার তখন ফাইল গুলো রিসিভ করে DOM(Document Object Model) interpreter, CSS interpreter, JIT(Just in Time) compiler এর সাহায্য নিয়ে রেন্ডার করে। রেন্ডার শেষ হলে তা মনিটর বা ডিসপ্লেতে প্রদর্শন করে। 
  • আর এই পুরো কাজ করবে সার্ভারে সেটআপ করা সার্ভার সফটওয়্যার যা একটি কম্পিউটারকে সার্ভারে রূপান্তর হতে সহায়তা করে। 
সার্ভার কত প্রকারভেদ
-------------
ব্যবহারের উপর ভিত্তি করে সার্ভারের প্রকারভেদ করা হয়। চলুন বর্তমান সময়ে যে সকল সার্ভার বা সার্ভার আইডিয়া প্রচলিত আছে সে সম্পর্কে ধারণা নিয়ে আসি। 

১) ওয়েব সার্ভারঃ বর্তমান সময়ে সব থেকে বেশি প্রচলিত সার্ভার হচ্ছে ওয়েব সার্ভার। ওয়েব সার্ভারকে আমরা ওয়েব হোস্টিং বা হোস্টিং সার্ভার হিসেবে চিনে থাকি। ওয়েব সার্ভার গুলোর প্রধান কাজ হলো বিভিন্ন ওয়েবসাইটের সকল ফাইল যেমন অডিও, ভিডিও, ইমেজ, টেক্সট ইত্যাদি জমা রাখা। 
ইন্টারনেটে যত ডাটা আছে তা কোনো না কোন ওয়েব সার্ভারে জমা আছে। ওয়েব সার্ভার গুলো সকলে মিলে Apache, Nginx সফটওয়্যারের মাধ্যমে HTTP/HTTPS নেটওয়ার্ক প্রোটোকল ইউজ করে একটার সাথে আরেকটা সংযুক্ত থাকে। আর এই কানেক্টেড থাকা ওয়েব সার্ভারগুলো মিলিত হয়ে ইন্টারনেটের সৃষ্টি করেছে। 
আমরা চাইলেই এখন যে কোন ক্লাইন্ট সফটওয়্যার ব্যবহার করে ওয়েব সার্ভার থেকে যে কোনো ফাইল সংগ্রহ ও মডিফাই করে পারি। 

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

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

৩) ই-মেইল সার্ভারঃ আমরা জিমেইল ইউজ করে যে মেইল আদান-প্রদান করি তা সম্পাদন হয় গুগলের ডেডিকেটেড ই-মেইল সার্ভার দিয়ে। ই-মেইল সার্ভারগুলো সাধারণত কনফিগার করা থাকে ইমেইলের যাবতীয় কাজের জন্য। আপনি যখন একটি ওয়েব হোস্টিং নিবেন তখন সেখানে আপনাকে ই-মেইল সার্ভার মূল স্পেসের সাথে আলাদাভাবে দেওয়া হয়। 
বর্তমান সময়ের কিছু পপুলার ই-মেইল সার্ভার যেমন Gmail, Outlook, iCloud ইত্যাদি প্রি-কনফিগারড সার্ভিস প্রদান করে। এছাড়া আপনি নিজে ই-মেইল সার্ভার নিয়ে কনফিগার করে ব্যবহার করতে পারবেন। 

ই-মেইল সার্ভারের প্রকারভেদঃ
ক) ইনকামিং মেইল সার্ভারঃ Incoming Mail Server ব্যবহার করা হয় মেইল রিসিভ করে স্টোর করার জন্য যেখানে POP3 ও IMAP প্রোটোকল ইউজ করা হয়।
খ)  আউটগোয়িং মেইল সার্ভারঃ Outgoing Mail Server প্রতিটি মেইল সঠিকভাবে প্রেরকের কাছে পাঠানোর কাজ করে। আউটগোয়িং মেইল সার্ভার SMTP প্রোটোকল ইউজ করে তার কাজ সম্পাদন করে। 
৪) এফটিপি সার্ভারঃ FTP সার্ভার একটি জনপ্রিয় ফাইল ট্র্যান্সফার সার্ভার সিস্টেম। ফাইল ট্র্যান্সফার প্রোটোকল হল স্ট্যান্ডার্ড ডাটা আদান-প্রদান করার প্রক্রিয়া। ইন্টারনেটে যত পরিমাণ ফাইল ডাউনলোড বা শেয়ার করা হয় তার সব গুলো FTP সার্ভারের মাধ্যমে হয়ে থাকে। 
এফটিপি সার্ভার ফাইল ট্র্যান্সফার করার জন্য SSL/TLS সিকিউরিটি ইউজ করে। এতে এক সার্ভার থেকে অন্য সার্ভারে সুরক্ষিতভাবে ফাইল ট্র্যান্সফার হয়। আপনারা অনেকেই ব্রডব্যান্ড ইন্টারনেট ব্যবহার করেন। খেয়াল করে দেখবেন ISP থেকে আপনাকে একটি BDIX FTP সার্ভার দিবে যা থেকে আপনি সব ধরনের ফাইল হাই স্পিডে ডাউনলোড করতে পারবেন। 
এমনকি আপনি আপনার নিজের কম্পিউটারকে FTP সার্ভার বানিয়ে যে কোন জায়গা বা ডিভাইস থেকে হার্ডডিস্কের ফাইল ম্যানেজ করতে পারবেন। 
৫। ডাটাবেজ সার্ভারঃ Database সার্ভার ওয়েব সার্ভারের মতই অনেক বিশাল সার্ভার সিস্টেম। মূলত একটি ওয়েবসাইট বা অ্যাপ্লিকেশনের সকল ডাটা ডাটাবেজ সার্ভারে জমা থাকে। এই সার্ভারগুলোতে ইউজারের তথ্য যেমন পেমেন্ট হিস্টোরি, ইউজার নেম, পাসওয়ার্ড, ই-মেইল, ইনভেন্টরি ইত্যাদি জমা থাকে। 
ডাটাবেজ সার্ভারের সব থেকে বড় উদাহরণ হল পাবলিক পরীক্ষার রেজাল্ট শিট। প্রতিবছর লাখ লাখ শিক্ষার্থীর পরীক্ষার রেজাল্ট সংরক্ষিত থাকে ডাটাবেজ সার্ভারে। অন্যদিকে প্রতিটি ওয়েবসাইট বা অ্যাপ ডাটাবেসের সাথে কানেক্টেড থাকে। বর্তমান সময়ের সব থেকে বড় ও পপুলার ডাটাবেজ সফটওয়্যার হলো MongoDB ও MySQL যেখানে টেবিল আকারে সব ডাটা সংরক্ষণ করা হয়। 
৬) প্রক্সি সার্ভারঃ প্রক্সি সার্ভারগুলো তৈরি করা হয় গতানুগতিক ইন্টারনেট গেটওয়ে ইউজ না করে পার্সোনাল গেটওয়ে তৈরি করা। এতে আপনি অনেক সার্ভিস যেগুলো আপনার এলাকায় থেকে ইউজ করতে সমস্যা হয় সেগুলো ব্যবহার করতে পারবেন। 
অর্থাৎ ইন্টারনেট ইউজ করতে যদি আপনার Getway জাতীয় কোন সমস্যা থাকে তখন Proxy সার্ভার দ্বারা আপনি এই সমস্যার সমাধান করতে পারবেন। 
৭) লোকাল সার্ভারঃ Local Server হল যদি কোন ডেক্সটপ কম্পিউটারে সার্ভার সফটওয়্যার ইন্সটল করা হয় তখন উক্ত কম্পিউটারটি লোকাল সার্ভার হিসেবে কাজ করবে। অর্থাৎ আপনার অফিসে যদি ১০ টি কম্পিউটার থাকে এবং প্রতিটাতেই যদি সার্ভার সেটআপ করা থাকে, তাহলে প্রতিটি কম্পিউটার একেকটি লোকাল সার্ভার। 
৮) ক্লাইন্ট সার্ভারঃ Client Server অনেক কাজের একটি সার্ভার সিস্টেম। কারণ ক্লাইন্ট সার্ভার গঠিত হয় কয়েকটি ডেডিকেটেড সার্ভার নিয়ে। অর্থাৎ যখন কয়েকটি ডেডিকেটেড সার্ভার একসাথে সংযুক্ত হয়ে নেটওয়ার্ক তৈরি করে একটি ক্লাইন্ট কম্পিউটারের সাথে কানেক্ট হয় তখন তাকে ক্লাইন্ট সার্ভার বলা হয়। যেমন বড় বড় অফিসগুলোতে দেখবেন Local Area Network ব্যবহার করে ক্লাইন্ট সার্ভার তৈরি করে। তারপর অফিসের সকল ধরনের ফাইল ট্র্যান্সফার, প্রিন্টিং সহ অন্যান্য বিষয় পরিচালনা করে।

সার্ভার ডাউন হওয়ার কারন-
--------------
সার্ভার ডাউন এর অর্থ হল কোন কারণে উক্ত সার্ভার রেসপন্স করছে না অথবা উক্ত সার্ভারে যে সার্ভিস আছে তা অ্যাক্সেস করা যাচ্ছে না। সার্ভার ডাউন হওয়ার অনেক গুলো কারণ থাকতে পারে। নিচে পর্যায়ক্রমে সেগুলো বর্ণনা করা হল। 

হার্ডওয়্যার ত্রুটিঃ আমরা জানি একটি সার্ভার তৈরি হয় হার্ডওয়্যার ও সফটওয়্যারের সমন্বয়ে। বিশেষত একটি সার্ভার আপ অ্যান্ড রানিং রাখতে হলে আমাদের অনেক উন্নত মানের হার্ডওয়্যার লাগে। বিভিন্ন হার্ডওয়্যার কোম্পানি সার্ভার তৈরি করার জন্য বিশেষ বিশেষ হার্ডওয়্যার যেমন প্রসেসর, র‍্যাম, হার্ডডিস্ক/এসএসডি তৈরি করে থাকে। এখন সার্ভার পরিচালনার সময় যদি প্রধান প্রধান হার্ডওয়্যারের মধ্যে কোন একটায় সমস্যা হয় তাহলে পুরো সার্ভার ক্রাশ করবে এবং ডাউন হয়ে পড়বে। কারণ সার্ভার যখন সেটআপ করা হয় তখন তা যেন ২৪/৭ ঝামেলা ছাড়া চলে সে বিষয়ে সতর্ক থাকা হয়। এ কারণে যদি হার্ডওয়্যার সমস্যা করে তখন সার্ভার কাজ করা বন্ধ করে দেয়। সার্ভার ডাউন সমস্যার সব থেকে বড় সমাধান হলো ক্লাউড সার্ভারে ব্যাকআপ রাখা। এতে যখনি কোন সমস্যা হবে সাথে সাথে ব্যাকআপ রিষ্টোর করলেই সার্ভার সচল থাকবে এবং কখনই ডাউন হবে না।

সফটওয়্যার ত্রুটিঃ সার্ভার তৈরি করার জন্য যেমন হার্ডওয়্যারের প্রয়োজন পরে তেমনি সফটওয়্যারের প্রয়োজন পরে। কিন্তু সার্ভার সফটওয়্যার গুলো সব সময় আপডেটেড না রাখলে তা ফ্রিজ বা অন্য কোনো সমস্যা দেখা দিতে পারে। সফটওয়্যার কাজ না করলে পুরো সার্ভার সিস্টেম কাজ করবে না। এতে সার্ভারে রাখা কোনো ফাইল অ্যাক্সেস করা যাবে না। যত সার্ভিস হোস্ট করা আছে সেগুলো অকেজো হয়ে যাবে। তো এরকম কোনো সফটওয়্যার ইস্যু থাকলে সার্ভার ডাউন হয়ে থাকবে। এই কারণে সবসময় সার্ভার সম্পর্কিত সফটওয়্যার গুলো সব সময় আপ টু ডেট রাখতে হবে। 

মানবসৃষ্ট ত্রুটিঃ প্রতিটি সার্ভার ম্যানেজ করার জন্য অন্যান্য রিসোর্স এর সাথে সাথে মানুষের সাহায্য লাগে। এখন একজন অনভিজ্ঞ লোক যার সার্ভার ম্যানেজ করার সঠিক জ্ঞান বা অভিজ্ঞতা নেই, এমন লোকের হাতে সার্ভার ছেড়ে দিলে ভুল হওয়ার সম্ভাবনাই বেশি। অর্থাৎ সার্ভার ডাউন ঠেকানোর জন্য অভিজ্ঞ লোক দ্বারা সার্ভার রক্ষণাবেক্ষণ করতে হবে। নাহলে তার একটি ভুলের কারণে পুরো সার্ভার রুম কাজ করা বন্ধ করে দিতে পারে।

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

সাইবার অ্যাটাকঃ DDoS নামে একটা হ্যাকিং অ্যাটাক আছে যা করা হয় মূলত সার্ভার ডাউন করে দেওয়ার জন্য। এই অ্যাটাকে সার্ভারে বিপুল পরিমাণ ফেক HTTP/HTTPs রিকোয়েস্ট পাঠানো হয়। একসাথে অনেক রিকোয়েস্ট প্রসেস করার জন্য অনেক সময় সার্ভার বিজি হয়ে আনস্টেবল হয়ে যায় ফলে সার্ভার ডাউন হয়ে থাকে। এই সমস্যার সমাধানের জন্য ক্লাউড সার্ভার ইউজ করার পাশাপাশি সার্ভার রিসোর্স বৃদ্ধি করার প্রয়োজন পরে।