سرور (Server)

سرور قطعه‌ای از سخت‌افزار یا نرم‌افزار رایانه است که قابلیت‌هایی را برای سایر برنامه‌ها یا دستگاه‌ها به نام «کلینت» فراهم می‌کند. این معماری مدل کلاینت-سرور نامیده می شود. سرورها می توانند عملکردهای مختلفی را ارائه دهند که اغلب به آنها “سرویس” گفته می شود  و این سروریس به صورت شبانه روزی صورت میگیرد.  مانند به اشتراک گذاری داده ها یا منابع بین چندین مشتری یا انجام محاسبات برای یک کلاینت. یک سرور واحد می تواند به چندین مشتری سرویس دهد و یک کلاینت می تواند از چندین سرور استفاده کند. یک فرآیند مشتری ممکن است در یک دستگاه اجرا شود یا ممکن است از طریق یک شبکه به یک سرور در دستگاه دیگری متصل شود. سرورهای معمولی عبارتند از سرورهای پایگاه داده، سرورهای فایل، سرورهای پست الکترونیکی، سرورهای چاپ، سرورهای وب، سرورهای بازی، و سرورهای برنامه.

سیستم‌های سرویس گیرنده-سرور معمولاً توسط مدل درخواست-پاسخ ( اغلب با آن شناسایی می‌شوند) پیاده‌سازی می‌شوند: یک کلاینت درخواستی را به سرور می‌فرستد، که برخی از اقدامات را انجام می‌دهد و پاسخی را به مشتری ارسال می‌کندکه معمولاً با یک نتیجه تأیید می شود. در داخل سرور ها از قطعات سخت افزاری گوناگونی استفاده شده است مانند : CPU ، سیستم خنک کننده ، رم ها ، Raid کنترلرها و … که ما در اینجا برای شما آنها را توضیح می دهیم . با توجه به قطعات سخت افزاری که در سرور ها استفاده شده است ما نیاز به نرم افزار هایی داریم که با توجه به  قطعات سخت افزاری روی سرور ها  بتواند به درستی کار کنند که اکثر شرکت ها برای سرور ها سیستم عامل هایی را به بازار عرضه کردن که این مشکل را برطرف کند.

تعیین یک کامپیوتر به عنوان “سخت افزار کلاس سرور” به این معنی است که برای اجرای سرورها بر روی کامپیوتر غیر قابل اطمینان می باشد .CPU و RAM هایی که روی کامپیوتر ها و سیستم عاملی که برای کامپیوتر ها استفاده می شود برای این طراحی نشده اند که بتوان آنها را به صورت مداوم روشن گذاشت .

اولین سرور در چه سالی تولید شد ؟

استفاده از کلمه سرور در محاسبات از تئوری صف می آید، جایی که به اواسط قرن بیستم باز می گردد، به ویژه در کندال (1953) (همراه با “سرویس”)، مقاله ای که نماد کندال را معرفی کرد، استفاده شد. در مقالات قبلی، مانند Erlang (1909)، از اصطلاحات دقیق تر مانند “اپراتورهای [تلفن]” استفاده شده است.

در محاسبات، «سرور» حداقل به RFC 5 (1969)،  یکی از اولین اسنادی است که ARPANET (سلف اینترنت) را توصیف می کند، و با «کاربری» در تضاد است و دو نوع میزبان را متمایز می کند: «سرور- میزبان” و “کاربر میزبان”. استفاده از “سرویس” نیز به اسناد اولیه مانند RFC 4 برمی گردد،  که “serving-host” را با “using-host” متضاد می کند.

فایل Jargon “سرور” را به معنای رایج فرآیندی که سرویس را برای درخواست ها انجام می دهد، معمولاً از راه دور، با خواندن نسخه 1981 (1.1.0) تعریف می کند: سرور n. نوعی DAEMON که سرویسی را برای درخواست کننده انجام می دهدو  اغلب بر روی رایانه های غیر از رایانه ای که سرور روی آن اجرا می شود ، اجرا میکند.

عملکرد سرورها به چه صورت است؟

