بایگانی برچسب‌ها : سرور

آپتایم Uptime

آپتایم یا Uptime چیست؟

آپتایم (Uptime) به مدت زمانی اشاره می‌کند که طی آن یک ماشین (به ویژه یک سیستم رایانه‌ای) در حال فعالیت و قابل دسترسی است. متضاد این اصطلاح، Downtime (دان تایم) می‌باشد.

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

از جمله حوزه‌هایی که استفاده از اصطلاح Uptime در آنها رایج است می‌توان به سرویس‌های میزبانی وب اشاره نمود. نرخ آپتایم در این سرویس‌ها نیز همانند هر سرویس دیگری از اهمیت بالایی برای مشتریان برخوردار است چرا که اگر سرورهای وب برای مدت زمان قابل توجهی قادر به پاسخگویی به درخواست‌ها نباشند روی کسب و کار مشتریان سرویس، سئوی سایتی که روی سرور میزبانی می‌شود و رضایت کاربران آنها تاثیر منفی خواهد داشت. معمولا در موافقت‌نامه سطح سرویس (Service Level Agreement – SLA)، آپتایم بالای 99.9 درصد تضمین می‌شود. در حالت ایده آل، انتظار می‌رود نرخ آپتایم برابر با صد در صد (یعنی بدون دان تایم) باشد اما در عمل، داشتن این میزان آپتایم برای یک سرور تقریبا غیرممکن یا بسیار دشوار است.

در کاربرد عمومی، این واژه به مفهوم مدت زمانی است که سیستم به صورت پی در پی در حال فعالیت می‌باشد. هرچند این موضوع که یک سیستم یا سرویس در اغلب مواقع قابل استفاده و در حال پاسخگویی به درخواست‌ها باشد از اهمیت زیادی برخوردار است اما در عین حال فعالیت بدون وقفه یک سیستم در مدت زمانی نسبتا طولانی می‌تواند به عنوان نشانه‌ای منفی تلقی شود چرا که برخی از بروزرسانی‌های مهم و اساسی در سیستم عامل‌های مختلف نیازمند بوت شدن مجدد سیستم هستند. با اینحال گزارش‌هایی حاکی از Uptime های چندین ساله سرورها نیز وجود دارد.

محاسبه نرخ آپتایم

برای محاسبه نرخ آپتایم کافی است مجموع مدت زمان فعالیت سرور را بر کل زمان مورد بررسی تقسیم کرده و نتیجه را در عدد 100 ضرب کنید. به عنوان مثال فرض کنید یک سرور میزبانی وب در طول مدت یک سال (365 روز معادل با 8760 ساعت) در مجموع تنها برای 5 ساعت به منظور انجام اموری مثل بروزرسانی های نرم افزاری، ارتقای سخت افزاری و یا رفع خطاها قابل دسترسی نباشد. در این شرایط در مجموع این یک سال، سرور به مدت 8755 ساعت در حال کار و سرویس دهی بوده است. به این ترتیب مطابق محاسبات زیر، آپتایم این سرور چیزی حدود 99.94% برآورد می‌شود.

8755 / 8760 x 100 = 99.94%

در سیستم عامل‌های مختلف، روش‌های متفاوتی برای اطلاع از مدت زمانی که سیستم در حال فعالیت است درنظر گرفته شده است. به عنوان مثال در سیستم عامل لینوکس با استفاده از دستور uptime در خط فرمان می‌توان به این اطلاعات دسترسی پیدا نمود.

در نسخه‌های جدید سیستم عامل ویندوز نیز یکی از ساده‌ترین روش‌ها برای اطلاع از این مدت زمان، مراجعه به برنامه Task Manager می‌باشد.

