সার্ভার কি? (Server)

সার্ভার 101: এটি কী, কেন এটি গুরুত্বপূর্ণ এবং আরও অনেক কিছু

, , , , , , ,

আপনি কিভাবে ইন্টারনেটে যেকোন ওয়েবসাইট অ্যাক্সেস করতে পারেন? ইন্টারনেটের মত আধুনিক নেটওয়ার্কগুলো কিসের উপর নির্ভর করে চলে?

হ্যাঁ, সার্ভার এর সাহায্যে।

কিন্তু তারা ঠিক কি এবং কিভাবে কাজ করে?

তা জানতে হলে পড়তে থাকুন!

ভূমিকা (Introduction)

Here is the English version of this Blog.

এই ব্লগে, আমরা সার্ভার সম্পর্কে অনেক কিছু শিখবো, যার মধ্যে রয়েছে:

  • সার্ভার কি?
  • কেন আমাদের সার্ভার সম্পর্কে শেখা উচিত?
  • কেন তারা বিদ্যমান? (why do they exist?)
  • সার্ভার কম্পিউটার VS ডেস্কটপ কম্পিউটার
  • তারা কিভাবে কাজ করে?
  • সার্ভারের প্রকারভেদ

আসল প্রশ্নের উত্তর দিয়ে শুরু করা যাক…

সার্ভার কি?

সার্ভার হল একটি কম্পিউটার প্রোগ্রাম যা অন্যান্য কম্পিউটার প্রোগ্রামে কিছু resource বা functionality (কার্যকারিতা) প্রদান করে।

সার্ভার প্রোগ্রাম গুলো চালানো কম্পিউটার গুলোকে প্রায়ই সার্ভার হিসাবেও উল্লেখ করা হয়, যদিও এটা সঠিক নয়।

কেন আমাদের সার্ভার সম্পর্কে শেখা উচিত?

সার্ভার আজকের তথ্য যুগে একটি গুরুত্বপূর্ণ ভূমিকা পালন করে। সার্ভার সম্পর্কে শেখার প্রধান সুবিধাগুলো হল:

  1. উচ্চ বেতনের চাকরি (High Paying Jobs): সার্ভার এর ব্যাপার বোঝা এবং তারা কীভাবে কাজ করে তা জানতে পারলে IT-তে উচ্চ বেতনের চাকরির চাকরির সুযোগ উন্মুক্ত হতে পারে, বিশেষ করে DevOps এ।
  2. ক্লাউড কম্পিউটিং (Cloud Computing): বিশাল ব্যবসায়িক লাভের কারনে কারণে, অনেক কোম্পানি তাদের ডেটা এবং অ্যাপ্লিকেশনগুলোকে AWS, Azure, GCP, ইত্যাদি এ সকল প্লাটফর্মে নিয়ে যাচ্ছে। ক্লাউড কম্পিউটিং এর একটি মূল অংশ হল – সার্ভার। সুতরাং, প্রযুক্তি শিল্পে কাজ করতে আগ্রহী যে কারও জন্য তাদের আয়ত্ত করা একটি মূল্যবান দক্ষতা হতে পারে সার্ভার
  3. নিরাপত্তা (Security): সার্ভারের উপর প্রায়ই সাইবার আক্রমণ হয়, তাই কীভাবে সেগুলোকে সুরক্ষিত করা যায় এবং সম্ভাব্য হুমকি থেকে রক্ষা করা যায় তা বোঝা গুরুত্বপূর্ণ৷
  4. উন্নত কর্মক্ষমতা (High performance): সার্ভারগুলো কীভাবে কাজ করে এবং কীভাবে সেগুলো ম্যানেজ করতে হয় তা বোঝার মাধ্যমে, আপনি আপনার ওয়েবসাইট বা অ্যাপ্লিকেশনের কর্মক্ষমতা অপ্টিমাইজ করতে পারবেন।
  5. খরচ বাঁচানো (Cost Savings): সার্ভারগুলো বোঝার মাধ্যমে, আপনি যে হার্ডওয়্যার এবং সফ্টওয়্যার ব্যবহার করেন সে সম্পর্কে আরও ভাল-অবহিত সিদ্ধান্ত নিতে পারেন, যা খরচ কমাতে সাহায্য করতে পারে।
  6. অটোমেশন (Automation): সার্ভার ম্যানেজমেন্ট এর অনেক কাজ পরিশ্রমী এবং বারবার করতে হয়। কনফিগারেশন (configuration) এবং deployment এর মতো কাজগুলো স্বয়ংক্রিয় (automate) করা হলে সময় বাঁচাতে এবং human-error কমাতে পারে।
  7. স্কেলেবিলিটি (Scalability): সার্ভারগুলো কীভাবে সেট আপ এবং সামলাতে হয় তা জানার ফলে আপনি সহজেই আপনার অ্যাপ্লিকেশানের user এর চাহিদা মেটাতে আপনার সার্ভার অবকাঠামো (infrastructure) স্কেল করতে পারবেন।

