شما اینجا هستید >   دانشنامه
دانشنامه صفر و یک
تاریخچه برای کلاینت سرور تاریخچه 08/07/2012 01:13:27 ب.ظ تا

در زمینه ی معماری Server-Client یک سرور برنامه ای کامپیوتری است که برای پاسخ دهی به درخواست های سایر برنامه ها اجرا می شود. از این رو سرور مسئول انجام دادن تعدادی وظیفه (Task) محاسباتی است که از طرف مشتری (Client) به سمتش ارسال می شوند. Clientها می توانند در یک کامپیوتر اجرا شوند و یا از طریق شبکه به برنامه ی سرور دسترسی یابند. در یک تعریف بیشتر رایج، سرور یک کامپیوتر فیزیکال (یک سیستم سخت افزاری) است که برای اجرای یک ویا چند سرویس بعنوان میزبان(Host) برای سرویس دهی به نیازهای کاربران سایر کامپیوترهای تحت شبکه، تخصیص می یابد. 
در زمینه ی شبکه بندی با پروتکل اینترنتی (IP)، یک سرور برنامه ای است که بعنوان ناظر سوکت ها (Socket-listener) عمل می کند. سرور ها معمولا سرویس های اساسی را در سراسر شبکه برای کاربران مختلف ائم از کاربران خصوصی(Private) در یک سازمان گسترده ویا کاربران عمومی که از اینترنت استفاده می کنند را فراهم می کنند. برای مثال، وقتی که یک کلمه را درون یک موتور جستجو وارد می کنید، درخواست شما از طریق کامپیوترتان و تحت اینترنت به سمت سروری ارسال می شود که تمام صفحات وب مرتبط با جستوجوی شما را ذخیره نموده است. در اینجا موتور جستجو(برنامه سرور) یک پاسخ مناسب(صفحه پیدا شده) را به سمت کامپیوتر شما (client) ارسال می کند. 




کاربردها


به لحاظ سخت افزاری لغت Server بطور معمول تعیین کننده ی مدل های کامپیوتر در نظر گرفته شده برای میزبانی برنامه های کاربردی تحت تقاضای سنگین، در یک محیط شبکه ای است. در این مدل پیکره بندی Client-Server به تعداد یک و یا بیشتر دستگاه(چه یک کامپیوتر و یا وسیله کامپیوتری)، به اشتراک گذاری اطلاعات با یکدیگر با عمل میزبان گونه برای سایرین می پردازند. درحالیکه تقریبا هر نوع کامپیوتر شخصی قادر است به عنوان سرور شبکه ایفای نقش کند. اما مثلا یک سرور اختصاصی دارای ویژگی هایی خواهد بود که آن را برای محیط های تولیدی مناسب می کند و می تواند در این محیط ها به سرویس دهی بهتری در مقایسه با یک کامپیوتر شخصی بپردازد. این ویژگی ها ممکن است شامل یک Cpu سریعتر، یک Ram ارتقاع یافته با کارایی بالا و معمولا بیش از یک هارد دیسک با ظرفیت بالا باشند. تفاوت ها واضع تر عبارت اند از: افزونگی مشخص شده در منابع تغذیه، اتصالات شبکه و حتی خودServer. 
بین سالهای 1990 تا 2000 یک افزایش چشمگیر در استفاده از سخت افزارهای اختصاصی باعث ظهور تجهیزات برنامه های کاربردی سروری خود-شامل(Self-Contain) بود که برای مثال می توان به ابزارک(widget) جستجوی Google اشاره کرد. این وسیله واحدی است که در آن سخت افزار و نرم افزار را در یک بسته بندی خارج از کادر (out-of-the-box) ترکیب می کند. همچنین نمونه های ساده تری از ابزار شامل Switchها Routerها Gatewayها وPrint Serverها می توان بیان نمود که همگی به واسطه ی پیکره بندی Plug-And-Play قابل پیاده سازی می باشند. سیستم عامل های پیشرفته از قبیل Microsoft windows ونیز توزیع های Clientی آن به خوبی براساس معماری Client-Server طراحی شده اند. این سیستم عامل ها با ایجاد سخت افزارهای انتزاعی اجازه می دهند که طیف گسترده ای از نرم افزار ها بواسطه ی اجزاء کامپیوتر، در حال پردازش باشند. به معنای دیگر، سیستم عامل به عنوان سخت افزاری در حال خدمت به نرم افزار بنظر می رسد. 
اصطلاح سرور بصورت گسترده در تکنولوژی اطلاعات(IT) به کار می رود. علی رغم تنوع زیاد در دسته بندی سرورها(سخت افزاری، نرم افزاری) به لحاظ تئوری هر فرآیند کامپیوتری که یک منبع را بین یک و یا بیشتر فرآیند Client به اشتراک می گذارد یک سرور است که برای ارتباط با آن- بجر در برنامه نویسی سطح پایین- باید از API ها استفاده نمود. سیستم عامل های سروری قادر به اجرای برنامه ها در پس زمینه (Background) می باشند که به آنها سرویس ها یا daemonها می گویند. 
چنین برنامه هایی قادرند که در یک وضعیت sleep منتظر بمانند و در صورت لزوم ظاهر شوند. برای مثال ازچنین برنامه هایی می توان به نرم افزارApache HTTP Server در لینوکس ویا IIS در ویندوز اشاره کرد. 
از آنجایی که هر نرم افزاری که سرویس را فراهم می کند می تواند یک سرور نامیده شود، کامپیوتر های شخصی مدرن را می توان به عنوان یک جنگل از سرور ها و Clientها که بصورت موازی فعالیت می کنند قلمداد کرد. اینترنت نیز به خودی خود یک جنگل از سرورها و Clientهاست.عمل درخواست یک صفحه ی وب از کیلومترها دورتر، صرفا شامل مجموعه ای از پروتکل هاست که خود این پروتکل ها شامل مثال های بسیاری از سرور های سخت افزاری و نرم افزاری هستند. کوچکترین آنها روترها، مودم ها و سرورهای نام دامنه(DNS) هستند و سرورهای مختلف دیگری هم لازم هستند تا صفحه ی جهانی وب را برای ما فراهم آورند (Www). برای فهم بیشتر این موضوع یک مثال از اشتراک گذاری فایلها را در نظر بگیرید. تا زمانی که فایل ها روی یک ماشین صرفا موجود باشند نمیتوان آن ماشین را یک Server قلمداد کرد بلکه مکانیزمی که باعث اشتراک این فایل ها با Client به واسطه ی سیستم عامل می شود، همانServer است. 

  

|برگشت |