به بیان دقیق، عبارت سرور به یک برنامه یا فرآیند کامپیوتری (برنامه در حال اجرا) اشاره دارد. از طریق metonymy که به دستگاهی اطلاق می شود ، که برای اجرای یک یا چند برنامه سرور استفاده می شود (یا دستگاهی که به آن اختصاص داده شده است).سرور‌ها نقش مهمی در عملکرد اکوسیستم فناوری اطلاعات دارند. به طور کلی، سرور یک دستگاه یا سیستم کامپیوتری است که منابع قدرتمندی دارد و از طریق به اشتراک گذاری این منابع، پاسخ به درخواست‌های سیستم‌های متصل را ارائه می‌دهد. عملکرد اصلی یک سرور، دریافت درخواست‌ها از طریق شبکه و ارائه پاسخ مناسب به این درخواست‌ها است. سرورها برای کاربردهای مختلفی مانند میزبانی وب، پردازش داده‌های حجیم، ایمیل، بازی‌های آنلاین، و ذخیره‌سازی و به اشتراک‌گذاری فایل‌ها به کار می‌روند.

منابع سخت‌افزاری سرور نیز بسیار مهم هستند. سرورها از قطعات سخت‌افزاری خاصی تشکیل شده‌اند که بالاترین پردازش و عملکرد از آنها انتظار می‌رود. عموماً سرورها از پردازنده‌های قدرتمند با چندین عدد هسته فیزیکی و مجازی، حافظه RAM بالا و هارد‌دیسک با فضای ذخیره‌سازی چند ترابایتی تشکیل می‌شوند. این سرورها باید در فضایی نگهداری شوند که بدون هیچ‌گونه اختلال و قطعی به صورت ۲۴ ساعته روشن و به اینترنت وصل باشند.

در نهایت، دیتاسنترها نقش مهمی در نگهداری سرورها دارند. این مراکز داده به صورت تخصصی شرایط را برای استفاده از سرورها به دور از قطعی و مشکلات دیگر، فراهم می‌آورند.

کلاینت چگونه با سرور ارتباط برقرار میکند؟

در این مدل، یک سرور داده ها را برای مشتریان ارائه می دهد. ماهیت ارتباط بین مشتری و سرور درخواست و پاسخ است. این در تضاد با مدل peer to peer است که در آن رابطه متقابل بر اساس تقاضا است. در اصل، هر فرآیند رایانه‌ای که می‌تواند توسط فرآیند دیگری مورد استفاده یا فراخوانی قرار گیرد (به ویژه از راه دور، به ویژه برای اشتراک‌گذاری یک منبع) یک سرور است و فرآیند یا فرآیندهای فراخوانی یک سرویس گیرنده است. بنابراین هر کامپیوتر همه منظوره متصل به یک شبکه می تواند میزبان سرورها باشد. برای مثال، اگر فایل‌های روی یک دستگاه توسط فرآیندی به اشتراک گذاشته شود، آن فرآیند یک سرور فایل است. به طور مشابه، نرم افزار وب سرور می تواند بر روی هر کامپیوتری قابل اجرا باشد و بنابراین یک لپ تاپ یا یک کامپیوتر شخصی می تواند میزبان یک وب سرور باشد.

در حالی که درخواست-پاسخ رایج ترین طراحی مشتری-سرور است، موارد دیگری مانند الگوی انتشار-اشتراک وجود دارد. در الگوی انتشار-اشتراک، مشتریان با یک سرور pub-sub ثبت نام می کنند و در انواع مشخصی از پیام ها مشترک می شوند. این ثبت نام اولیه ممکن است با درخواست-پاسخ انجام شود. پس از آن، سرور pub-sub پیام‌های منطبق را بدون هیچ درخواست دیگری به مشتریان ارسال می‌کند: سرور پیام‌ها را به سمت کلاینت می‌فرستد، به جای اینکه کلاینت پیام‌ها را از سرور مانند درخواست-پاسخ بکشد.

سرور های محاسباتی چیست و چگونه کار میکنند؟

 سرورها (محاسبات) نقش سرور به اشتراک گذاری داده ها و همچنین به اشتراک گذاری منابع و توزیع کار است. یک کامپیوتر سرور می تواند برنامه های کامپیوتری خود را نیز ارائه دهد. بسته به سناریو، این می تواند بخشی از یک معامله quid pro quo یا به سادگی یک امکان فنی باشد. در زیر چندین سناریو را مشاهده می کنید که در آنها از یک سرور استفاده می شود.

Application server , Catalog server , Communications server , Computing server , Database server , Fax server , File server ,  Proxy server , Sound server , Media server , Game server , Virtual server , Mail server , Print server , Web server

