۳۰ شهریور ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

مزایا و چالش های معماری رویداد محور

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

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

داده ها به طور تصاعدی در حال افزایش است. مقدار داده تولید شده روزانه به ۴۶۳ اگزابایت در سطح جهان در سه سال. برای در نظر گرفتن این موضوع، تخمین زده می‌شود که تمام کلماتی که تاکنون توسط انسان تولید شده است، پنج اگزابایت است.

برای موفقیت در اقتصاد دیجیتال امروزی، شرکت‌ها استراتژی‌هایی را برای مصرف و تجزیه و تحلیل همه این داده‌ها برای اتخاذ تصمیمات تجاری درست در زمان واقعی به کار می‌برند. تا سال ۲۰۲۵، تخمین زده می شود که میانگین تعداد تعاملات دیجیتال روزانه به ازای هر فرد متصل به ۵۰۰۰ خواهد رسید. شرکت‌ها باید بتوانند این تقاضای فزاینده برای داده‌ها، فرآیندها و تجربیات کاربر را برآورده کنند.

یک استراتژی استفاده از معماری رویداد محور است. معماری رویداد محور یک الگوی طراحی نرم‌افزاری است که به شرکت‌ها اجازه می‌دهد در زمان واقعی در رویدادهای تجاری مانند معاملات مشتری عمل کنند. معماری رویداد محور مفهوم جدیدی نیست. از دهه ۱۹۷۰ وجود داشته است. با این حال، این فناوری تا همین اواخر وجود نداشت تا به طور واقعی به کسب و کار و مصرف کنندگان خدمت کند.

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

معماری رویداد محور چگونه کار می کند و مزایای آن

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

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

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

درک ScopedValue جدید جاوا

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

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

چالش‌های اجرای معماری رویداد محور

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

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

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

افزایش C++ به زبان C نزدیک می شود

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

Ably pub/sub messaging

برای غلبه بر این چالش‌ها، پلتفرم پیام‌رسان Ably edge API‌هایی را ارائه می‌کند که به توسعه‌دهندگان امکان می‌دهد برنامه‌ها و زیرساخت‌هایی را بسازند که در زمان واقعی بدون نیاز به مدیریت مقیاس، تأخیر، یکپارچگی پیام یا قطع شبکه ارتباط برقرار کنند.

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

کانال‌ها راهی برای پیاده‌سازی الگوی pub/sub ارائه می‌دهند که به ناشران این امکان را می‌دهد تا داده‌ها را سریع و کارآمد به مشترکان منتقل کنند. داده های جدید به مشترکین ارسال می شود، بنابراین آنها مجبور نیستند برای بررسی داده های جدید از سرورها نظرسنجی کنند.

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

OutSystems از AI Agent Builder بدون کد رونمایی کرد

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

شکل زیر نشان می‌دهد که چگونه Ably چالش مسیریابی جهانی کارآمد را حل می‌کند:

ably رویداد محور معماری

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

مشتری ناشر و مشترک در لندن با استفاده از مسیریابی مبتنی بر تأخیر به نزدیکترین مرکز داده (EU West) هدایت می شود. پیام B منتشر شده در EU West به مشتریان مشترک در اتحادیه اروپا و یک بار به هر مرکز داده دیگری که میزبان مشتریان مشترک این پیام‌ها است هدایت می‌شود. مشتریان مشترک در همه مناطق دیگر پیام B را از مرکز داده ای که به آن متصل هستند دریافت می کنند.

آینده تجربیات بلادرنگ

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

جیمز آلی مدیر ارشد فناوری در Ably، یک پلت‌فرم پیام‌رسانی لبه‌ای برای تقویت تجربه‌های دیجیتالی همزمان و هم‌زمان در مقیاس.

New Tech Forum مکانی برای کاوش و بحث در مورد فناوری سازمانی نوظهور در عمق و وسعت بی سابقه ای فراهم می کند. انتخاب ذهنی است، بر اساس انتخاب ما از فناوری هایی که معتقدیم مهم هستند و برای خوانندگان InfoWorld بیشترین علاقه را دارند. InfoWorld وثیقه بازاریابی را برای انتشار نمی پذیرد و حق ویرایش تمام محتوای ارائه شده را برای خود محفوظ می دارد. همه سوالات را به newtechforum@infoworld.com ارسال کنید.