• سخنرانی N2. فن آوری های مشتری - سرور. استفاده از فناوری مشتری-سرور

    DBهایی که روی فناوری FILE-SERVER کار می کنند.

    DBهایی که روی فناوری CLIENT-SERVER کار می کنند.

    سرور فایل


    - دسترسی به پایگاه داده (درخواست)
    - انتقال داده ها با مسدود کردن دسترسی به سایر کاربران
    - پردازش داده ها در رایانه کاربر

    برای وضوح، مثال های خاص را در نظر بگیرید. فرض کنید باید دستورهای پرداخت ارسالی را برای دوره از 19 تا 25 مه به مبلغ 5000 روبل مشاهده کنید. کاربر باید یک برنامه مشتری را روی رایانه خود راه اندازی کند که در پایگاه داده با دستورات پرداخت کار می کند و معیارهای انتخاب مورد نیاز را وارد کند. پس از آن، یک فایل حاوی تمام اسناد از این نوع برای کل دوره به هر مقدار، از سرور پایگاه داده در رایانه شما دانلود شده و در RAM بارگذاری می شود. برنامه مشتری در حال اجرا بر روی رایانه کاربر، که با پایگاه داده کار می کند، خود این اطلاعات را پردازش می کند (آنها را مرتب می کند)، پس از آن پاسخی را صادر می کند (لیستی از دستورات پرداختی که با معیارهای شما مطابقت دارند روی صفحه ظاهر می شود). پس از آن، دستور پرداخت مورد نیاز را انتخاب می‌کنید و سعی می‌کنید یک فیلد را در آن ویرایش (تغییر) کنید - به عنوان مثال، تاریخ. در حین ویرایش، منبع داده قفل می شود، یعنی کل فایل حاوی این سند. این بدان معناست که فایل یا اصلاً در دسترس سایر کاربران نخواهد بود یا فقط در حالت نمایش در دسترس خواهد بود. علاوه بر این، این نوع ضبط حتی در سطح رکورد، یعنی یک سند، رخ نمی دهد، اما کل فایل قفل شده است - یعنی کل جدول حاوی اسناد مشابه. فقط پس از پردازش کامل این فیلد و خروج از حالت ویرایش فایل داده شدهدستورات پرداخت از ضبط توسط کاربر باز می شود. اگر داده ها در اشیاء حجیم تری ذخیره شوند، به عنوان مثال، یک فایل حاوی دستورات پرداخت هم برای دریافت وجوه و هم برای ارسال باشد، حتی اطلاعات بیشتری در دسترس نخواهد بود. شما با یک فیلد "تاریخ" در یک سند کار خواهید کرد - بقیه کارمندان شرکت تا پایان کار منتظر خواهند ماند.

    معایب سیستم FILE-SERVER واضح است:

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

      پردازش داده ها در رایانه کاربر انجام می شود. این مستلزم افزایش نیاز به سخت افزار هر کاربر است. هر چه تعداد کاربران بیشتر باشد، هزینه بیشتری برای تجهیز کامپیوترهایشان باید صرف شود.

      مسدود کردن داده ها هنگام ویرایش توسط یک کاربر، کار با این داده ها را برای سایر کاربران غیرممکن می کند.

      ایمنی. برای اینکه بتوانید با چنین سیستمی کار کنید، باید به هر کاربر بدهید دسترسی کاملبه کل فایل، که در آن ممکن است فقط به یک فیلد علاقه مند باشد.

      مشتری-سرور

      رسیدگی به یک درخواست کاربر:
      - دسترسی به پایگاه داده (پرس و جوی SQL)
      - ارسال پاسخ - نتیجه پردازش


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

      در DBMS مشتری-سرور جدی، مکانیسم‌های اضافی وجود دارد که بار روی شبکه را کاهش می‌دهد و الزامات رایانه‌های کاربر را کاهش می‌دهد. به عنوان مثال، اجازه دهید رویه های ذخیره شده را در نظر بگیریم - یعنی کل برنامه ها برای پردازش داده های ذخیره شده در یک پایگاه داده. در این مورد، حتی عبارات SQL از کاربر به سرور منتقل نمی شود - یک فراخوانی تابع با پارامترهای فراخوانی منتقل می شود. بنابراین، محل کار کاربر حتی بیشتر ساده می شود، منطق برنامه به سرور منتقل می شود. مکان کاربر فقط به وسیله ای برای نمایش اطلاعات تبدیل می شود. همه اینها به معنای کاهش بیشتر بار در شبکه و ایستگاه های کاری کاربر است.

      بنابراین، تمام معایب فوق از طرح FILE-SERVER در معماری CLIENT-SERVER حذف می شوند:

        آرایه های داده از طریق شبکه از سرور پایگاه داده به رایانه کاربر منتقل نمی شوند. نیاز به پهنای باند شبکه کاهش می یابد. این امکان را برای تعداد زیادی از کاربران فراهم می کند که به طور همزمان با حجم زیادی از داده ها کار کنند.

        پردازش داده ها بر روی سرور پایگاه داده انجام می شود و نه در رایانه کاربر. این به شما امکان می دهد از رایانه های ساده تر و در نتیجه ارزان تر در سایت های مشتری استفاده کنید.

        مسدود کردن (گرفتن) داده ها توسط یک کاربر رخ نمی دهد.

        دسترسی کاربر نه به کل فایل، بلکه فقط به آن دسته از داده هایی از آن ارائه می شود که کاربر حق کار با آنها را دارد.

        با در نظر گرفتن تفاوت بین FILE-SERVER و CLIENT-SERVER، می توانیم در نظر گرفتن مفهوم "ذخیره اطلاعات" را کامل کنیم. مهم است که تأکید شود کار تا حد زیادی به نوع DBMS مورد استفاده بستگی دارد. سیستم شرکتی. واضح است که برای شرکت های بزرگ، با مقدار زیادکاربران، با تعداد زیادی رکورد در پایگاه داده، طرحواره فایل سرورکاملا غیر قابل قبول از سوی دیگر، تفاوت هایی در پایگاه داده ها در سایر پارامترها و قابلیت ها وجود دارد:

          انواع داده هایی که می توانند در پایگاه داده ذخیره شوند (اعداد، تاریخ، متن، تصاویر، ویدئو، صدا و غیره)؛

          در مورد فن آوری های دسترسی به داده ها در پایگاه داده سازماندهی شده توسط خود پایگاه داده و سطح حفاظت از اطلاعات در برابر دسترسی غیرمجاز.

          در مورد ابزارهای ارائه شده و روش های توسعه ای که می توان از آنها برای طراحی هر سیستم اطلاعاتی بر اساس این پایگاه استفاده کرد.

          در مورد ابزارها و روش های ارائه شده برای تجزیه و تحلیل اطلاعات (داده ها) که می تواند در سیستم اطلاعاتی مبتنی بر این پایگاه داده اعمال شود.

          با قابلیت اطمینان و پایداری، یعنی (تقریباً) تعداد رکوردها (فیلدهای پر شده) در پایگاه داده، که توانایی قابل اعتماد و بدون وقفه برای دسترسی، تغییر، تجزیه و تحلیل اطلاعات در پایگاه داده را فراهم می کند.

          با سرعت - زمان صرف شده برای دسترسی و پردازش اطلاعات؛

          سازماندهی ممکن کار بر روی کامپیوتر تولید کنندگان مختلفیعنی برای سازگاری با سایر پلتفرم ها و سیستم عامل ها؛

          با سطح پشتیبانی (سرویس) ارائه شده توسط توسعه دهنده پایگاه داده یا فروشنده مجاز آن؛

          بر اساس در دسترس بودن پول خوبایجاد برنامه هایی که از این پایگاه داده استفاده می کنند و غیره

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

    معماری مشتری-سرور به طور گسترده استفاده می شود فناوری های شبکهبرای دسترسی به خدمات مختلف شبکه استفاده می شود. بیایید نگاهی گذرا به برخی از انواع این خدمات (و سرورها) بیندازیم.

    وب سرورها

    در ابتدا، آنها از طریق HTTP (Huper Text Transfer Protocol) به اسناد فرامتن دسترسی داشتند. در حال حاضر آنها از ویژگی های پیشرفته پشتیبانی می کنند، به ویژه، با آنها کار می کنند فایل های باینری(تصاویر، چند رسانه ای و غیره).

    سرورهای برنامه

    طراحی شده برای حل متمرکز مشکلات کاربردی در برخی موضوع. برای این کار، کاربران حق دارند اجرای برنامه های سروربرای اعدام استفاده از سرورهای برنامه الزامات پیکربندی مشتری را کاهش می دهد و ساده می کند مدیریت عمومیشبکه.

    سرورهای پایگاه داده

    سرورهای پایگاه داده برای پردازش پرس و جوهای کاربر در زبان SQL استفاده می شوند. در این حالت، DBMS روی سروری قرار دارد که برنامه های سرویس گیرنده به آن متصل می شوند.

    سرورهای فایل

    سرور فایل مغازه هااطلاعات در قالب فایل و امکان دسترسی کاربران را به آن فراهم می کند. به عنوان یک قاعده، یک سرور فایل همچنین سطح خاصی از محافظت در برابر دسترسی غیرمجاز را فراهم می کند.

    سرور پروکسی

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

    ثانیا، اطلاعات درخواستی مکرر را در حافظه پنهان ذخیره می کند دیسک محلی، به سرعت آن را بدون دسترسی مجدد به اینترنت به کاربران تحویل می دهد.

    فایروال ها(دیوارهای آتش)

    فایروال ها، تجزیه و تحلیل و فیلتر کردن پاس ترافیک شبکه، به منظور ایمن سازی شبکه

    سرورهای پست الکترونیکی

    آنها خدمات ارسال و دریافت پیام های الکترونیکی را ارائه می دهند.

    سرورها دسترسی از راه دور(RAS)

    این سیستم ها ارتباط با شبکه را از طریق خطوط Dial-up فراهم می کنند. یک کارمند از راه دور می تواند از منابع LAN شرکتی با اتصال به آن با استفاده از یک مودم معمولی استفاده کند.

    اینها تنها چند نوع از انواع فناوری های سرویس گیرنده-سرور مورد استفاده در شبکه های محلی و جهانی هستند.

    برای دسترسی به برخی خدمات شبکه، از کلاینت هایی استفاده می شود که قابلیت های آنها با مفهوم "ضخامت" مشخص می شود. پیکربندی سخت افزاری و نرم افزاری که مشتری دارد را مشخص می کند. مقادیر مرزی ممکن را در نظر بگیرید:

    مشتری "لاغر".

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

    مشتری "چاق".

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

    اخیراً اصطلاح دیگری بیشتر و بیشتر مورد استفاده قرار می گیرد: "ثروتمند" - مشتری. مشتری "غنی" نوعی سازش بین مشتری "ضخیم" و "لاغر" است. مانند مشتری "لاغر"، مشتری "ثروتمند" نیز ارائه می دهد رابط کاربری گرافیکی، قبلاً در XML توضیح داده شده است و شامل برخی از عملکردهای مشتریان غنی است (به عنوان مثال، رابط کشیدن و رها کردن، برگه ها، چندین پنجره، منوهای کشویی و غیره)

    منطق برنامه کلاینت "rich" نیز بر روی سرور پیاده سازی می شود. داده ها در قالب تبادل استاندارد بر اساس همان XML ارسال می شوند ( پروتکل های SOAP، XML-RPC) و توسط مشتری تفسیر می شوند.

    برخی از اصلی ترین پروتکل های مشتری غنی مبتنی بر XML در زیر فهرست شده اند:

    • XAML (EXtensible Application Markup Language) - توسعه یافته توسط مایکروسافت، مورد استفاده در برنامه های کاربردی در پلت فرم دات نت.
    • XUL (زبان رابط کاربری XML) استانداردی است که در داخل توسعه یافته است پروژه موزیلا، برای مثال در نامه استفاده می شود مشتری موزیلاتاندربرد یا مرورگر موزیلافایرفاکس؛
    • فلکس- فناوری چند رسانه ایبر اساس XML توسعه یافته توسط Macromedia/Adobe.

    نتیجه

    بنابراین، ایده اصلی معماری مشتری-سرور این است که برنامه شبکه را به چندین مؤلفه تقسیم کندکه هر کدام مجموعه خاصی از خدمات را پیاده سازی می کنند. اجزای چنین برنامه ای می توانند بر روی رایانه های مختلف اجرا شوند و عملکردهای سرور و/یا کلاینت را انجام دهند. این امر قابلیت اطمینان، امنیت و عملکرد را بهبود می بخشد. برنامه های کاربردی شبکهو به طور کلی شبکه

    فن آوری های مشتری

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

    فن آوری های اینترنتی تکامل یافته اند، html با در نظر گرفتن فرصت های جدید به شدت تغییر کرده است، xhtml "بهبود" (Extensible Hypertext Markup Language) ظاهر شده است - یک زبان نشانه گذاری فرامتن توسعه یافته برای صفحات وب، قابل مقایسه با قابلیت های html و ایجاد شده بر اساس xml. .

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

    البته، نتایج بهینه چیدمان وب سایت را تنها می توان با ترکیب ماهرانه کد html و یک شیوه نامه آبشاری به دست آورد.

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

    جاوا اسکریپت یک زبان برنامه نویسی سبک وزن و تفسیر شده با قابلیت های شی گرا است. هسته زبان جهانی در مرورگرهای وب مختلف ساخته شده است. جاوا اسکریپت سمت کلاینت به صفحات وب اجازه می دهد تا محتوای اجرایی را شامل شوند. صفحه وبنیازی نیست که کد html ثابت باشد، بلکه ممکن است شامل برنامه هایی باشد که با کاربر تعامل دارند، مرورگر را کنترل می کنند و به صورت پویا html تولید می کنند.

    جاوا اسکریپت در طول سالیان متمادی تکامل یافته و در طی آن چندین نسخه از این زبان منتشر شده است. به عنوان مثال، مایکروسافت نسخه هایی را با نام Jscript منتشر کرده است. به نوبه خود، انجمن Ecma که فعالیت های آن به استانداردسازی فناوری های اطلاعات و ارتباطات اختصاص دارد، سه نسخه را منتشر کرده است که جاوا اسکریپت را با نام EcmaScript استاندارد می کند. دومی نسخه استاندارد پایه را تعریف کرد زبان جاوا اسکریپت، و جهان وب گستردهکنسرسیوم ها یک توصیه DOM منتشر کرده اند که منعکس کننده توانایی مرورگرها برای پشتیبانی از مدل شی است.

    مرورگرهای وب به شما امکان مشاهده صفحات اینترنتی را می دهند.

    همانطور که تمرین نشان می دهد، مرورگرهای مختلف یک صفحه خاص را به روش های مختلف نشان می دهند. نمایش صفحات به الگوریتم های تصحیح تعبیه شده در مرورگر و در آن بستگی دارد مرورگرهای مختلفاین الگوریتم ها متفاوت هستند. Internet Explorer و Netscape Navigator که تحت ویندوز اجرا می‌شوند، صفحات را تقریباً به همان شکل نمایش می‌دهند و فقط در جزئیاتی مانند حاشیه و تورفتگی تفاوت دارند. با این حال، مرورگرهای دیگر ممکن است به طور جدی برخی از صفحات را تحریف کنند. توسعه دهندگان محصولات خود را با هر نسخه جدید بهبود می بخشند، پس چه نسخه جدیدترمرورگر، کمتر تحریف می شود.

    فناوری های سرور

    در زمینه برنامه نویسی برای شبکه اینترنت پی اچ پییکی از زبان های اسکریپت نویسی محبوب (به همراه JSP، Perl و زبان های مورد استفاده در ASP.NET) به دلیل سادگی، سرعت اجرا، عملکرد غنی، کراس پلتفرم و توزیع کدهای منبع مبتنی بر PHP است. مجوز.

    Perl یک زبان برنامه نویسی پویا تفسیر شده با هدف عمومی و سطح بالا است که توسط لری وال، یک زبان شناس با آموزش ایجاد شده است. ویژگی اصلی این زبان فرصت های غنی آن برای کار با متن، از جمله کار با آن است عبارات با قاعده، در نحو تعبیه شده است. پرل ویژگی های بسیاری را از زبان های اسکریپت نویسی پوسته C، AWK، UNIX به ارث برده است.

    JSP یکی از فناوری های با کارایی بالا است زیرا تمام کدهای صفحه با استفاده از کامپایلر Jasper page JSP به کد جاوای سرولت ترجمه می شوند و سپس به کد بایت کامپایل می شوند. ماشین مجازیجاوا (JVM). ظروف Servlet که قادر به اجرای صفحات JSP هستند به زبان جاوا نوشته شده اند که می توانند بر روی پلتفرم های مختلف اجرا شوند. صفحات JSP بر روی سرور بارگذاری می شوند و از یک ساختار بسته سرور جاوا خاص به نام Java EE Web Application مدیریت می شوند که بیشتر در آرشیو فایل های .war و .ear بسته بندی شده اند. مزیت JSP نسبت به سایر فناوری های وب این است که JSP یک فناوری مستقل، قابل حمل و به راحتی قابل توسعه برای توسعه برنامه های وب است.

    ASP.NET یک فناوری برای ایجاد برنامه های کاربردی وب و خدمات وب از مایکروسافت است. این بخشی جدایی ناپذیر از پلت فرم دات نت مایکروسافت و تکاملی از فناوری قدیمی تر مایکروسافت ASP است. ASP.NET از نظر ظاهری شباهت های زیادی به فناوری قدیمی ASP دارد و مهاجرت به ASP.NET را برای توسعه دهندگان نسبتاً آسان می کند. در عین حال، ASP.NET از نظر داخلی بسیار متفاوت از ASP است زیرا مبتنی بر پلتفرم دات نت است و بنابراین از تمام ویژگی های جدید ارائه شده توسط این پلتفرم بهره می برد.

    ASP.NET یک پلتفرم نیست.

    IIS مجموعه ای اختصاصی از سرورها برای چندین سرویس اینترنتی مایکروسافت است. IIS با سیستم عامل های خانواده ویندوز NT توزیع شده است.

    مؤلفه اصلی IIS سرور وب است که به شما امکان میزبانی وب سایت ها را در اینترنت می دهد. IIS از پروتکل های HTTP، HTTPS، FTP، POP3، SMTP، NNTP پشتیبانی می کند.

    وب سرور مجموعه ای از سخت افزار و نرم افزار است که درخواست های HTTP را از کلاینت ها (معمولاً مرورگرهای وب) می پذیرد و پاسخ های HTTP را صادر می کند. در یک مورد ساده، پاسخ وب سرور- این محتوای فایل های موجود در آن است: اسناد، تصاویر، فیلم ها و غیره. چنین داده‌هایی استاتیک نامیده می‌شوند: اگر کاربر چندین بار اطلاعاتی را در یک آدرس درخواست کند، وب سرور دقیقاً همان محتوا را برمی‌گرداند. برای یک رویکرد پویا، یعنی زمانی که اطلاعات خروجی در طول زمان تغییر می کند و / یا به پارامترهای درخواست بستگی دارد، یک وب سرور کافی نیست. در این مورد، وب سرور به عنوان یک پیوند انتقالی بین مشتری و برخی از محیط های نرم افزاری که محتوای صفحه HTML را تولید می کند، عمل می کند. و در اینجا این سوال مطرح می شود: اگر صفحه پویا هنوز توسط برنامه تولید می شود، چرا به وب سرور نیاز داریم.

    با یک بار کوچک روی برنامه - چندین کاربر (واحد) به طور همزمان متصل - سرور وب یک پیوند کاملا ضروری نیست. تقریباً تمام بسته های توسعه برنامه وب موجود در حال حاضر شامل سبک وزنوب سرور کافی است محیط توسعه را برای اجرا راه اندازی کنید و می توانید با مرورگر به آن متصل شوید و از طریق پروتکل HTTP با آن کار کنید.

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

    این رویکرد به وب سرور اجازه می دهد تا زمان کمتری را در انتظار رسیدن داده ها صرف کند و کارایی سیستم را به طور کلی افزایش دهد.

    همه مدرن ( پر بدن) وب سرورها از پردازش ناهمزمان درخواست های دریافتی از مشتریان استفاده می کنند. یعنی سرور پس از دریافت درخواست از کلاینت این درخواست را به worker thread ارسال می کند. خود سرور همچنان درخواست‌های مشتریان را دریافت می‌کند و آنها را به کنترل‌کننده‌ها هدایت می‌کند. چندین استراتژی برای کار با کنترلرها وجود دارد.

    • - تعداد کارگران می تواند هاردکد باشد. به عنوان مثال، هنگامی که سرور راه اندازی می شود، 10 رشته راه اندازی می شود. پس از دریافت درخواست یازدهم، سرور پاسخی را برای مشتری صادر می کند به طور موقت در دسترس نیست.
    • - Worker می تواند به صورت پویا توسط سرور بسته به بار تولید شود. در عین حال تعداد اولیه کارگر، حداکثر تعداد مجاز، حداقل و حداکثر تعداد کارگران آزاد مشخص شده است.
    • - Worker می تواند یا یک فرآیند یا یک نخ باشد. فرآیندهای مختلف با یکدیگر تعامل ندارند و نمی توانند داده ها را به اشتراک بگذارند. برخلاف فرآیندها، رشته ها دارای یک فضای داده مشترک مشترک هستند و می توانند اطلاعات را بین خود مبادله کنند.
    • - فرآیندهای Worker می توانند هم در داخل فرآیند سرور والد و هم در خارج اجرا شوند. با گزینه دوم، کارگران می توانند در رایانه های مختلف توزیع شوند.
    • - کارگر - بیرون والدینسرورها می توانند مستقیماً فرآیندهای محیط برنامه وب باشند.
    • - سرور می تواند ردیابی کند انواع مختلفتوزیع بار بین کارگر تولید شده: بارگذاری یکنواخت یا متوالی.

    با ترکیب این عوامل می توانید سعی کنید به بهترین عملکرد کلی سیستم دست یابید.

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

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

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

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

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

    فن آوری های مشتری

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

    فن آوری های مشتری عمدتا برای افزایش تعامل برنامه ها استفاده می شود، به عنوان مثال، برای بررسی صحت داده های ورودی بدون تماس اضافی با سرور، و ایجاد یک محیط راحت رابط کاربری. به عنوان مثال، مرورگرهای وب مدرن و برخی از سرویس گیرندگان ایمیل قادر به تفسیر کد در زبان های اسکریپت، اجرای برنامه های کاربردی جاوا و کنترل های ActiveX و استفاده از افزونه های دیگر مانند Macromedia هستند. فلش پلیر، نمایشگرهای ارائه QuickTime، ابزار پخش رسانه.

    کد تفسیر شده توسط مرورگر

    اکثریت مرورگرهای وب مدرنکه برای پلتفرم‌ها و دستگاه‌های مختلف ایجاد شده است، می‌تواند کدهای تعبیه‌شده در یک صفحه HTML را به زبان‌های برنامه‌نویسی مانند VBScript و JavaScript تفسیر کند. کاربردهای معمول کد کلاینت جاسازی شده اعتبارسنجی ورودی کاربر بدون رفتن به سرور وب، ایجاد برخی عناصر طراحی مانند دکمه‌ها و منوها، و مدیریت سایر اشیاء تعبیه‌شده در صفحه HTML است.

    کد تفسیر شده توسط مرورگر در فضای آدرس خود اجرا می شود. چنین کدی دارای مجموعه نسبتاً محدودی از ابزارها است (به ویژه دسترسی به آن امکان پذیر نیست سیستم فایلکامپیوتر مشتری یا اجرای برنامه های کاربردی دیگر بر روی آن). با این حال، اکثر مرورگرها به شما امکان می دهند اجرای کد را در زبان های اسکریپتی ممنوع کنید، زیرا هر گونه اجرای کد در رایانه مشتری ممکن است ناامن باشد (به عنوان مثال، به دلیل هر گونه خطا در اجرای مفسر این کد در مرورگر).

    اپلت های جاوا

    تقریباً همه مرورگرهای مدرن قادر به نمایش و اجرای اپلت‌های جاوا هستند، برنامه‌های ویژه جاوا که در یک صفحه وب به آن‌ها پیوند داده شده‌اند. اپلت ها می توانند روی تمام پلتفرم هایی که JVM برای آنها وجود دارد اجرا شوند. روش‌های تعامل اپلت‌ها با رایانه مشتری نیز محدود است، به عنوان مثال، سیستم فایل و برنامه‌های کاربردی آن برای آنها غیرقابل دسترسی است، و دسترسی شبکهاز یک اپلت فقط برای رایانه ای که از آن بارگیری شده است امکان پذیر است. با این حال، یک اپلت را می توان با تنظیم پارامترهای آن (به عنوان مثال، رنگ، فونت، و غیره) در متن صفحه HTML حاوی آن یا در کد زبان برنامه نویسی همان صفحه کنترل کرد.

    اکثر مرورگرها ابزارهای قابل دسترسی برای کاربر برای محدود کردن توانایی اجرای اپلت ها دارند، زیرا آنها، مانند مفسرهای زبان اسکریپت، اجرای کد را بر روی رایانه مشتری پیاده سازی می کنند و هیچ کس نمی تواند تضمین کند که هیچ خطایی در اجرای ماشین جاوا وجود ندارد. اپلت را اجرا می کند.

    کنترل های ActiveX

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

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

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

    توجه داشته باشید که امروزه کنترل های ActiveX بیشتر در اینترانت ها استفاده می شود نه در وب سایت های عمومی.

    برنامه های Macromedia Flash

    یکی دیگر از فناوری های وب بسیار محبوب مبتنی بر اجرای کد برنامه مشتری، برنامه Macromedia Flash است. Macromedia Flash Player مانند ماشین مجازی جاوا از نظر دسترسی به منابع کامپیوتر مشتری دارای قابلیت های محدودی است. بنابراین، برنامه های فلشبه سیستم فایل به جز دایرکتوری خدمات Macromedia Flash Player دسترسی ندارند و دسترسی به دستگاه های خارجی محدود به میکروفون ها و دوربین های ویدئویی است. دسترسی به منابع شبکهمحدود به دامنه ای که از آن دریافت شده است این نرم افزار. توجه داشته باشید که مانند اپلت‌های جاوا و کنترل‌های ActiveX، برنامه‌های فلش را می‌توان با استفاده از کد جاوا اسکریپت موجود در همان صفحه کنترل کرد. از آنجایی که Macromedia Flash Player برای Microsoft Internet Explorer خود یک کنترل ActiveX است، از برخی از ویژگی های کنترل های ActiveX برای دسترسی به ویژگی های برنامه فلش از زبان های اسکریپت استفاده می کند.

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

    تمام ابزارهای ذکر شده برای گسترش عملکرد صفحات HTML همچنین می توانند در صفحات پویا تولید شده توسط برنامه های وب سرور استفاده شوند، چنین صفحاتی ممکن است حاوی پیوندهایی به کنترل های ActiveX، برنامه های کاربردی فلش و اپلت ها باشند. اما پرکاربردترین آنها ابزارهایی برای ایجاد برنامه های کاربردی وب هستند که تحت کنترل وب سرورها اجرا می شوند و صفحات HTML پویا را با کدهای تعبیه شده در زبان های برنامه نویسی برای تفسیر مرورگر تولید می کنند.

    فناوری های سرور

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

    اسکریپت ها و فایل های اجرایی

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

    مشکل اصلی همه برنامه های CGI این است که در هر درخواست مشتری، سرور برنامه را از آن بارگیری می کند هارد دیسکرا وارد یک فرآیند جداگانه کرده و سپس اجرا و تخلیه آن را آغاز می کند. این ویژگی عملکرد برنامه و توانایی پردازش همزمان را محدود می کند. تعداد زیادیدرخواست های مشتری

    کتابخانه ها در فضای آدرس سرور وب بارگذاری می شوند

    مشکل عملکرد محدود برنامه های کاربردی وب که در یک فضای آدرس جداگانه اجرا می شوند را می توان با ایجاد یک برنامه کاربردی به عنوان کتابخانه ای که در فضای آدرس وب سرور بارگذاری می شود و در صورت لزوم برای پردازش درخواست های بعدی از سایر کلاینت ها در آنجا باقی می ماند حل کرد. (مشخص است که در این حالت وب سرور باید از بارگذاری چنین کتابخانه هایی پشتیبانی کند). برنامه های مشابه برای سرویس اطلاعات اینترنت مایکروسافت ISAPI (Internet Server Application Program Interface) نامیده می شوند و چنین کتابخانه هایی برای وب سرور بسیار محبوب آپاچی Apache DSO (اشیاء مشترک پویا) نامیده می شوند. این فناوری ها مدت زیادی است که وجود داشته اند، اما هنوز هم بسیار محبوب هستند.

    برنامه های کاربردی وب مبتنی بر استفاده از کتابخانه های بارگذاری شده در فضای آدرس وب سرور

    توجه داشته باشید که هنگام ایجاد هر دو برنامه CGI و ISAPI، جدا کردن وظایف طراحی از وظایف مربوط به اجرای عملکرد و منطق برنامه ها بسیار دشوار است، چنین برنامه هایی کل صفحات وب را تولید می کنند.

    صفحات وب با قطعه کد سرور

    ASP و ASP.NET

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

    یکی از محبوب ترین فناوری های امروزی که ایده ایجاد صفحات وب با قطعه کد را پیاده سازی می کند، کلید ASP.NET در معماری Microsoft .NET Framework است. تفاوت اصلی این فناوری با ASP از نظر معماری برنامه در این است که کدهای موجود در صفحه وب تفسیر نمی شوند، بلکه کامپایل و کش می شوند که باعث بهبود عملکرد برنامه می شود. علاوه بر این، این فناوری به شما امکان می دهد تا به اصطلاح مؤلفه های سرور ایجاد کنید که کد HTML را با قطعات کد تفسیر شده توسط مرورگر به زبان های برنامه نویسی به مرورگر برمی گرداند و می تواند رابط کاربری راحت تری نسبت به کد HTML معمولی ارائه دهد. ویژگی های مهم اجزای سرور ASP .NET توانایی مدیریت رویدادهای روی سرور است که در برنامه مشتریو توانایی تولید کدهای HTML، WML و CHTML، بسته به نوع کلاینت و زبان های نشانه گذاری و پروتکل های انتقال داده که پشتیبانی می کند.

    ASP .NET 2.0، توسعه بیشتر ASP.NET، در طول امسال در دسترس توسعه دهندگان قرار خواهد گرفت. با کمک آن، توسعه دهندگان به مجموعه گسترده ای از بلوک های آماده دسترسی خواهند داشت. قالب های صفحه، رابط های برنامه، ابزارهایی برای ساده کردن پیکربندی خارجی نوع برنامهو همچنین ابزارهای شخصی‌سازی، ابزارهایی برای پشتیبانی از محلی‌سازی برنامه‌ها، ابزارهای استقرار که به شما امکان می‌دهند برنامه‌ها را بدون ارائه برنامه‌ها توزیع کنید. کد منبعو به اجزای ایجاد پورتال، دسترسی به اطلاعات ایمن، برای نمایش راحت داده ها، که به شما امکان می دهد برنامه های وب را ایجاد کنید که از نظر راحتی و رابط کاربری به برنامه های ویندوز نزدیک هستند.

    صفحات سرور جاوا

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

    برنامه های کاربردی وب مبتنی بر استفاده از صفحات وب با قطعات جاسازی شده کد سرور

    وقتی صحبت از فناوری JSP شد، نمی توان به مشخصات نسبتاً جدیدی از Sun به نام Java Server Faces اشاره کرد. این مشخصات قوانینی را برای ایجاد برنامه های کاربردی وب با یک رابط کاربر پسند (از نظر عملکرد مشابه با رابط برنامه های کاربردی ویندوز) و برای توسعه اجزای سرور که چنین رابطی را پیاده سازی می کنند، شرح می دهد. ابزارهای توسعه برنامه جاوا که از این مشخصات پشتیبانی می کنند باید به طور ایده آل به شما امکان ایجاد برنامه های وب مبتنی بر J2EE را با سرعت و راحتی تقریباً مشابه ابزارهای توسعه برنامه دات نت بدهند.

    از دیگر فناوری‌های محبوبی که ایجاد صفحات وب با قطعات کد در حال اجرا بر روی سرور را پیاده‌سازی می‌کنند، ما به PHP (صفحات خانگی شخصی) اشاره می‌کنیم. این فناوری مبتنی بر استفاده از برنامه های کاربردی CGI است که کدهای تعبیه شده در یک صفحه HTML را به زبان برنامه نویسی تفسیر می کنند. علی‌رغم کاستی‌های ذاتی در همه برنامه‌های CGI، PHP به دلیل سهولت توسعه و در دسترس بودن برای پلتفرم‌های مختلف، به‌ویژه هنگام ایجاد برنامه‌هایی که نیازهای بالایی برای مقیاس‌پذیری و قابلیت اطمینان ندارند، از محبوبیت قابل‌توجهی برخوردار است.

    کاربرد نرم افزار زیرساخت عمومی

    هرچه ترافیک سایت بیشتر باشد و حجم داده های پردازش شده توسط آن بیشتر باشد، الزامات عملکرد و مقیاس پذیری برنامه های کاربردی وب سخت تر خواهد بود. هرچه کارهای جدی تری با کمک یک برنامه وب حل شوند، الزامات قابل اعتماد و امنیت آن بیشتر می شود. اغلب، برای برآورده کردن این الزامات، منطق تجاری پیاده‌سازی شده در یک برنامه وب، و همچنین خدمات پردازش داده و اجرای تراکنش، از رابط کاربری برنامه جدا شده و به صورت پیاده‌سازی می‌شوند. برنامه های کاربردی فردی، کتابخانه ها، سرولت ها که عموماً به آنها اشیاء تجاری می گویند. امروزه در اکثریت قریب به اتفاق مدرن راه حل های شرکتییا از سرورهایی که از مشخصات Java2 Enterprise Edition پشتیبانی می کنند، یا از سرورهای مبتنی بر استفاده از خدمات سرور سرور استفاده می شود. نسخه های ویندوزفن آوری های COM و Microsoft .NET.

    اشیاء تجاری می توانند عملکردهای متفاوتی داشته باشند. به عنوان یک قاعده، آنها دسترسی به داده های مدیریت شده توسط برخی از سرورهای DBMS را فراهم می کنند که اغلب به داده های سیستم های اطلاعات شرکت دسترسی دارند. اغلب، اشیاء تجاری بخشی از سیستم اطلاعات شرکت را پیاده سازی می کنند، که ایجاد آن در ابتدا شامل گنجاندن یک وب سرور خارجی به عنوان بخشی جدایی ناپذیر از سیستم اطلاعات شرکت می شود (به عنوان مثال، به عنوان یکی از منابع داده برای یک برنامه CRM). ). سیستم های CRM و ERP آماده تولید کنندگان پیشرومانند SAP، PeopleSoft، Siebel، معمولاً حاوی چنین اشیاء تجاری و اغلب برنامه های کاربردی وب آماده دسترسی به آنها هستند، به عنوان مثال، پورتال های مشتریان و کاربران راه دور، برنامه های کاربردی برای پیاده سازی تجارت الکترونیکو برنامه های کاربردی دیگر

    خدمات وب

    سیستم های اطلاعاتیبسیاری از شرکت ها برای بیش از یک دوجین سال. و از آنجایی که شرکت ها اغلب توسعه خود را با اتوماسیون خود به خودی انواع خاصی از فعالیت ها آغاز کردند، امروزه بسیاری از آنها با مشکل یکپارچه سازی برنامه های ایجاد شده در سال های مختلف برای پلت فرم های مختلف مواجه هستند. یکی از ابزارهای چنین ادغامی، فناوری خدمات وب است که از یک استاندارد استفاده می کند پروتکل HTTP. می توانید خدمات وب را در فرم ایجاد کنید فایل های اجرایی، هم در قالب کتابخانه ها و هم در قالب کدهای تفسیر شده; همچنین ابزارهایی برای نمایش اشیاء تجاری مبتنی بر فناوری های مختلف در قالب خدمات وب (این فناوری اکنون توسط تمام تولید کنندگان پیشرو محصولات اداری پشتیبانی می شود)، ابزارهای توسعه، DBMS، سرورهای برنامه و سیستم های عامل. می توان از روش های وب سرویس فراخوانی کرد برنامه های کاربردی رایج، برنامه های کاربردی وب، سایر خدمات وب. اخیراً برنامه‌هایی که از وب سرویس‌ها استفاده می‌کنند، از جمله برنامه‌هایی که برای آنها طراحی شده‌اند، ظهور کرده‌اند کاربران نهایی(به عنوان مثال، چنین برنامه هایی شامل برنامه هایی از خانواده Microsoft Office System است که به استفاده از خدمات وب برای استفاده از داده های فرهنگ لغت، دایره المعارف ها، سیستم های ترجمه آنلاین، خدمات سفارش آنلاین اجازه می دهد، به عنوان مثال به مقاله «اینترنت و برنامه های اداری"، شماره 10'2004).