تقریباً کل ساختار اینترنت مبتنی بر مدل مشتری-سرور است. سرورهای نام ریشه سطح بالا، DNS و روترها ترافیک اینترنت را هدایت می کنند. میلیون ها سرور متصل به اینترنت وجود دارد که به طور مداوم در سراسر جهان در حال اجرا هستند و تقریباً هر اقدامی که توسط یک کاربر معمولی اینترنت انجام می شود نیاز به یک یا چند تعامل با یک یا چند سرور دارد. استثناهایی وجود دارد که از سرورهای اختصاصی استفاده نمی کنند. به عنوان مثال، اشتراک‌گذاری فایل‌های Peer to Peer و برخی از پیاده‌سازی‌های تلفن (مانند اسکایپ قبل از مایکروسافت).

سخت افزار (Hardware) سرور چیست؟

نیاز به سخت افزار برای سرورها بسته به هدف سرور و نرم افزار آن بسیار متفاوت است. سرورها اغلب قدرتمندتر و گرانتر از کلاینت هایی هستند که به آنها متصل می شوند. از آنجایی که سرورها معمولاً از طریق یک شبکه قابل دسترسی هستند، بسیاری از آنها بدون مانیتور کامپیوتر یا دستگاه ورودی، سخت افزار صوتی و رابط های USB کار می کنند. بسیاری از سرورها رابط کاربری گرافیکی (GUI) ندارند. آنها از راه دور پیکربندی و مدیریت می شوند. مدیریت از راه دور می‌تواند از طریق روش‌های مختلفی از جمله کنسول مدیریت مایکروسافت (MMC)، PowerShell، SSH و سیستم‌های مدیریت خارج از باند مبتنی بر مرورگر مانند iDRAC Dell یا iLo HP انجام شود.

سرور ها در سازمانها چه کاربری دارند؟

سرور‌ها در سازمان‌ها نقش مهمی ایفا می‌کنند و برای انجام وظایف مختلف استفاده می‌شوند. در ادامه به توضیح کاربردهای سرور‌ها در سازمان‌ها می‌پردازم:
  • میزبانی وب: سرور‌ها برای میزبانی وب‌سایت‌ها، اپلیکیشن‌های وب، و پایگاه‌های داده استفاده می‌شوند. زمانی که شما یک وب‌سایت باز می‌کنید، درخواست‌های شما به سرور‌ها ارسال می‌شود و آنها پاسخ مناسب را ارائه می‌دهند.
  • ذخیره‌سازی و به اشتراک‌گذاری فایل‌ها: سرور‌ها برای ذخیره‌سازی فایل‌ها، اسناد، تصاویر، و داده‌های مختلف استفاده می‌شوند. این اطلاعات می‌توانند به اشتراک گذاشته شوند تا کاربران مختلف به آنها دسترسی داشته باشند.
  • پردازش داده‌های حجیم: سرور‌ها برای پردازش داده‌های حجیم مانند تحلیل‌های مالی، مدیریت پروژه، و محاسبات علمی استفاده می‌شوند. این کاربرد نیاز به پردازش قدرتمند و مصرف منابع سخت‌افزاری دارد.
  • مدیریت ایمیل: سرور‌ها برای مدیریت ایمیل‌ها، ارسال و دریافت پیام‌ها، و محافظت از اطلاعات حساس استفاده می‌شوند.
  • پایگاه داده: سرور‌ها برای نگهداری و مدیریت پایگاه‌های داده استفاده می‌شوند. اطلاعات مرتبط با مشتریان، محصولات، مالی، و غیره در این پایگاه‌ها ذخیره می‌شوند.
  • مدیریت شبکه: سرور‌ها برای مدیریت شبکه‌ها، ارتباطات داخلی و بین‌المللی، و امنیت شبکه استفاده می‌شوند.
  • سرویس‌دهی به کاربران: سرور‌ها برای ارائه سرویس‌های مختلف به کاربران، مانند سرویس‌های ابری، ایمیل، و میزبانی وب، استفاده می‌شوند.

در نهایت، سرور‌ها نقش حیاتی در عملکرد سازمان‌ها دارند و باید به‌طور مداوم مدیریت و نگهداری شوند.

چه شرکت های CPU سرور تولید می کنند و CPU سرور چه فرقی با CPU کامپیوتر دارد ؟

