یک سرور در واقع کامپیوتر اختصاصی هست که به Client ها مانند کامپیوترهای رومیزی معمولی یا همون PC یا ایستگاه های کاری خدمات ارائه می دهد. بنابراین این یک ماشین متمرکز است که توسط آن چندین Client به اینترنت یا شبکه محلی متصل می شوند و برای یک سرویس خاص از سرور استفاده می شود.
به عنوان مثال، این سرویس می تواند یک وب سایت یا دسترسی به اطلاعات مثل (shared Folder ها) یا ایمیل باشد. به همین خاطر برای ارائه این خدمات و سرویس ها یک سرور اختصاص داده می شود تا بتواند یکی از آنها را به خوبی اداره کند.
شما یک سرور دارید که آن را برای یک وب سایت اختصاص داده اید، یک سرور برای ذخیره فایل ها و فولدر ها و یک سرور برای ایمیل. این مدل همان چیزی است که سازمان های بزرگتر از آن استفاده می کنند و یا می توانید یک سرور را تنظیم کنید که بتواند هر یک از این سرویس ها را در یک دستگاه ارائه دهد، که بیشتر در سازمان های کوچکتر اتفاق می افتد.
بنابراین بسته به نوع استفاده از آن، همه چیز به نیازهای یک سازمان بستگی دارد. وقتی مردم در مورد سرور صحبت می کنند، منظورشان یک کامپیوتر متمرکز و قدرتمند هست که Client ها توسط آنها، سرویس های مورد نیاز در شبکه را تأمین میکنند. با این وجود یک سرور فقط یک کامپیوتر فیزیکی نیست بلکه سرور در واقع نقشی است که یک کامپیوتر ایفا می کند. هر رایانه رومیزی معمولی می تواند به عنوان یک سرور تنظیم شود و لزوماً نباید یک کامپیوتر قدرتمند باشد.
به عنوان مثال، می توانید یک شبکه را در خانه راه اندازی کنید، که یک رایانه رومیزی معمولی را به عنوان یک سرور به اشتراک گذارنده فولدرها داشته باشید. رایانه ای که آن پرونده ها (فایل ها) را در یک پوشه (فولدر) مشترک دارد، سایر کامپیوتر ها می توانند به آن وصل شوند تا به آن فایلها دسترسی پیدا کنند یا همچنین می توانید از یک PC به عنوان یک وب سرور استفاده کنید و در آنجا می توانید داده های وب سایت را بر روی آن رایانه نصب کنید و سپس سایر رایانه ها می توانند به آن متصل شوند و توسط مرورگر آن سایت را باز کنند و ببینند.
با این وجود رایانه های رومیزی محدودیت های خود را دارند زیرا به دلیل طراحی نشدن برای حجم کار بزرگ، آنها نمی توانند بسیاری از ارتباطات ورودی از طریق کاربران را کنترل کنند و این مسئله تنها به دلیل ضعیف بودنه فیزیک آنها نیست بلکه به دلیل نرم افزار آنهاست زیرا سیستم عامل های کامپیوترهای معمولی تنها قادر به کنترل تعداد محدودی از ارتباطات همزمان هستند.
سرورها باید 24 ساعته و 7 روز هفته روشن و فعال باشند، زیرا برای یک سازمان بسیار حیاتی است و اگر سرور خاموش شود، می تواند یک تجارت یا سازمان را با خطر مواجه کند. بنابراین به همین دلیل است که سرورها باید قابلیت اطمینان بیشتری داشته باشند. آنها باید با سخت افزارهای قدرتمندی ساخته شوند که بتوانند بدون توقف و بدون خرابی کار را انجام دهند.
برای کامپیوترهای خانگی از پردازنده ای استفاده می کنند که صرفاً برای آنها ساخته شده است، مانند پردازنده های سری Core i اینتل. پردازنده های یک سرور هم برای آن طراحی شده مانند پردازنده Xeon Intel.
یک پردازنده سرور باید سریع باشد و توانایی انجام کارهای زیادی را همزمان داشته باشد. اکنون هر دوی این پردازنده ها قدرتمند هستند اما تفاوت هایی بین آنها وجود دارد. به عنوان مثال پردازنده های Xeon از یک محیط چند پردازشی پشتیبانی می کند، آنها برای کار با پردازنده های دیگر بصورت همزمان طراحی شده اند، به این معنی که شما می توانید دو یا چند پردازنده Xeon را روی مادربرد قرار دهید که برای سرورها طراحی شده اند و این همان چیزی است که بسیاری از سرورها برای رسیدگی به حجم کاری بزرگ نیاز دارند. پردازنده های کامپیوترهای معمولی از این قابلیت پشتیبانی نمی کنند. آنها فقط برای کار با یک پردازنده طراحی شده اند، نه با پردازنده های دیگر.
تفاوت دیگر این است که پردازنده های Xeon از رم ECC پشتیبانی می کنند. ECC به عنوان یک تصحیح کننده خطا در حافظه عمل میکند و این نوع حافظه همان چیزی است که عمدتا در سرورها استفاده می شود. سرورها باید همیشه روشن و فعال باشند و خطاهای حافظه می توانند سرور را با مشکل مواجه کنند.
کاری که ECC انجام می دهد این است که تشخیص می دهد داده ها به درستی توسط ماژول RAM پردازش شده باشد ولی در صورت بروز مشکل خطاهای حافظه را تصحیح می کند. بنابراین استفاده از حافظه ECC در سرورها فقط یک احتیاط اضافی برای جلوگیری از خاموش شدن سرور است و پردازنده های Intel Core از ECC Ram پشتیبانی نمی کنند، اما پردازنده های AMD پشتیبانی می کنند.
بنابراین پردازنده های AMD می توانند از مقدار بیشتری از رم نیز پشتیبانی کنند. آنها حافظه کش بیشتری دارند و همچنین تعداد هسته بالاتر از پردازنده های کامپیوترهای معمولی دارند.
یک سرور همچنین باید دارای یک هارد دیسک قابل تعویض هنگام روشن بودن در پیکربندی Raid باشد، زیرا اگر هارد دیسک خراب شود، هیچ اطلاعاتی از بین نمی رود. داده ها بر روی دیسک های مختلف کپی می شود و اگر یک هارد دیسک خراب شود، می توان بدون خاموش کردن سرور آن را حذف و جایگزین کرد. قابلیت Raid اطلاعات موجود در هارد دیسک جدید را به طور خودکار بازسازی می کند و هیچ اطلاعاتی از بین نمی رود.
یک سرور همچنین باید در صورت خرابی در منبع تغذیه (پاور)، از منبع تغذیه اضافی استفاده کند تا سرور همچنان به کار خود ادامه دهد. اکثر سرورها با دو پاور کار میکنند.
یک سرور باید از یک سیستم عامل سرور مانند لینوکس، ویندوز سرور و سیستم عامل Mac استفاده کند. جدیداً سرورها از از مجازی سازی پشتیبانی میکنند و با سیستم عامل های ESXi و Hyper-V نیز کار میکنند. سیستم عامل های سرور قوی و پایدار هستند. آنها برای اجرای بدون توقف طراحی شده اند و قادر به اداره هزاران اتصالات همزمان هستند.
انواع مختلفی از سرورها وجود دارد، وقتی از انواع سرور صحبت میکنم، منظورم درباره نوع خدماتی هست که سرور ارائه می دهد.
یه وب سرور میزبان وب سایت است. هر وب سایتی که با مرورگر خود آن را باز میکنید، از طریق اینترنت به آن سرور وب وصل می شوید. سرور وب شامل اطلاعات وب سایت از جمله کد HTML و گرافیک ها می باشد که نوع خدمات و سرویس دهی آن وب سایت می باشد.
نوع دیگر سرور، سرور ایمیل است. سرور ایمیل همان چیزی است که ارسال و دریافت ایمیل را آسان می کند و شما می توانید با استفاده از مرورگر وب خود به ایمیل دسترسی پیدا کنید و یا می توانید با استفاده از پروتکل های ایمیل مانند IMAP، POP3 و SMTP از یک کلاینت توسط نرم افزار Outlook یا Thunderbird استفاده کنید و به آن متصل شوید.
سرور پایگاه داده نوع دیگری از سرور است، این نوع سرور داده ها را در دیتابیس ذخیره کرده و کامپیوترهای موجود در شبکه با استفاده از درخواست ها (Query) به SQL متصل شده و سرویس مورد نظر را می گیرند. اینها فقط چند نمونه از کارهایی است که سرورها انجام می دهند اما تعداد بسیار بیشتری نیز وجود دارد.