مستقیم

ساخت وبلاگ

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

نامتقارن

مؤلفه SEDA در هنگام تولید پیام صرافی ، دعوت ناهمزمان از هر مصرف کننده را فراهم می کند.

اتصال به سایر زمینه های شتر

مؤلفه VM تا زمانی که در همان JVM کار می کند ، بین زمینه های شتر ارتباط برقرار می کند.

قالب URI

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

پیکربندی گزینه ها

اجزای شتر در دو سطح جداگانه پیکربندی شده اند:

پیکربندی گزینه های مؤلفه

سطح مؤلفه بالاترین سطح است که دارای تنظیمات عمومی و متداول است که توسط نقاط پایانی به ارث می رسد. به عنوان مثال ، یک مؤلفه ممکن است دارای تنظیمات امنیتی ، اعتبارنامه برای تأیید اعتبار ، URL برای اتصال به شبکه و موارد دیگر باشد.

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

پیکربندی مؤلفه ها را می توان با مؤلفه DSL ، در یک فایل پیکربندی (Application. Properties | YAML) یا مستقیماً با کد جاوا انجام داد.

پیکربندی گزینه های نقطه پایانی

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

پیکربندی نقاط پایانی اغلب در قسمت انتهای URI به عنوان پارامترهای مسیر و پرس و جو انجام می شود. همچنین می توانید از نقطه Endpoint DSL و DataFormat DSL به عنوان روشی ایمن برای پیکربندی نقاط پایانی و قالب های داده در جاوا استفاده کنید.

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

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

گزینه های مؤلفه

مؤلفه مستقیم از 5 گزینه پشتیبانی می کند ، که در زیر ذکر شده است.

BridgeerRorhandler (مصرف کننده)

اجازه می دهد تا مصرف کننده را به کنترل کننده خطای مسیریابی شتر برساند ، به این معنی که هرگونه استثنائی در حالی که مصرف کننده در تلاش است تا پیام های دریافتی را انتخاب کند ، یا امثال آن ، اکنون به عنوان یک پیام پردازش می شود و توسط کنترل کننده خطای مسیریابی اداره می شود. به طور پیش فرض ، مصرف کننده از org. apache. camel. spi. exceptionhandler برای مقابله با استثنائات استفاده می کند ، که در سطح هشدار یا خطا وارد می شود و نادیده گرفته می شود.

بلوک (تولید کننده)

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

LazystartProducer (تولید کننده)

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

TIMEOUT (تولید کننده)

مقدار زمان بندی برای استفاده در صورت فعال بودن بلوک.

autowiredenabled (پیشرفته)

آیا خودکار سازی فعال است. این مورد برای گزینه های خودکار خودکار سازی (گزینه باید به صورت خودکار مشخص شود) با جستجو در رجیستری استفاده می شود تا دریابید که آیا یک نمونه واحد از نوع تطبیق وجود دارد ، که سپس بر روی مؤلفه پیکربندی می شود. این می تواند برای پیکربندی خودکار منابع داده JDBC ، کارخانه های اتصال JMS ، مشتری AWS و غیره استفاده شود.

گزینه های نقطه پایانی

نقطه پایانی مستقیم با استفاده از نحو URI پیکربندی شده است:

با پارامترهای مسیر زیر و پرس و جو:

پارامترهای مسیر (1 پارامتر)

نام (مشترک)

نام مورد نیاز نقطه پایانی مستقیم.

پارامترهای پرس و جو (8 پارامتر)

BridgeerRorhandler (مصرف کننده (پیشرفته))

اجازه می دهد تا مصرف کننده را به کنترل کننده خطای مسیریابی شتر برساند ، به این معنی که هرگونه استثنائی در حالی که مصرف کننده در تلاش است تا پیام های دریافتی را انتخاب کند ، یا امثال آن ، اکنون به عنوان یک پیام پردازش می شود و توسط کنترل کننده خطای مسیریابی اداره می شود. به طور پیش فرض ، مصرف کننده از org. apache. camel. spi. exceptionhandler برای مقابله با استثنائات استفاده می کند ، که در سطح هشدار یا خطا وارد می شود و نادیده گرفته می شود.

استثنائیدر (مصرف کننده (پیشرفته))

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

ExchangePatte (مصرف کننده (پیشرفته))

هنگامی که مصرف کننده مبادله ای ایجاد می کند ، الگوی تبادل را تنظیم می کند.

بلوک (تولید کننده)

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

FailifNoconsumers (تولید کننده)

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

TIMEOUT (تولید کننده)

مقدار زمان بندی برای استفاده در صورت فعال بودن بلوک.

LazystartProducer (تولید کننده (پیشرفته))

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

همزمان (پیشرفته)

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

نمونه ها

در مسیر زیر از مؤلفه مستقیم استفاده می کنیم تا دو مسیر را به هم پیوند دهیم:

و نمونه با استفاده از DSL بهار:

همچنین نمونه هایی از مؤلفه SEDA را ببینید ، که چگونه می توان از آنها استفاده کرد.

تنظیم خودکار بوت بهار

هنگام استفاده مستقیم با بوت بهار ، حتماً از وابستگی maven زیر استفاده کنید تا از پیکربندی خودکار پشتیبانی کنید:

این مؤلفه از 6 گزینه پشتیبانی می کند ، که در زیر ذکر شده است.

camel.component. direct.autowired- فعال

آیا خودکار سازی فعال است. این مورد برای گزینه های خودکار خودکار سازی (گزینه باید به صورت خودکار مشخص شود) با جستجو در رجیستری استفاده می شود تا دریابید که آیا یک نمونه واحد از نوع تطبیق وجود دارد ، که سپس بر روی مؤلفه پیکربندی می شود. این می تواند برای پیکربندی خودکار منابع داده JDBC ، کارخانه های اتصال JMS ، مشتری AWS و غیره استفاده شود.

camel.component. direct. block

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

camel.component. direct. bridge-error-handler

اجازه می دهد تا مصرف کننده را به کنترل کننده خطای مسیریابی شتر برساند ، به این معنی که هرگونه استثنائی در حالی که مصرف کننده در تلاش است تا پیام های دریافتی را انتخاب کند ، یا امثال آن ، اکنون به عنوان یک پیام پردازش می شود و توسط کنترل کننده خطای مسیریابی اداره می شود. به طور پیش فرض ، مصرف کننده از org. apache. camel. spi. exceptionhandler برای مقابله با استثنائات استفاده می کند ، که در سطح هشدار یا خطا وارد می شود و نادیده گرفته می شود.

camel.component. direct. enabled

آیا می توان پیکربندی خودکار مؤلفه مستقیم را فعال کرد. این به طور پیش فرض فعال است.

camel.component. direct. lazy-start-تولید کننده

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

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

برچسب : نویسنده : پرویز حبّی بازدید : <-PostHit-> تاريخ : دوشنبه 21 فروردين 1402 ساعت: 15:01