آپتایم Uptime
Up Time در برنامه Task Manager ویندوز 10 – توجه داشته باشید در این پنجره برخلاف تعریف صحیح آپتایم، صرفا تفاوت زمان کنونی با زمان آخرین بوت نمایش داده می‌شود و مدتی که رایانه در حالت Sleep یا Hibernate قرار داشته از آن کاسته نمی‌شود. بنابراین مفهوم ارقام موجود در تصویر اینست که از زمان بوت شدن سیستم تاکنون 16 روز و 2 ساعت و 56 دقیقه و 20 ثانیه گذشته است.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

پروکسی سرور Proxy Server

پروکسی سرور یا Proxy Server چیست؟

پروکسی سرور (Proxy Server) سروری میانجی برای درخواست‌هایی است که از سوی کلاینت ها به منظور دریافت منابع از سرورهای دیگر ارسال می‌شود.

به عبارت بهتر، کلاینت به جای ارتباط مستقیم با سرور اصلی به پروکسی سرور متصل شده و منبعی (نظیر صفحه وب، فایل و …) که روی سرور اصلی قابل دسترسی است را تقاضا می‌کند. Proxy Server در صورت موافقت پس از انجام اعمال خاصی درخواست را برای سرور اصلی ارسال کرده، منبع را دریافت و در نهایت برای کلاینت ارسال می‌کند.

مفهوم Forward Proxy و Reverse Proxy

واژه Proxy در زبان انگلیسی به معنای نماینده یا وکیل می‌باشد. Proxy Server ها نیز مشابه همان کاری را انجام می‌دهند که یک نماینده در زندگی معمولی برای شما انجام می‌دهد. در میان عامه مردم زمانی که سخن از پروکسی ها به میان می‌آید غالبا منظور نوع متداول آن‌ها یعنی فوروارد پروکسی (Forward Proxy یا پروکسی ارسال کننده) می‌باشد. این نوع Proxy ها به عنوان یک نماینده یا واسطه برای کلاینت به شمار می‌روند. کلاینت درخواست خود را که مربوط به یک سرور معین است برای فوروارد پروکسی ارسال می‌کند. Proxy نیز در نقش یک کلاینت، درخواست را برای سرور مدنظر می‌فرستد و پس از دریافت پاسخ، نتیجه را به کلاینت خود تحویل می‌دهد. در این حالت کلاینت باید برای استفاده از Proxy به شکل مناسبی تنظیم شده باشد؛ این تنظیمات معمولا توسط یک نرم افزار ویژه به صورت خودکار انجام می‌شود.

نوع دیگری از Proxy ها نیز تحت عنوان پروکسی های معکوس (Reverse Proxy) وجود دارد که برخلاف Forward Proxy ها به عنوان میانجی برای یک یا چند سرور معین عمل می‌کنند. در واقع در این مدل، Proxy Server بخشی از شبکه داخلی سرورهای اصلی است و درخواست‌های دریافتی از کلاینت‌های خارجی را به سروری که باید آن را پاسخ دهد ارسال می‌کند و سپس پاسخ دریافتی را به شکلی که گویا مستقیما از سرور اصلی دریافت می‌شود برای کلاینت برمی‌گرداند. کلاینت معمولا در چنین حالتی متوجه وجود سرور اصلی (که در پشت Proxy پنهان شده است) و ویژگی‌های آن نخواهد شد و تصور می‌کند درخواست خود را برای سرور اصلی ارسال کرده است. به عبارت بهتر برخلاف فوروارد پروکسی ها که هویت کلاینتشان را مخفی می‌کنند (گمنامی)، پروکسی معکوس هویت سرور را پنهان می‌کند. صاحبان این پروکسی ها می‌توانند با پیکربندی مناسب آن‌ها، سرورهای اصلی خود را در مقابل حملاتی نظیر DDoS محافظت کرده و از مزایای دیگری نظیر توزیع و توزین بار (Load Balancing) روی چند سرور اصلی نیز بهره ببرند.

وب پروکسی