হ্যাঁ, সার্ভার সম্পর্কে শেখা অবশ্যই সুবিধাজনক।

কিন্তু, আপনি জিজ্ঞাসা করতে পারেন…

কেন সার্ভার বিদ্যমান? (Why Servers exist?)

বিভিন্ন resource এবং information এর স্টোরেজ, ম্যানেজমেন্ট এবং বিতরণের জন্য একটি কেন্দ্রীয় অবস্থান প্রদান করে সার্ভার

সার্ভারের উৎস 1960 এর দশকে ফিরে পাওয়া যেতে পারে, যখন বেশ বড় ও ব্যয়বহুল মেইনফ্রেম কম্পিউটার গুলো ডেটা স্টোরেজ (সংরক্ষণ) এবং ম্যানেজমেন্ট এর জন্য প্রয়োগ করা হত। সেগুলো প্রাথমিকভাবে সরকারী সংস্থা এবং বড় কর্পোরেশনগুলো ব্যবহার করত।

প্রযুক্তির উন্নতির সাথে সাথে সার্ভারগুলো আরও ছোট, আরও শক্তিশালী এবং আরও সাশ্রয়ী হয়েছে৷ এটি ব্যবসা, শিক্ষা, স্বাস্থ্যসেবা এবং সরকার সহ বিভিন্ন শিল্পে সার্ভারের ব্যাপক গ্রহণের দিকে পরিচালিত করে।

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


সার্ভার কম্পিউটার VS ডেস্কটপ কম্পিউটার (Server VS Desktop)

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

সার্ভার কম্পিউটার সাধারণত তাপ এবং দক্ষতার জন্য ডেটা সেন্টারে রাখা হয়। একাধিক user এবং project এ ভাগ করার জন্য তারা প্রায়ই ভার্চুয়ালাইজড হয়ে থাকে। এই মেশিনগুলো ভারী কাজের চাপ এবং প্রচুর পরিমাণে request এবং ডেটা সামলানোর জন্য ডিজাইন করা হয়েছে। তাদের সাধারণত high-performance (উচ্চ-কার্যক্ষমতার) বৈশিষ্ট্য থাকে এবং high availability (উচ্চ প্রাপ্যতা) এবং fault-tolerance (দোষ-সহনশীলতা) নিশ্চিত করে সর্বদা (24/7) চালানোর জন্য তৈরি করা হয়। এছাড়াও, সার্ভারগুলোতে প্রায়ই redundancy (অতিরিক্ত) বিল্ট ইন থাকে, যা নিশ্চিত করে যে, যদি একটি অংশ ব্যর্থ হয় তবে অন্যটি তার জায়গা নিতে পারে, user দের ডাউনটাইম এবং ব্যাঘাত কমাতে।

ডেস্কটপ কম্পিউটার, অন্যদিকে, একক user এর ব্যক্তিগত ব্যবহারের জন্য ডিজাইন করা হয়েছে এবং সাধারণত ওয়ার্ড প্রসেসিং, ইন্টারনেট ব্রাউজিং, গেমিং ইত্যাদি কাজের জন্য ব্যবহৃত হয়৷ সার্ভারের মত, এই কম্পিউটারগুলো ভারী কাজের চাপ এবং ডেটা সামলানোর জন্য তৈরি করা হয় না। পরিবর্তে, এগুলো আরও মৌলিক, দৈনন্দিন ব্যবহারের জন্য উদ্দিষ্ট এবং সাধারণত দিনে কয়েক ঘন্টার জন্য প্রয়োজন। এগুলো বিভিন্ন ফর্ম ও স্পেসিফিকেশনে আসে এবং user এর নির্দিষ্ট চাহিদা এবং পছন্দ অনুসারে কাস্টমাইজ করা যায়৷

আচ্ছা বুঝলাম, কিন্তু…

সার্ভার কিভাবে কাজ করে?