پردازنده های سرور را دو شرکت Intel و AMD ارائه می دهند که شرکت AMD پردازنده خود را با نام  AMD EPYCTM و شرکت Intel پردازنده خود را با نام ®Intel® Xeon عرضه می کنند . این پردازنده ها عملکردی استثنایی 86x را در سرور ها ارائه می‌دهند و به کاهش هزینه‌های انرژی کمک می‌کنند.و با استفاده از هیت سینک برای کمک به دفع گرمای ناشی از پردازنده سرور  مورد استفاده قرار می گیرد . هیت سینک معمولاً قطعه ای فلزی مانند آلومینیوم یا مس است که به سطح CPU یا سایر اجزای مولد گرما متصل می شود.

  1. پردازنده های سرور از  (QPI (The Intel QuickPath Interconnect  برای بکارگیری در مادربرد های دارای چند سوکت پردازنده بهره می برند.
  2. پردازنده های سرور از تکنولوژی Intel Direct IO و Integrated IO پشتیبانی می کند اما سری Core i و دسکتاپ خیر(این تکنولوژی باعث افزایش بازدهی پردازنده می شود)
  3. پردازنده های سرور تا چند برابر بیشتر از حافظه Cache نسبت به پردازنده های معمولی و پیشرفته Desktop پشتیبانی می کنند.
  4. پردازنده های سرور از ECC Memory و یا سیستم تصحیح خطا در پردازش حافظه پشتیبانی می کنند.
  5. پردازنده های سرور کنونی تا حدود 6 ترابایت از حافظه رم پشتیبانی می کنند اما پردازنده های دسکتاپ نهایتا تا 128 گیگابایت.
  6. پردازنده های سرور از تعداد بیشتر کانال نصب حافظه (Memory Slots) نسبت به پردازنده های دسکتاپ پشتیبانی می کنند.

خیلی از موارد دیگر مثل مجموعه دستورات پردازشی اختصاصی و یا تعداد بیشتر رجیسترها در هسته های پردازشی و… که در نهایت باعث می شود تمامی سرورها و ایستگاه های کاری (Work Stations) و دیتاسنترهای معتبر و البته ابر کامپیوترهای دنیا، از پردازنده های Xeon استفاده کنند.

در سرور از چه مدل رم هایی استفاده می شود  ؟

رم های که در سرور ها استفاده می شود رم های ECC می باشد ECC، مخفف عبارت “Error-Correcting Code” یا “کد تصحیح خطا” است، که در سیستم‌های کامپیوتری و سرورها برای تشخیص و تصحیح خطاهای حافظه استفاده می‌شود. هدف اصلی حافظه ECC افزایش دقت و قابلیت اطمینان حافظه‌ها در ذخیره و بازیابی داده‌ها است .

سرور ها به لحاظ سخت افزاری به سه دسته تقسیم بندی می شوند

PSNivan DL
PSNivan ML
PSNivan Blade

عملکردسرور های بزرگ به چه صورت است؟

سرورهای تک سنتی بزرگ ( large servers) باید برای مدت طولانی بدون وقفه اجرا شوند. در دسترس بودن باید بسیار بالا باشد، که قابلیت اطمینان و دوام سخت افزار را بسیار مهم می کند. سرورهای سازمانی ماموریت بسیار قابل تحمل خطا هستند و از سخت افزار تخصصی با نرخ خرابی پایین برای به حداکثر رساندن زمان آپدیت استفاده می کنند. منبع تغذیه اضطراری ممکن است برای محافظت در برابر قطع برق تعبیه شود. سرورها معمولاً شامل افزونگی سخت‌افزاری مانند منابع تغذیه دوگانه، سیستم‌های دیسک RAID و حافظه ECC،  همراه با آزمایش و تأیید حافظه پیش از راه‌اندازی گسترده هستند. اجزای حیاتی ممکن است قابلیت تعویض داغ را داشته باشند و به تکنسین‌ها این امکان را می‌دهند که آنها را روی سرور در حال کار بدون خاموش کردن آن جایگزین کنند و برای محافظت در برابر گرمای بیش از حد، سرورها ممکن است فن‌های قوی‌تری داشته باشند یا از خنک‌کننده آب استفاده کنند. آنها اغلب می توانند با استفاده از مدیریت خارج از باند، معمولاً بر اساس IPMI، پیکربندی شوند، بالا و پایین شوند، یا از راه دور راه اندازی مجدد شوند. محفظه های سرور معمولاً مسطح و عریض هستند و به گونه ای طراحی شده اند که روی قفسه های 19 اینچی یا روی رک های باز نصب شوند. این نوع سرورها اغلب در مراکز داده اختصاصی قرار می گیرند. اینها معمولاً دارای قدرت و اینترنت بسیار پایدار و افزایش امنیت خواهند بود. سر و صدا نیز کمتر نگران کننده است، اما مصرف برق و خروجی گرما می تواند یک مسئله جدی باشد. اتاق های سرور مجهز به دستگاه های تهویه مطبوع هستند.