از لحاظ نوع خدمات، وب پروکسی (Web Proxy) ها از رایج‌ترین انواع Proxy ها به شمار می‌روند که امکان دسترسی به محتوای وب را با اهدافی نظیر گمنامی (یا ناشناس بودن) و عبور از فرایندهای مسدودسازی مبتنی بر نشانی IP فراهم می‌کنند. اغلب این Proxy ها از طریق تمامی کاربران اینترنت در دسترس هستند و به آن‌ها اجازه می‌دهند نشانی IP خود را هنگام استفاده از خدمات اینترنت پنهان کنند.

از Web Proxy ها می‌توان برای کنترل، نظارت و فیلتر نمودن منابع و محتوای قابل استفاده توسط کاربران بهره برد. علاوه بر این ممکن است این Proxy ها محتوای دریافتی از سرور اصلی را از نظر امنیتی و بدافزارهای مختلف (با کمک آنتی ویروس ها و دیوارهای آتش) بررسی نموده و سپس در اختیار کاربر قرار دهند. در بسیاری از سازمان‌ها، مدارس و حتی دولت‌های سراسر جهان نیز معمولا با کمک پروکسی های محدودکننده محتوا و استفاده از روش‌هایی نظیر لیست سیاه نشانی های وب یا وجود کلمات کلیدی خاص، دسترسی به منابع نامناسب یا خلاف قوانین را محدود می‌کنند.

پروکسی سرور Proxy Server
Proxy Server به عنوان واسطی میان کلاینت و سرور اصلی عمل می‌کند.

سایر کاربردهای رایج پروکسی

علاوه بر مواردی که به آن اشاره شد از Proxy ها برای اهداف دیگری نیز استفاده می‌شود. تصور کنید سرور یک وبسایت، بنابه دلایلی (نظیر تحریم) دسترسی به محتوا را براساس مبدأ درخواست کننده مسدود کرده باشد. غالبا این کار با مسدودسازی دسترسی براساس بازه‌ای از نشانی‌های IP که متعلق به یک کشور می‌باشد انجام می‌گیرد. استفاده از Proxy Server هایی که در منطقه‌ای دیگر واقع شده‌اند می‌تواند برای عبور از چنین محدودیت‌هایی مفید واقع شود.

این نکته را نیز همیشه به خاطر داشته باشید؛ ممکن است از فوروارد پروکسی ها برای گزارش گیری و استراق سمع داده‌هایی که میان کلاینت و سرور اصلی رد و بدل می‌شود استفاده شود. در چنین شرایطی کاربر به اشتباه تصور می‌کند به دلیل ناشناس بودن در مقابل سرور اصلی از نظر حفظ حریم خصوصی موفق‌تر بوده است در حالی که کلیه اطلاعاتش از جمله کلمه عبور (در صورتی که از ارتباطات رمزنگاری شده نظیر SSL استفاده نشود) توسط اپراتورهای Proxy به راحتی قابل مشاهده و تجزیه و تحلیل می‌باشد.

کشینگ پروکسی (Caching Proxy) ها نیز نوع رایج دیگری از این سرورها هستند که با نگه‌داری نسخه‌ای از منابع که با درخواست بیشتری مواجه بوده‌اند قادر هستند پاسخگویی به درخواست‌ها را سرعت بخشیده و مصرف پهنای باند را نیز کاهش دهند.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

سرور Server

سرور یا Server چیست؟

سرور (Server) یا سرویس دهنده به یک برنامه یا دستگاه رایانه‌ای گفته می‌شود که برای سایر برنامه‌ها یا دستگاه‌ها که کلاینت (Client یا سرویس گیرنده) نامیده می‌شوند خدمات (یا سرویس‌هایی) را ارائه می‌کند. این خدمات می‌تواند شامل اشتراک داده، اشتراک منابع سخت‌افزاری، انجام محاسبات و … باشد.

معماری مورد استفاده در ارتباط Server و Client، مبتنی بر ساختاری است که از آن با عنوان مدل کلاینت – سرور یاد می‌شود. در رایج‌ترین نوع سناریوی ارتباطی، ابتدا کلاینت درخواستی را برای سرور ارسال می‌کند و سرور نیز پس از انجام عمل مورد نظر، پاسخی را برای کلاینت ارسال می‌کند که معمولا در آن نتیجه انجام عمل درخواستی نیز گنجانده شده است.

