سرور وب در مقابل سرور برنامه
یک رایانه (یا یک برنامه رایانه ای) که برنامه ای را اجرا می کند که برای پذیرش درخواست های HTTP از مشتریان اختصاص داده شده است و پاسخ های HTTP مانند صفحات وب در HTML و سایر اشیاء مرتبط را ارائه می دهد، وب سرور نامیده می شود. از طرف دیگر، موتور نرم افزاری که برنامه های مختلف را در اختیار دستگاه دیگری قرار می دهد، Application Server نامیده می شود. آنها معمولاً در دفاتر و دانشگاه ها یافت می شوند و به همه کاربران شبکه اجازه می دهند تا برنامه های نرم افزاری را خارج از یک دستگاه اجرا کنند. اما، به دلیل گسترش اینترنت و فناوری های وب 2.0، هر دو وب سرور و سرور برنامه به سرعت در حال محو شدن در یکدیگر هستند.علاوه بر این، یک سرور برنامه را می توان برای کار به عنوان یک وب سرور نیز پیکربندی کرد.
وب سرور چیست؟
Web Server، همانطور که از نام آن پیداست، عمدتاً برای حفظ خدمات صفحات وب در بیست و چهار ساعت و هفت روز هفته کار می کند. تا زمانی که وب سرور فعال و فعال باشد، صفحات وب و سایت های مربوطه از طریق شبکه در دسترس کاربران خواهند بود. بنابراین، بسیار مهم است که یک وب سرور دائماً کار کند تا به دلیل در دسترس نبودن صفحات وب، مزاحمتی برای کاربر ایجاد نکند. زمان خرابی برای تعیین زمان از دست رفته به دلیل در دسترس نبودن وب سایت و صفحات آن استفاده می شود. شرکت های معتبر میزبانی وب سعی می کنند خدمات خوبی را حفظ کنند، به این معنی که باید حداقل زمان خرابی مانند کمتر از کسری از ثانیه وجود داشته باشد. به طور معمول، وب سرورها از چند رشته ای پشتیبانی نمی کنند. سرورهای وب دارای ویژگی های اتصال-تجمع، جداسازی-تجمع و تراکنش نیز نیستند. برای درک بهتر مفهوم وب سرورها، سناریوی زیر را در نظر بگیرید.کاربری که می خواهد از www.cnn.com بازدید کند آدرس را در اینترنت اکسپلورر (به عنوان مثال یک مرورگر وب) تایپ می کند، که در واقع در دستگاه مشتری اجرا می شود. سپس این درخواست به وب سرور cnn ارسال می شود که در واقع این صفحات را در هارد دیسک خود نگه می دارد. سپس وب سرور محتوای صفحه و سایر اشیاء مرتبط را به عنوان پاسخی به مرورگر وب ارسال می کند و مرورگر وب این موارد را به کاربر نمایش می دهد. بنابراین، ناگفته نماند که یک وب سرور باید درخواست را به سرعت از بیش از یک اتصال در یک زمان ارائه دهد.
Application Server چیست؟
سرور برنامه را می توان به عنوان یک چارچوب نرم افزاری در نظر گرفت که محیطی را فراهم می کند که در آن بسیاری از برنامه ها بدون توجه به اینکه چه هستند، قابل اجرا هستند. خرابی برای سرورهای برنامه نیز مهم است. برای بهترین خدمات، باید زمان خرابی کمتر از کسری از ثانیه را حفظ کنید. به طور معمول، سرور برنامه از چند رشته ای پشتیبانی می کند. شما ویژگی هایی مانند ادغام جداسازی و ادغام اتصال و ویژگی تراکنش را در سرورهای برنامه پیدا می کنید.از آنجایی که سرورهای برنامه نرم افزارهای مختلفی را اجرا می کنند که ممکن است به نرم افزارها و برنامه های کاربردی دیگر وابسته باشند، آنها معمولا میان افزارها را بسته بندی می کنند تا ارتباط بین برنامه های کاربردی وابسته مانند وب سرورها، سیستم های مدیریت پایگاه داده و برنامه های نمودار را فعال کنند.
تفاوت بین وب سرور و سرور برنامه
اگرچه تمایز بین وب سرور و سرور برنامه به سرعت در حال بدتر شدن است، برخی تفاوت های کلیدی بین وب سرور و سرور برنامه وجود دارد. یک وب سرور معمولاً می تواند تعداد محدودی از درخواست ها را مدیریت کند، اما سرورهای برنامه دارای ظرفیت بسیار بالاتری هستند. برخلاف وب سرورها، سرورهای برنامه از چند رشته، تراکنش ها و مکانیسم هایی مانند ادغام اتصال پشتیبانی می کنند. سرورهای وب از استقرار فایل های.war پشتیبانی می کنند در حالی که سرورهای برنامه از استقرار فایل های.war و.ear پشتیبانی می کنند. علاوه بر این، سرورهای برنامه بر خلاف وب سرورها، میان افزاری را برای برقراری ارتباط با سایر برنامه ها یکپارچه کرده اند.