ক্লায়েন্ট-সার্ভার স্থাপত্য (Client-Server Architecture)

একটি ক্লায়েন্ট-সার্ভার স্থাপত্য (Client-Server Architecture), যুক্তি (বা কোড) যা একটি অ্যাপ্লিকেশন তৈরি করে তা দুই বা ততোধিক উপাদানের মধ্যে বিভক্ত হয়ঃ একটি ক্লায়েন্ট যে কাজ করতে বলে (যেমন আপনার ওয়েব ব্রাউজারে চলমান জিমেইল ওয়েব অ্যাপ্লিকেশন), এবং এক বা একাধিক সার্ভার যা সেই অনুরোধটি পূরণ করে (যেমন “ইমেল পাঠান” পরিষেবাটি ক্লাউডে গুগল-এর কম্পিউটারে চলছে)। এই উদাহরণে, আপনার লেখা বহির্গামী ইমেল ক্লায়েন্ট দ্বারা পাঠানো হয় (আপনার ওয়েব ব্রাউজারে চলমান ওয়েব অ্যাপ্লিকেশন (web application)) একটি সার্ভারে (জিমেইল (gmail) এর কম্পিউটার, আপনার বহির্গামী মেইল (mail) তাদের প্রাপকদের কাছে প্রেরন করে)।

এটি স্বয়ংসম্পূর্ণ অ্যাপ্লিকেশনগুলির সাথে বৈপরীত্য করে (যেমন ডেস্কটপ অ্যাপ্লিকেশন) যা সমস্ত কাজ এক জায়গায় করে। উদাহরণস্বরূপ, মাইক্রোসফ্ট ওয়ার্ডের (Microsoft Word) মতো একটি ওয়ার্ড প্রক্রিয়াকরণ প্রোগ্রাম ইনস্টল করা এবং সম্পূর্ণরূপে আপনার কম্পিউটারে চালানো হতে পারে।

এটা যেসব সমস্যাতে দৃষ্টিপাত করে

একটি ক্লায়েন্ট-সার্ভার স্থাপত্যের (client-server architecture) একটি বড় চ্যালেঞ্জ স্বয়ংসম্পূর্ণ অ্যাপ্লিকেশনের সমস্যা সমাধান করা, যেমন : নিয়মিত আপডেট। একটি স্বয়ংসম্পূর্ণ অ্যাপে, প্রতিটি আপডেটের জন্য, ব্যবহারকারীদের সর্বশেষ সংস্করণ ডাউনলোড এবং স্থাপন করতে হবে। কল্পনা করুন অ্যামাজনের সমস্ত পন্যের ক্যাটালগ ব্রাউজ করতে সক্ষম হতে আপণাকে আগে সব ডাউনলোড করতে হবে!

এটা কিভাবে সাহায্য করে

একটি দূরবর্তী সার্ভার (server) বা পরিষেবাতে অ্যাপ্লিকেশনের যুক্তি প্রয়োগ করে, অপারেটররা ক্লায়েন্ট-সাইডে (client-side) যুক্তি পরিবর্তন করার প্রয়োজন ছাড়াই এটি আপডেট করতে পারে। এর মানে আপডেট অনেক বেশি ঘন ঘন করা যেতে পারে। সার্ভারে ডেটা সঞ্চয় করায় অনেক ক্লায়েন্টকে একই ডেটা দেখতে এবং শেয়ার করতে দেয়। প্রথাগত অফলাইন ওয়ার্ড প্রসেসরের (word processor) তুলনায় একটি অনলাইন ওয়ার্ড প্রসেসর (word processor,) ব্যবহারের মধ্যে পার্থক্য বিবেচনা করুন। পূর্বে, আপনার ফাইল সার্ভার-সাইডে বিদ্যমান থাকতো এবং অন্যান্য ব্যবহারকারীদের সাথে ভাগ করা যেতো যারা কেবল সার্ভার থেকে ডাউনলোড করতো। উত্তরাধিকার জগতে (Legacy World), ফাইলগুলিকে প্রয়োজনে অপসারণযোগ্য মিডিয়াতে অনুলিপি (copied) করা (floppy disks!) এবং ব্যক্তিদের সাথে ভাগ করা হয়েছে।


সর্বশেষ পরিবর্তিত February 24, 2024: [bn] Update main branch with dev-bn (#2894) (19b78e4)