نوشته‌ها

معرفی Microsoft Biztalk سرور و اجزای آن

معرفی Microsoft Biztalk سرور و اجزای آن

معرفی Microsoft Biztalk سرور و اجزای آن: فرض کنيد که سيستم هاي مختلف نرم افزاري در يک سازمان وجود دارند که داراي پايگاه داده هاي مختلف، سيستم هاي احراز هويت مختلف و بعضا زبان هاي برنامه نويسي متفاوت هستند و شما قصد داريد که همگي آنها را يکپارچه کنيد و حداقل از نظر احراز هويت يک سيستم مرکزي ايجاد کنيد. يکي از راهکارهاي طراحي اين رویه، راهکار Biztalk سرور است.

در این مقاله توضیح می دهیم BizTalk چیست و چه زماني بايد از آن استفاده شود. BizTalk يک محصول مايکروسافتي است که به عنوان محصول Integration and Connectivity يا ارتباطات و يکپارچگي ارائه شده است. به زبان ساده تر، BizTalk توانايي برقراري ارتباط بين سيستم هاي متنوع را دارد. در واقع BizTalk مي تواند راهکاري باشد براي اينکه شما بتوانيد Application هايي از پلتفرم هاي مختلف را با هم مرتبط کنيد و در نقش يک واسط عمل کنيد و در اين بين نيازمندي هاي خود را از داده هاي عبوري از داخل BizTalk نيز خارج کنيد. مکانيزم کاري BizTalk را مي توانيد به صورت کامل در شکل زير مشاهده کنيد:

معرفی Microsoft Biztalk سرور و اجزای آن

معرفی Microsoft Biztalk سرور و اجزای آن

همانطور که در شکل بالا مشاهده مي کنيد اجزاء اصلي تشکيل دهنده BizTalk شامل Adapter ها، Pipeline ها، Map ها، Schema ها، Orchestration ها، Port ها، Message Box ها و Rule ها مي باشند که در ادامه در خصوص هر يک از اين اجزا شرح می دهیم.

Adapter

طبيعي است که ورودي برنامه BizTalk از خروجي برنامه هاي ديگر گرفته مي شود. ما از Adapter ها در BizTalk به عنوان Endpoint يا نقاط پاياني نام مي بريم که قرار است ارتباط ما با نرم افزارها يا Application هاي خدمات دولتي را برقرار کنند. در واقع ما با استفاده از Adapter ها ارتباط بين BizTalk و نرم افزارهاي ورودي و خروجي را (سيستم هاي خارجي) برقرار مي کنيم. با توجه به تنوع Application هايي که قرار است در BizTalk قرار بگيرند، اين امکان وجود دارد که در صورت عدم وجود Adapter هاي پيش فرض براي اتصال به Application ها از Adapter هاي شخصي سازي شده نيز استفاده کنيم. Adapter ها در BizTalk قابليت هاي اتصالي يا به زبان بهتر مکانيزم هاي ارتباطي متنوعي را ارائه مي دهند براي مثال ما Adapter هاي تخصصي براي اتصال به پايگاه داده هاي SQL، براي اتصال در قالب فايل و … را در اختيار داريم و امکان تعريف ورودي هايي از نوع ديگر نيز وجود دارد.

Pipeline

در اين قسمت بعد از ورود داده ها از Adapter ها، Pipeline ها وظيفه تبديل کردن داده ها به اشکال مختلف را بر عهده دارند، اکثرا اين تبديل به شکل داده هايي از نوع XML که براي کليه پلتفرم ها قابل درک است، انجام خواهد شد اما قابليت تبديل به فرمت هاي ديگر نيز وجود دارد. مشابه فرآيندي که در Adapter ها به عنوان ورودي و خروجي وجود دارد Pipeline ها هم داده ها را در هنگام ورود و خروج تبديل مي کنند، اين فرآيند تبديل داده در اين وسط به دليل نياز BizTalk براي درک ماهيت داده ها براي تجزيه و تحليل آنها است و در واقع مي توان اينطور گفت که Pipeline ها داده ها را به شکلي قابل فهم براي BizTalk تبديل مي کنند. براي مثال داده هايي از نوع فايل يا MSSQL در هنگام ورود به BizTalk بايستي بصورت XML تبديل شوند تا تجزيه و تحليل بر روي آنها انجام شود.

Map

در واقع MAP يا نقشه تغييراتي که قرار است بر روي داده هاي ورودي و خروجي به BizTalk انجام شود را مديريت مي کند، براي مثال فرآيند هاي محاسباتي و رياضي، اعمال کردن فيلترينگ و … همگي با استفاده از MAP در BizTalk تعريف مي شوند، اگر در پروژه بخواهيم ورودي ها و خروجي هاي درخواست هاي خدمات را بررسي کنيم و گزارش گيري کنيم اين MAP ها هستند که به ما کمک خواهند کرد.

Schema

اين قسمت همانطور که از نامش هم پيداست براي قالب بندي پيام ها يا Message هايي استفاده مي شود که به BizTalk سرور وارد و از ان خارج مي شود، BizTalk از زبان XML Schema Definition يا XSD براي تعيين کردن قالب يا Structure پيام ها استفاده مي کند.

Orchestration

فرآيند هاي تصميم گيري (سناريوهاي تصميم گيري) و شرط گذاري در اين قسمت انجام مي شوند. در اين قسمت مي تواند تعريفي از نحوه باز و بسته شدن خدمات براي هر يک از دفاتر با توجه به مجوزها و … تعريف کرد.

Port

پورت ها يا Ports در واقع محلي هستند که Adapter ها، Pipeline ها و Map ها پيکربندي مي شوند. به پورت هايي که در قسمت مبدا قرار مي گيرند يا Source End هستند در اصطلاح Receive Ports و به پورت هايي که در قسمت مقصد يا خروجي قرار مي گيرند Destination Ports يا Send Ports گفته مي شوند. برخي اوقات ممکن است که در Port ها Map ها پيکربندي نشوند اما اين بستگي به طراحي ما دارد، به هر حال هميشه در Port ها Adapter ها و Pipeline ها پيکربندي مي شوند.

Message Box

بصورت خيلي ساده بايد بدانيم که کليه فرآيند کاري BizTalk بر اساس پيام يا Message هايي است که بايد از جايي گرفته شود و به جايي ارسال شود که اين Message بر اساس پردازش هايي که روي داده هاي ورودي و خروجي انجام مي شود و هچنين Rule ها يا قوانيني که ما تعيين مي کنيم انجام مي شود. Message Box محلي براي نگهداري و تصميم گيري در خصوص Message ها در BizTalk است.

منبع:Itpro.ir