مقایسه کامیت On-Board و Off-Board

by dashtban

offboard comet

تعاریف:

Off-Board Comet : به حالتی گویند که سرور های ارائه دهنده کامیت و سرور ارائه دهند سایر داده ها از یکدیگر جدا شوند.

On-Board Comet : به حالتی گویند که همان سروری که داده ها را ارائه می دهد ، کامیت را هم ارائه دهد.

چه تفاوتی دارند؟

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

مزایای Off-Board Comet:

  • باعث بهبود قطعی های سیستم می شود ( قطعی ها کمتر می شود).
  • هماهنگی بهتر با سیستم های چند زبانه.
  • توسعه و تغییرات راحت تر است.

مزایای On-Board Comet :

  • راه اندازی ساده و آسان.
  • مدیریت ساده در صورت استفاده از داده های نرمال.
  • توسعه و برنامه نویسی سیستم بسیار ساده تر و راحت تر انجام می شود.

از چه FrameWork هایی برای پیاده سازیOff-Board یا On-Board استفاده کنم؟

Cometd, Lightstreamer, Caplin Liberator و Orbited مثال های از فریم ورک ها برای پیاده سازی Off-Board Comet هستند.

DWR و وب سرور هایی که به صورت داخلی از کامیت پشتیبانی می کنند مانند, Grizzy Jetty و TomCat مثال هایی از پیاده سازی On-board Comet هستند.

به طور کلی در پروژه های بزرگ از فرم ورک ها و معماری Off-Board استفاده کنید و برای پروژه های کوچک از On-Board.

چگونه انتخاب کنیم؟

چند فاکتور که به شما استفاده از Off-board را نشان می دهد به شرح زیر است :

  • شما به دنبال توسعه سیستم هایی در مقیاس Google یا FaceBook هستید.
  • شما از زبان های برنامه نویسی مثل PHP استفاده می کنید که به صورت کامل Comet را پشتیبانی نمی کنند.
  • شما سیستم بزرگ فعالی دارید که کاری که کامیت می کند با کاری که کل سیستم می کند متفاوت است.

چند فاکتور که به شما استفاده از On-board را نشان می دهد به شرح زیر است :

  • احتیاجات کامیتی شما با فعالیت اصلی سیستم شما در یک راستا است.
  • شما به دنبال حل مسائل ساده و کارایی های کوچکی هستید.
  • شما کامیت را بدون ایجاد تغییرات زیادی در سرور می خواهید.