Dear friends,
I am new to .NET based app development and have a pretty elementary
query, I suppose... I have caught up with the basics of .NET pretty
well, thanks to some Microsoft VB/ASP background and helpful
colleagues...
The query goes...
In a DOTNET based desktop application environment, does it make sense
to have each copy of the installed application from the different
machines talk directly to the SQL Server Database. Or do you suggest
the use of an Application Server??? Logically, there has to be some
threshold after which SQL Server cannot takeup the load and the
multiple number of connections.. So connection pooling and etc etc...
features of App Server got to be useful, I suppose..
Now coming to the most baffling part of the question. Extending the
logic that an App Server might be needed( I had read somewhere that
COM+ Services can act as App Server.. That is great!!!), where is this
to be hosted?? If this is going to be a seperate server, then how are
the different client machines to talk to the database? They will have
to create objects of the classes and invoke methods in the App
Server!!!! Now how is this to be done, as we are talking about
different machines..... Is it what they use Remoting for??? If yes,
how performance efficient is it for a realtime application with say
100-200 users? If no, then what is the ALTERNATIVE????
Hoping to get a convincing response fro . IT would be fine if you can
guide me to some good material to quench my curiosity..
Thanks and regards,
:) 3 1538
Boy, you must have one heck of an application to be worried about this level
of scaling...
So, if you want to scale a desktop client environment...
First off, why a desktop client environment? That's the first point in
scaling and security... in a web environment, you can hide that db server
behind a secondary firewall. With a client/server environment, you have a
db server out in the open, ready to be attacked... Web servers tend to have
more efficient interfaces... not always, but usually.
Now, assuming a desktop environment...
Sure, you can use remoting to access the application server, but you won't
see an improvement in *performance* until you scale quite a bit. A single
managed code component can not handle more concurrent connections than the
finely tuned communication layer that SQL Server uses. To see a performance
increase on an app server, you have to have three or four of them (my
guess), and you'd have to be using them in some way where they can minimize
the hits on SQL (like with caching, or async updates). No, App servers are
not normally something you do for performance. At least, not one at a time.
So, what if you do want to improve performance? For queries, you still have
to use synchronous messages, but for updates and inserts, I'd suggest async
messages, sent over HTTP, to a load-balanced array of machines using SOAP
web services. As connectionless and as stateless as you can possibly get
away with.
Does that help?
--- Nick
"Varkey" <va**********@yahoo.com> wrote in message
news:ea**************************@posting.google.c om... Dear friends,
I am new to .NET based app development and have a pretty elementary query, I suppose... I have caught up with the basics of .NET pretty well, thanks to some Microsoft VB/ASP background and helpful colleagues... The query goes...
In a DOTNET based desktop application environment, does it make sense to have each copy of the installed application from the different machines talk directly to the SQL Server Database. Or do you suggest the use of an Application Server??? Logically, there has to be some threshold after which SQL Server cannot takeup the load and the multiple number of connections.. So connection pooling and etc etc... features of App Server got to be useful, I suppose..
Now coming to the most baffling part of the question. Extending the logic that an App Server might be needed( I had read somewhere that COM+ Services can act as App Server.. That is great!!!), where is this to be hosted?? If this is going to be a seperate server, then how are the different client machines to talk to the database? They will have to create objects of the classes and invoke methods in the App Server!!!! Now how is this to be done, as we are talking about different machines..... Is it what they use Remoting for??? If yes, how performance efficient is it for a realtime application with say 100-200 users? If no, then what is the ALTERNATIVE????
Hoping to get a convincing response fro . IT would be fine if you can guide me to some good material to quench my curiosity..
Thanks and regards,
:)
Dear Nick,
Thanks a lot for your response... It certainly has helped with a lot
of my queries.. If I read you right, you are suggesting that in such a
scenario, an APP Server need not be used and if at all scalability is
a concern, there should be multiple App Servers to cater to the
requirement.... Correct me if I am wrong...
Also can I take the liberty of going one step further and ask, "What
do you think is the scenario where an App Server is needed??"
To answer the query you had put up... Well, a desktop application is
preferred as the targetted users are more comfortable using a desktop
based application(got to do a lot with the predecessor of the
application) with a rich GUI...
The application will only be run in a LAN environment with AD based
security, and so I reckon the Security bit should not be a major
concern... Ofcourse, feel free to correct me if you feel so...
Thanks once again for the response.
Regards,
:)
"Nick Malik" <ni*******@hotmail.nospam.com> wrote in message news:<2R4Mc.148488$IQ4.38512@attbi_s02>... Boy, you must have one heck of an application to be worried about this level of scaling...
So, if you want to scale a desktop client environment...
First off, why a desktop client environment? That's the first point in scaling and security... in a web environment, you can hide that db server behind a secondary firewall. With a client/server environment, you have a db server out in the open, ready to be attacked... Web servers tend to have more efficient interfaces... not always, but usually.
Now, assuming a desktop environment... Sure, you can use remoting to access the application server, but you won't see an improvement in *performance* until you scale quite a bit. A single managed code component can not handle more concurrent connections than the finely tuned communication layer that SQL Server uses. To see a performance increase on an app server, you have to have three or four of them (my guess), and you'd have to be using them in some way where they can minimize the hits on SQL (like with caching, or async updates). No, App servers are not normally something you do for performance. At least, not one at a time.
So, what if you do want to improve performance? For queries, you still have to use synchronous messages, but for updates and inserts, I'd suggest async messages, sent over HTTP, to a load-balanced array of machines using SOAP web services. As connectionless and as stateless as you can possibly get away with.
Does that help? --- Nick
"Varkey" <va**********@yahoo.com> wrote in message news:ea**************************@posting.google.c om... Dear friends,
I am new to .NET based app development and have a pretty elementary query, I suppose... I have caught up with the basics of .NET pretty well, thanks to some Microsoft VB/ASP background and helpful colleagues... The query goes...
In a DOTNET based desktop application environment, does it make sense to have each copy of the installed application from the different machines talk directly to the SQL Server Database. Or do you suggest the use of an Application Server??? Logically, there has to be some threshold after which SQL Server cannot takeup the load and the multiple number of connections.. So connection pooling and etc etc... features of App Server got to be useful, I suppose..
Now coming to the most baffling part of the question. Extending the logic that an App Server might be needed( I had read somewhere that COM+ Services can act as App Server.. That is great!!!), where is this to be hosted?? If this is going to be a seperate server, then how are the different client machines to talk to the database? They will have to create objects of the classes and invoke methods in the App Server!!!! Now how is this to be done, as we are talking about different machines..... Is it what they use Remoting for??? If yes, how performance efficient is it for a realtime application with say 100-200 users? If no, then what is the ALTERNATIVE????
Hoping to get a convincing response fro . IT would be fine if you can guide me to some good material to quench my curiosity..
Thanks and regards,
:)
An additional Query on this topic
I had been going through a few websites.... and came across this
one... http://www.eggheadcafe.com/articles/20021025.asp
Does this also state that it is not worthwhile to have an App Server
for an application like the one I have discussed below, but let the
office clients talk directly to the database....
Thanks and regards,
Varkey
"Nick Malik" <ni*******@hotmail.nospam.com> wrote in message news:<2R4Mc.148488$IQ4.38512@attbi_s02>... Boy, you must have one heck of an application to be worried about this level of scaling...
So, if you want to scale a desktop client environment...
First off, why a desktop client environment? That's the first point in scaling and security... in a web environment, you can hide that db server behind a secondary firewall. With a client/server environment, you have a db server out in the open, ready to be attacked... Web servers tend to have more efficient interfaces... not always, but usually.
Now, assuming a desktop environment... Sure, you can use remoting to access the application server, but you won't see an improvement in *performance* until you scale quite a bit. A single managed code component can not handle more concurrent connections than the finely tuned communication layer that SQL Server uses. To see a performance increase on an app server, you have to have three or four of them (my guess), and you'd have to be using them in some way where they can minimize the hits on SQL (like with caching, or async updates). No, App servers are not normally something you do for performance. At least, not one at a time.
So, what if you do want to improve performance? For queries, you still have to use synchronous messages, but for updates and inserts, I'd suggest async messages, sent over HTTP, to a load-balanced array of machines using SOAP web services. As connectionless and as stateless as you can possibly get away with.
Does that help? --- Nick
"Varkey" <va**********@yahoo.com> wrote in message news:ea**************************@posting.google.c om... Dear friends,
I am new to .NET based app development and have a pretty elementary query, I suppose... I have caught up with the basics of .NET pretty well, thanks to some Microsoft VB/ASP background and helpful colleagues... The query goes...
In a DOTNET based desktop application environment, does it make sense to have each copy of the installed application from the different machines talk directly to the SQL Server Database. Or do you suggest the use of an Application Server??? Logically, there has to be some threshold after which SQL Server cannot takeup the load and the multiple number of connections.. So connection pooling and etc etc... features of App Server got to be useful, I suppose..
Now coming to the most baffling part of the question. Extending the logic that an App Server might be needed( I had read somewhere that COM+ Services can act as App Server.. That is great!!!), where is this to be hosted?? If this is going to be a seperate server, then how are the different client machines to talk to the database? They will have to create objects of the classes and invoke methods in the App Server!!!! Now how is this to be done, as we are talking about different machines..... Is it what they use Remoting for??? If yes, how performance efficient is it for a realtime application with say 100-200 users? If no, then what is the ALTERNATIVE????
Hoping to get a convincing response fro . IT would be fine if you can guide me to some good material to quench my curiosity..
Thanks and regards,
:) This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics
by: aa |
last post by:
I am migrating to PHP from ASP where there are the Application Scope variables which are accessible from any page on a website and which are used, in particular, for hit counters.
Is there a similar...
|
by: ^CeFoS^ |
last post by:
Hi to everybody, due to I want to use the serial port of a server
machine through an applet allocated in html document.
> Then one application will run in the server machine and using
> the serial...
|
by: Matt |
last post by:
I think this is the basic concept in ASP server-side development.
My boss told me web application is NOT client-server application. I argued
with him because browser is the client, and the server...
|
by: Davey |
last post by:
I am planning on developing an application which will involve skills that I
have very little experience of - therefore I would appreciate comments on my
initial design thoughts.
Overview on...
|
by: Wayne Wengert |
last post by:
I built an ASP application and it runs fine on my local IIS. I am trying to
move the application to my web service (ISP) out on the internet. I've read
several of the help articles but they all...
|
by: Chris |
last post by:
I'm trying to get an existing VS.NET project up on my Win2003 server and I
get the following error (on the actual website page):
"It is an error to use a section registered as...
|
by: Varkey |
last post by:
Dear friends,
I am new to .NET based app development and have a pretty elementary
query, I suppose... I have caught up with the basics of .NET pretty
well, thanks to some Microsoft VB/ASP...
|
by: Timothy.Rybak |
last post by:
Hello all,
This is my first attempt at an application, so kid gloves are
appreciated.
I need to make a very simple form that only has a few elements. One is
TraceCode - a text field that is...
|
by: Kevin Liebowicz |
last post by:
Yes, I wasted the past two days trying to fix this.
Yes, this is on a Win2003 Server.
Yes, this machine is a domain controller.
Yes, I seen the dozens of KB articles like this one:...
|
by: Kemmylinns12 |
last post by:
Blockchain technology has emerged as a transformative force in the business world, offering unprecedented opportunities for innovation and efficiency. While initially associated with cryptocurrencies...
|
by: Naresh1 |
last post by:
What is WebLogic Admin Training?
WebLogic Admin Training is a specialized program designed to equip individuals with the skills and knowledge required to effectively administer and manage Oracle...
|
by: antdb |
last post by:
Ⅰ. Advantage of AntDB: hyper-convergence + streaming processing engine
In the overall architecture, a new "hyper-convergence" concept was proposed, which integrated multiple engines and...
|
by: WisdomUfot |
last post by:
It's an interesting question you've got about how Gmail hides the HTTP referrer when a link in an email is clicked. While I don't have the specific technical details, Gmail likely implements measures...
|
by: Matthew3360 |
last post by:
Hi,
I have been trying to connect to a local host using php curl. But I am finding it hard to do this. I am doing the curl get request from my web server and have made sure to enable curl. I get a...
|
by: Oralloy |
last post by:
Hello Folks,
I am trying to hook up a CPU which I designed using SystemC to I/O pins on an FPGA.
My problem (spelled failure) is with the synthesis of my design into a bitstream, not the C++...
|
by: Carina712 |
last post by:
Setting background colors for Excel documents can help to improve the visual appeal of the document and make it easier to read and understand. Background colors can be used to highlight important...
|
by: Ricardo de Mila |
last post by:
Dear people, good afternoon...
I have a form in msAccess with lots of controls and a specific routine must be triggered if the mouse_down event happens in any control.
Than I need to discover what...
|
by: ezappsrUS |
last post by:
Hi,
I wonder if someone knows where I am going wrong below. I have a continuous form and two labels where only one would be visible depending on the checkbox being checked or not. Below is the...
| |