هرچند از نظر فنی اصطلاح Server به یک برنامه یا فرایند رایانه‌ای اطلاق می‌شود اما در فرهنگ عامه دستگاهی که برای اجرای برنامه‌های Server مورد استفاده قرار می‌گیرد نیز Server نامیده می‌شود. با توجه به اینکه دسترسی به سرورها معمولا از طریق شبکه رخ می‌دهد عملا اکثر آن‌ها به نمایشگر، ماوس، کیبورد، ورودی و خروجی صوتی و … مجهز نیستند و حتی سیستم عامل آن‌ها معمولا فاقد واسط کاربری گرافیکی (GUI) می‌باشد.

سخت افزارهایی که برای اجرای برنامه‌های Server طراحی می‌شوند معمولا در مقایسه با یک رایانه شخصی قوی‌تر و قابل اعتمادتر هستند. اجرای این برنامه‌ها باید بدون وقفه و با دسترس‌پذیری بالایی همراه باشد. استفاده از منابع برق بدون قطعی، خنک کننده‌های قدرتمند، بک آپ گیری متناوب و … از جمله ویژگی‌هایی است که برای یک Server نقشی حیاتی را ایفا می‌کند. در حال حاضر سیستم عامل‌های مبتنی بر UNIX و Windows Server بازار سرورها را در دست دارند.

انواع رایج سرورها

امروزه سرورهای گوناگونی بسته به کاربردهای مختلف در حال سرویس‌دهی هستند. از جمله رایج‌ترین Server ها می‌توان به موارد زیر اشاره نمود:

  • سرور وب (Web Server): این Server ها برای میزبانی صفحات وب مورد استفاده قرار می‌گیرند. هر وبسایتی به حداقل یک وب سرور نیاز دارد.
  • سرورهای محاسباتی: این نوع سرویس‌دهنده‌ها امکان انجام پردازش‌های سنگین را با به اشتراک‌گذاری منابعی همچون پردازنده و حافظه RAM بر بستر یک شبکه برای کلاینت‌ها فراهم می‌آورند. سیستم‌های رایانه‌ای و نرم‌افزارهایی که به پردازش‌های سنگینی نیاز دارند از چنین سرورهایی خدمات دریافت می‌کنند.
  • سرور پایگاه داده (Database Server): نگه‌داری و به اشتراک‌گذاری پایگاه داده بر بستر یک شبکه توسط این Server ها انجام می‌شود.
  • سرورهای فکس و پرینت: این سرورها با به اشتراک‌گذاری دستگاه‌های فکس و پرینتر این امکان را فراهم می‌آورند که یک رایانه کلاینت بدون اینکه به صورت فیزیکی و از طریق کابل‌های واسط به دستگاه دسترسی داشته باشد از طریق شبکه، نیازهای خود به این دستگاه‌ها را برطرف نماید. به این ترتیب لازم نیست در یک اتاق اداری برای هر سیستم رایانه‌ای یک دستگاه پرینتر یا فکس مجزا تهیه شود.
  • سرورهای ایمیل (Mail Server): این نوع از Server ها امکان ارسال و دریافت ایمیل را فراهم می‌آورند. دریافت کنندگان و ارسال کنندگان ایمیل کلاینت‌های این دسته به شمار می‌روند.
  • سرور فایل (File Server): اشتراک فایل و فضای ذخیره‌سازی فایل خدماتی است که توسط این Server ها ارائه می‌شود.
  • سرور اپلیکیشن (Application Server): نوعی سرور که به کلاینت‌های خود اجازه می‌دهد برنامه‌های کاربردی تحت وب را از طریق یک مرورگر وب اجرا نمایند.
سرور Server
مجموعه‌ای از  Server ها در کنار یکدیگر

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا