Re: WCF Architecture question
- From: "Anthony Jones" <AnthonyWJones@xxxxxxxxxxxxxxxx>
- Date: Mon, 29 Dec 2008 12:00:07 -0000
"SetonSoftware" <seton.software@xxxxxxxxxxx> wrote in message news:1e482af8-1722-4766-8804-8c7d4fd5d743@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
On Dec 26, 2:48 pm, "Mr. Arnold" <MR. Arn...@xxxxxxxxxx> wrote:
"SetonSoftware" <seton.softw...@xxxxxxxxxxx> wrote in message<<<<<<<<<<<<<<<<<<<<<<
news:85958520-1a3d-4a15-a7cd-18301ac94ad0@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> We're planning to construct a C# 3.5 application as an XBAP. This
> application will run in browsers on several thouasnd notebook
> computers which are connected to a central server via wireless. The
> application will use a SQL Server 2008 database.
> The app would need to access data object assembies on the server to
> read DataTables from and write data to the database though stored
> procedures. The server is also where the business rule assemblies
> would reside. I'm thinking one server to host the assemblies and
> another to host SQL Server. The XBAP application will communicate with
> the business layer server directly.
> My question is: What kind of WCF architecture is most appropriate
> here? Should I use an HTTP protocol hosted by IIS or TCP hosted by a
> Windows service?
Using IIS has the following benefits:
1) IIS provides automatic processing activation, meaning when a message is
received for a service, the service is automatically launched if it is not
already launched.
2) IIS provides health monitors that a WCF services can take advantage of.
If a process in not responding or is taking longer than deemed necessary,
IIS will automatically recycle the process.
3) WCF service can utilize the ASP.NET shared hosting model.
4) WCF service can take advantage of the ASP.NET's compilation model.
IIS 5, 6 and 7 you get the following:
. Idle shutdown
. Process recycling
. Process health monitoring
. Message-based activation
You're using FW 3.5 and I'll assume VS 2008. If you are doing so, then you
should look into Linq to SQL using ADO.Net.Entities, fabulous stuff and
This application is completely .NET to .NET communication. If I use
IIS am I limited to HTTP? Wouldn't TCP be faster? If I do use HTTP,
data sent between the different tiers would need to be serialized
whereas with TCP it wouldn't need to be, correct? This is all being
done on a WinXP platform.
If you use IIS then yes the HTTP protocol is needed.
HTTP is layered on top of TCP, I doubt in any real terms using TCP in the raw would be any faster.
Even over raw TCP object state would need to be serialised.
--
Anthony Jones - MVP ASP/ASP.NET
.
- References:
- WCF Architecture question
- From: SetonSoftware
- Re: WCF Architecture question
- From: Mr. Arnold
- Re: WCF Architecture question
- From: SetonSoftware
- WCF Architecture question
- Prev by Date: Re: Pessimistic locking
- Next by Date: Re: WCF Architecture question
- Previous by thread: Re: WCF Architecture question
- Next by thread: Re: WCF Architecture question
- Index(es):
Relevant Pages
|