|
Home > Archive > BizTalk Server General > December 2004 > Adapter or Pipeline Component?
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
Adapter or Pipeline Component?
|
|
| Dameon 2004-12-02, 5:48 pm |
| HI All,
I have a scenario where I receive a message, call a disassembler component
to translate the message, then want to send the message to an Oracle
database. What is the best way to do this and keep the overhead to a minimum?
1. In the same receive pipeline:
A. Call The translation disassembler component
B. Call the 'Submit to Oracle' component
C. End \ Stop. Assuming BT will let me finish within a receive
pipeline. No validation message need be returned to the RP.
2. Use a Receive Pipeline for the disassembler and use a Send Pipeline to
call the 'Submit to Oracle' component.
3. Create an Adapter for publishing to the Oracle database. However, the
disassembler(translation) would still need to be called first.
4. Do this via an orchestration. I'd rather not do this, due to the
overhead. But this would be the easiest, but probably the most expensive.
? How does the message box and BT infrastructure\framework figure into each
of these options and which is the preferred method and the least costly?
Thanks in advance!!
--
Dameon
| |
| Ruslan Yakushev [MSFT] 2004-12-03, 8:46 pm |
| See the answers inline...
--------------------
>Thread-Topic: Adapter or Pipeline Component?
>thread-index: AcTYk9zPTZ5QpUllSluwq0wIDlRnMQ==
>X-WBNR-Posting-Host: 206.33.230.43
>From: =?Utf-8?B?RGFtZW9u?= <Dameon@discussions.microsoft.com>
>Subject: Adapter or Pipeline Component?
>Date: Thu, 2 Dec 2004 09:25:04 -0800
>Lines: 27
>Message-ID: <ED5FB785-D8EF-48E4-8903-374FA5F4A4DB@microsoft.com>
>MIME-Version: 1.0
>Content-Type: text/plain;
> charset="Utf-8"
>Content-Transfer-Encoding: 7bit
>X-Newsreader: Microsoft CDO for Windows 2000
>Content-Class: urn:content-classes:message
>Importance: normal
>Priority: normal
>X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
>Newsgroups: microsoft.public.biztalk.general
>NNTP-Posting-Host: TK2MSFTNGXA03.phx.gbl 10.40.1.29
>Path: cpmsftngxa10.phx.gbl!TK2MSFTNGXA01.phx.gbl!TK2MSFTNGXA03.phx.gbl
>Xref: cpmsftngxa10.phx.gbl microsoft.public.biztalk.general:22165
>X-Tomcat-NG: microsoft.public.biztalk.general
>
>HI All,
>
>I have a scenario where I receive a message, call a disassembler component
>to translate the message, then want to send the message to an Oracle
>database. What is the best way to do this and keep the overhead to a
minimum?
>
>1. In the same receive pipeline:
> A. Call The translation disassembler component
> B. Call the 'Submit to Oracle' component
> C. End \ Stop. Assuming BT will let me finish within a receive
>pipeline. No validation message need be returned to the RP.
[RY] this is possible to do and the overhead would be minimal because there
is nothing will be produced from the pipeline and published to Message Box.
To finish the recieve pipeline you can have the last pipeline component not
to produce any messages (so called "consuming component")
>
>2. Use a Receive Pipeline for the disassembler and use a Send Pipeline to
>call the 'Submit to Oracle' component.
[RY]This is also possible but I do not see the special need for this unless
you need to perform content based routing before submitting to Oracle
database.
>
>3. Create an Adapter for publishing to the Oracle database. However, the
>disassembler(translation) would still need to be called first.
[RY]Ideally this is the most architecturaly correct and flexible solution.
The pipeline component in receive pipeline performs data transformation
while Oracle send adapter performs data trasmission (in this case writing
data to Oracle database). You can then leverage all the adapter
administration features for the Oracle adapter such as send port
management, service windows, retries, etc.
>
>4. Do this via an orchestration. I'd rather not do this, due to the
>overhead. But this would be the easiest, but probably the most expensive.
[RY] I would not recommend this approach. Orchestrations are used to solve
different set of tasks (e.g. implementing stateful and long runnung
services). There is no real need and benefit of using them for the
stateless message processing which can be done by using pipelines and
adapters only.
>
>? How does the message box and BT infrastructure\framework figure into
each
>of these options and which is the preferred method and the least costly?
>
>Thanks in advance!!
>--
>Dameon
>
This posting is provided "AS IS" with no warranties, and confers no rights.
Use of included script samples are subject to the terms specified at
http://www.microsoft.com/info/cpyright.htm
Note: For the benefit of the community-at-large, all responses to this
message are best directed to the newsgroup/thread from which they
originated.
|
|
|
|
|