বিশেষ কিছু সফ্টওয়্যার প্রোগ্রাম চালিয়ে সার্ভাররা কাজ করে, যা তাদের একসাথে একাধিক request গ্রহণ করতে দেয়।

‘সার্ভার’ হল সেই ডিভাইস বা প্রোগ্রাম যা resource/information সংরক্ষণ এবং বিতরণ করে। ‘ক্লায়েন্ট’ হল এমন ডিভাইস বা প্রোগ্রাম যা সার্ভারকে অনুরোধ করে সেই resource/information গুলো ব্যবহার করে। একসাথে, এই architecture কে বলা হয় ‘ক্লায়েন্ট-সার্ভার মডেল‘ (‘Client-Server Model’)।

যখন একটি ক্লায়েন্ট একটি সার্ভার থেকে কিছু তথ্য বা resource অনুরোধ (request) করে, সার্ভার অনুরোধটি প্রক্রিয়া করে এবং ক্লায়েন্টের কাছে তথ্য বা resource গুলো ফেরত (response) পাঠায়। এটিকে বলা হয় ‘Request-Response Cycle’।

উদাহরণ হিসেবে Google সার্চ নেওয়া যাক। আপনি যখন Google এ কিছু অনুসন্ধান করেন, তখন ‘ক্লায়েন্ট’ হিসাবে আপনার ব্রাউজার Google-কে একটি অনুরোধ ‘request’ পাঠায়। যখন Google এর একটি সার্ভার ইন্টারনেটের মাধ্যমে অনুরোধ পায়, তখন সেটি তার logic/function (যুক্তি/ফাংশন) চালায় এবং আপনার ব্রাউজারকে একটি ‘response’ পাঠায়, যা আপনি অনুসন্ধান ফলাফল হিসাবে দেখতে পান।

সার্ভারের প্রকারভেদ (Server Types)

অনেক ধরনের সার্ভার আছে, এবং প্রতিটির একটি নির্দিষ্ট উদ্দেশ্য রয়েছে। সবচেয়ে প্রচলিত সার্ভারের মধ্যে রয়েছে:

  • ওয়েব সার্ভার (Web): এই সার্ভারগুলো ওয়েব পেইজ এবং ডকুমেন্ট বিতরণ করে যা সাধারণত আমরা ওয়েব ব্রাউজার ক্লায়েন্ট দিয়ে ব্যবহার করি। উদাহরণ: Apache, Nginx.
  • ডাটাবেস সার্ভার (Database): এই সার্ভারগুলো প্রচুর পরিমাণে ডেটা স্টোরেজ পরিচালনার কাজে লাগে, যেমন অনলাইন transactions (লেনদেন), ইনভেন্টরি, গ্রাহকের তথ্য ইত্যাদি। উদাহরণ: MySQL, MongoDB।
  • ফাইল সার্ভার (File): এই সার্ভারগুলো ফাইল সংরক্ষণ এবং পরিচালনা করে, যেমন documents, ছবি এবং ভিডিও। উদাহরণ: FileZilla।
  • মেইল সার্ভার (Mail): এই সার্ভারগুলো ইমেইল মেসেজ পরিচালনা ও বিতরণ করে।
  • প্রিন্ট সার্ভার (Print): এই সার্ভারগুলো সংযুক্ত প্রিন্টারগুলোতে প্রিন্ট কাজগুলো পরিচালনা এবং বিতরণ করে।

ইত্যাদি।

আপনি সম্ভবত এই মুহূর্তে একটি সার্ভারের সাথেই ইন্টারঅ্যাক্ট করছেন!

উপসংহার (Conclusion)

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

সার্ভার সম্পর্কে শেখার জন্য আপনাকে ধন্যবাদ!

আপনি যদি সার্ভার এবং ক্লাউড কম্পিউটিং-এর জগতে আরও গভীরে যেতে চান, তাহলে আরও খাঁটি DevOps conent এর জন্য TechMormo Newsletter এ Subscribe করতে ভুলবেন না। যদি আপনি ভিডিও দেখতে পছন্দ করেন, তাহলে আমাদের YouTube Channel এ Subscribe করে ফেলুন।

সামনে আমাদের আরও অনেক exciting DevOps content আছে! 🙌

আজ এই পর্যন্তই।

Be bold and keep learning.

But most importantly,

Tech care!


Don’t see the form above? Click here.

মন্তব্য করুন

আপনার ই-মেইল এ্যাড্রেস প্রকাশিত হবে না। * চিহ্নিত বিষয়গুলো আবশ্যক।


Latest posts