Search:
Namespaces
Discussions
.NET v1.1
Feedback
Web Farm Question
Messages
Related Types
This message was discovered on
ASPFriends.com 'aspngbeta' list
.
Responses highlighted in red are from those people who are likely to be able to contribute good, authoratitive information to this discussion. They include Microsoft employees, MVP's and others who IMHO contribute well to these kinds of discussions.
sen kum
-- This message, which was originally sent to "aspngdata", has been moved to "aspngbeta" mailing list by the List Master --
This question is about webfarm. How to update an
application variable in all webservers[in webfarm] if
anyone of webserver's application variable was
modified by user. ie i want to synchrnoize the
application variable in all the web servers [in
webfarm]. i think we are using hardware router.
i am not much aware of webfarm configuartion. Any one
could explain how to solve the above problem.
[As prj in final stage, i dont want to do anything in
database side]
Thanks in advance
__________________________________________________
Do You Yahoo!?
Yahoo! Auctions - buy the things you want at great prices
http://auctions.yahoo.com/
Reply to this message...
Thomas Tomiczek (VIP)
I would say:
NOT AT ALL :-)
You will have to rework your application so that it works on a web farm
:-) Its about the first of many changes you will have to do :-)
Thomas Tomiczek
THONA Consulting Ltd.
-----Original Message-----
From: sen kum [mailto:
Click here to reveal e-mail address
]=20
Sent: Freitag, 4. Mai 2001 16:00
To: aspngbeta
Subject: [aspngbeta] Web Farm Question
-- This message, which was originally sent to "aspngdata", has been
moved to "aspngbeta" mailing list by the List Master --
This question is about webfarm. How to update an
application variable in all webservers[in webfarm] if
anyone of webserver's application variable was
modified by user. ie i want to synchrnoize the
application variable in all the web servers [in
webfarm]. i think we are using hardware router.
i am not much aware of webfarm configuartion. Any one
could explain how to solve the above problem.
[As prj in final stage, i dont want to do anything in
database side]
Thanks in advance
__________________________________________________
Do You Yahoo!?
Yahoo! Auctions - buy the things you want at great prices
http://auctions.yahoo.com/
| [aspngbeta] member
Click here to reveal e-mail address
=3D YOUR ID
|
http://www.asplists.com/asplists/aspngbeta.asp
=3D JOIN/QUIT
Reply to this message...
Stuart C. Salsbury
Sen Kum,
To be short: Tom's right.
(my longer answer follows the stars below).
A possible solution to your problem: use a central database to store
anything that needs to be visible to all instances of your app within a web
farm.
You've stated that you don't want a solution that involves databases because
it is too late in the design cycle. This is too bad... You could still use
a database to solve your web farm problem (I think)... the database for
application state can be totally different from the one for whatever else
you're doing. So, assuming that you buy this technique.... You could
specify a particular (new) database to hold application state info.
Web farms are going to have to rely on some sort of central data
storage...it's the nature of the beast... databases are pretty much the way
to go here, I think.
If anyone has any other ideas, I'm all ears and appreciative.
Regards,
Stuart Salsbury
Ernst & Young LLP
(example follows)
******************************************
Generally, web farm apps need to be designed from the ground up as such...
or, to say the same thing differently, usually you need to think about web
farm issues from the get-go if you plan to deploy an app on a web farm with
no logic/threading errors and good performance.
There are some good design principles that will help you create sites that
are not only farm-compatible but farm-intelligent:
* keep away from sessions altogether if possible, but if necessary, use
sql-server based session state;
* keep away from anything that forces you to presume the server name and/or
application name when processing requests... you'll probably have to do some
fancy footwork to get the URLs to be graceful and efficient in your code.
It's possible to design your site to get what the previous suggestions seem
to preclude... you just have to work for it... for starters, use the
application state (
Context
.Application["myObject"] to store stuff, but use
it carefullly... when you store things in application state, recognize that
they aren't shared accross the web farm, rather they are specific to the
particular server that exeuctes that code and the particular application in
which your code is running. App state is particularly suited to the
lazy-load style of configuration, where you set up a property that first
tries to find the answer in its cache, but if it hasn't already been loaded,
tries to find the answer from source.
Each web farm web app instance has to take care of itself and can do (pretty
much)nothing to help other application instances in the farm.
As far as I understand, .net helps with this challenge because session state
is easily stored in a database (a 3rd tier database server that serves all
of the web servers in a web farm). After that, I think you are on your own,
but I bet that others have some suggestions as to how else to battle the
stateless/stateful paradox of web sites/farms.
To repeat Tom's message, usually you need to think about web farm
consequences up front before you design a site or else you're bound to make
some artitechtural decisions that make farming difficult.
Ho, ho, ho.... (my farming (not funny)joke)
Regards,
Stuart Salsbury
Ernst & Young LLP
-----Original Message-----
From: Thomas Tomiczek [mailto:
Click here to reveal e-mail address
]
Sent: Friday, May 04, 2001 12:04 PM
To: aspngbeta
Subject: [aspngbeta] RE: Web Farm Question
I would say:
NOT AT ALL :-)
You will have to rework your application so that it works on a web farm
:-) Its about the first of many changes you will have to do :-)
Thomas Tomiczek
THONA Consulting Ltd.
-----Original Message-----
From: sen kum [mailto:
Click here to reveal e-mail address
]
Sent: Freitag, 4. Mai 2001 16:00
To: aspngbeta
Subject: [aspngbeta] Web Farm Question
-- This message, which was originally sent to "aspngdata", has been
moved to "aspngbeta" mailing list by the List Master --
This question is about webfarm. How to update an
application variable in all webservers[in webfarm] if
anyone of webserver's application variable was
modified by user. ie i want to synchrnoize the
application variable in all the web servers [in
webfarm]. i think we are using hardware router.
i am not much aware of webfarm configuartion. Any one
could explain how to solve the above problem.
[As prj in final stage, i dont want to do anything in
database side]
Thanks in advance
Reply to this message...
Mohamed Fathey Abdel Fattah
Why not using XML storage based files?
Regards,
Mohamed
-----Original Message-----
From: Stuart C. Salsbury [mailto:
Click here to reveal e-mail address
]
Sent: Saturday, May 05, 2001 11:58 PM
To: aspngbeta
Subject: [aspngbeta] RE: Web Farm Question
Sen Kum,
To be short: Tom's right.
(my longer answer follows the stars below).
A possible solution to your problem: use a central database to store
anything that needs to be visible to all instances of your app within a web
farm.
You've stated that you don't want a solution that involves databases because
it is too late in the design cycle. This is too bad... You could still use
a database to solve your web farm problem (I think)... the database for
application state can be totally different from the one for whatever else
you're doing. So, assuming that you buy this technique.... You could
specify a particular (new) database to hold application state info.
Web farms are going to have to rely on some sort of central data
storage...it's the nature of the beast... databases are pretty much the way
to go here, I think.
If anyone has any other ideas, I'm all ears and appreciative.
Regards,
Stuart Salsbury
Ernst & Young LLP
(example follows)
******************************************
Generally, web farm apps need to be designed from the ground up as such...
or, to say the same thing differently, usually you need to think about web
farm issues from the get-go if you plan to deploy an app on a web farm with
no logic/threading errors and good performance.
There are some good design principles that will help you create sites that
are not only farm-compatible but farm-intelligent:
* keep away from sessions altogether if possible, but if necessary, use
sql-server based session state;
* keep away from anything that forces you to presume the server name and/or
application name when processing requests... you'll probably have to do some
fancy footwork to get the URLs to be graceful and efficient in your code.
It's possible to design your site to get what the previous suggestions seem
to preclude... you just have to work for it... for starters, use the
application state (
Context
.Application["myObject"] to store stuff, but use
it carefullly... when you store things in application state, recognize that
they aren't shared accross the web farm, rather they are specific to the
particular server that exeuctes that code and the particular application in
which your code is running. App state is particularly suited to the
lazy-load style of configuration, where you set up a property that first
tries to find the answer in its cache, but if it hasn't already been loaded,
tries to find the answer from source.
Each web farm web app instance has to take care of itself and can do (pretty
much)nothing to help other application instances in the farm.
As far as I understand, .net helps with this challenge because session state
is easily stored in a database (a 3rd tier database server that serves all
of the web servers in a web farm). After that, I think you are on your own,
but I bet that others have some suggestions as to how else to battle the
stateless/stateful paradox of web sites/farms.
To repeat Tom's message, usually you need to think about web farm
consequences up front before you design a site or else you're bound to make
some artitechtural decisions that make farming difficult.
Ho, ho, ho.... (my farming (not funny)joke)
Regards,
Stuart Salsbury
Ernst & Young LLP
-----Original Message-----
From: Thomas Tomiczek [mailto:
Click here to reveal e-mail address
]
Sent: Friday, May 04, 2001 12:04 PM
To: aspngbeta
Subject: [aspngbeta] RE: Web Farm Question
I would say:
NOT AT ALL :-)
You will have to rework your application so that it works on a web farm
:-) Its about the first of many changes you will have to do :-)
Thomas Tomiczek
THONA Consulting Ltd.
-----Original Message-----
From: sen kum [mailto:
Click here to reveal e-mail address
]
Sent: Freitag, 4. Mai 2001 16:00
To: aspngbeta
Subject: [aspngbeta] Web Farm Question
-- This message, which was originally sent to "aspngdata", has been
moved to "aspngbeta" mailing list by the List Master --
This question is about webfarm. How to update an
application variable in all webservers[in webfarm] if
anyone of webserver's application variable was
modified by user. ie i want to synchrnoize the
application variable in all the web servers [in
webfarm]. i think we are using hardware router.
i am not much aware of webfarm configuartion. Any one
could explain how to solve the above problem.
[As prj in final stage, i dont want to do anything in
database side]
Thanks in advance
| [aspngbeta] member
Click here to reveal e-mail address
= YOUR ID
|
http://www.asplists.com/asplists/aspngbeta.asp
= JOIN/QUIT
Reply to this message...
Jennings, Andy
You could create a web service that would act like a client server to update
the application variables on each machine. You could use Microsoft Message
Queue and implement something similar. I have considered this as well but
you have to weigh the performance cost of updating the application state on
each server with whatever operation you are trying to cache.
Andy
-----Original Message-----
From: Mohamed Fathey Abdel Fattah [mailto:
Click here to reveal e-mail address
]
Sent: Monday, May 07, 2001 1:00 AM
To: aspngbeta
Subject: [aspngbeta] RE: Web Farm Question
Why not using XML storage based files?
Regards,
Mohamed
-----Original Message-----
From: Stuart C. Salsbury [mailto:
Click here to reveal e-mail address
]
Sent: Saturday, May 05, 2001 11:58 PM
To: aspngbeta
Subject: [aspngbeta] RE: Web Farm Question
Sen Kum,
To be short: Tom's right.
(my longer answer follows the stars below).
A possible solution to your problem: use a central database to store
anything that needs to be visible to all instances of your app within a web
farm.
You've stated that you don't want a solution that involves databases because
it is too late in the design cycle. This is too bad... You could still use
a database to solve your web farm problem (I think)... the database for
application state can be totally different from the one for whatever else
you're doing. So, assuming that you buy this technique.... You could
specify a particular (new) database to hold application state info.
Web farms are going to have to rely on some sort of central data
storage...it's the nature of the beast... databases are pretty much the way
to go here, I think.
If anyone has any other ideas, I'm all ears and appreciative.
Regards,
Stuart Salsbury
Ernst & Young LLP
(example follows)
******************************************
Generally, web farm apps need to be designed from the ground up as such...
or, to say the same thing differently, usually you need to think about web
farm issues from the get-go if you plan to deploy an app on a web farm with
no logic/threading errors and good performance.
There are some good design principles that will help you create sites that
are not only farm-compatible but farm-intelligent:
* keep away from sessions altogether if possible, but if necessary, use
sql-server based session state;
* keep away from anything that forces you to presume the server name and/or
application name when processing requests... you'll probably have to do some
fancy footwork to get the URLs to be graceful and efficient in your code.
It's possible to design your site to get what the previous suggestions seem
to preclude... you just have to work for it... for starters, use the
application state (
Context
.Application["myObject"] to store stuff, but use
it carefullly... when you store things in application state, recognize that
they aren't shared accross the web farm, rather they are specific to the
particular server that exeuctes that code and the particular application in
which your code is running. App state is particularly suited to the
lazy-load style of configuration, where you set up a property that first
tries to find the answer in its cache, but if it hasn't already been loaded,
tries to find the answer from source.
Each web farm web app instance has to take care of itself and can do (pretty
much)nothing to help other application instances in the farm.
As far as I understand, .net helps with this challenge because session state
is easily stored in a database (a 3rd tier database server that serves all
of the web servers in a web farm). After that, I think you are on your own,
but I bet that others have some suggestions as to how else to battle the
stateless/stateful paradox of web sites/farms.
To repeat Tom's message, usually you need to think about web farm
consequences up front before you design a site or else you're bound to make
some artitechtural decisions that make farming difficult.
Ho, ho, ho.... (my farming (not funny)joke)
Regards,
Stuart Salsbury
Ernst & Young LLP
-----Original Message-----
From: Thomas Tomiczek [mailto:
Click here to reveal e-mail address
]
Sent: Friday, May 04, 2001 12:04 PM
To: aspngbeta
Subject: [aspngbeta] RE: Web Farm Question
I would say:
NOT AT ALL :-)
You will have to rework your application so that it works on a web farm
:-) Its about the first of many changes you will have to do :-)
Thomas Tomiczek
THONA Consulting Ltd.
-----Original Message-----
From: sen kum [mailto:
Click here to reveal e-mail address
]
Sent: Freitag, 4. Mai 2001 16:00
To: aspngbeta
Subject: [aspngbeta] Web Farm Question
-- This message, which was originally sent to "aspngdata", has been
moved to "aspngbeta" mailing list by the List Master --
This question is about webfarm. How to update an
application variable in all webservers[in webfarm] if
anyone of webserver's application variable was
modified by user. ie i want to synchrnoize the
application variable in all the web servers [in
webfarm]. i think we are using hardware router.
i am not much aware of webfarm configuartion. Any one
could explain how to solve the above problem.
[As prj in final stage, i dont want to do anything in
database side]
Thanks in advance
| [aspngbeta] member
Click here to reveal e-mail address
= YOUR ID
|
http://www.asplists.com/asplists/aspngbeta.asp
= JOIN/QUIT
| [aspngbeta] member
Click here to reveal e-mail address
= YOUR ID
|
http://www.asplists.com/asplists/aspngbeta.asp
= JOIN/QUIT
Reply to this message...
Thomas Tomiczek (VIP)
BAD.
Don't forget that the pplication propably assumes:
(a) no concurrent changes and
(b) changes in effect immediately.
(c) what about lock/unlock on the application object, or synchronizing?
Thomas Tomiczek
THONA Consulting Ltd.
-----Original Message-----
From: Jennings, Andy [mailto:
Click here to reveal e-mail address
]=20
Sent: Montag, 7. Mai 2001 13:10
To: aspngbeta
Subject: [aspngbeta] RE: Web Farm Question
You could create a web service that would act like a client server to
update
the application variables on each machine. You could use Microsoft
Message
Queue and implement something similar. I have considered this as well
but
you have to weigh the performance cost of updating the application state
on
each server with whatever operation you are trying to cache.
Andy
-----Original Message-----
From: Mohamed Fathey Abdel Fattah [mailto:
Click here to reveal e-mail address
]
Sent: Monday, May 07, 2001 1:00 AM
To: aspngbeta
Subject: [aspngbeta] RE: Web Farm Question
Why not using XML storage based files?
Regards,
Mohamed
-----Original Message-----
From: Stuart C. Salsbury [mailto:
Click here to reveal e-mail address
]
Sent: Saturday, May 05, 2001 11:58 PM
To: aspngbeta
Subject: [aspngbeta] RE: Web Farm Question
Sen Kum,
To be short: Tom's right.
(my longer answer follows the stars below).
A possible solution to your problem: use a central database to store
anything that needs to be visible to all instances of your app within a
web
farm.
You've stated that you don't want a solution that involves databases
because
it is too late in the design cycle. This is too bad... You could still
use
a database to solve your web farm problem (I think)... the database for
application state can be totally different from the one for whatever
else
you're doing. So, assuming that you buy this technique.... You could
specify a particular (new) database to hold application state info.
Web farms are going to have to rely on some sort of central data
storage...it's the nature of the beast... databases are pretty much the
way
to go here, I think.
If anyone has any other ideas, I'm all ears and appreciative.
Regards,
Stuart Salsbury
Ernst & Young LLP
(example follows)
******************************************
Generally, web farm apps need to be designed from the ground up as
such...
or, to say the same thing differently, usually you need to think about
web
farm issues from the get-go if you plan to deploy an app on a web farm
with
no logic/threading errors and good performance.
There are some good design principles that will help you create sites
that
are not only farm-compatible but farm-intelligent:
* keep away from sessions altogether if possible, but if necessary, use
sql-server based session state;
* keep away from anything that forces you to presume the server name
and/or
application name when processing requests... you'll probably have to do
some
fancy footwork to get the URLs to be graceful and efficient in your
code.
It's possible to design your site to get what the previous suggestions
seem
to preclude... you just have to work for it... for starters, use the
application state (
Context
.Application["myObject"] to store stuff, but
use
it carefullly... when you store things in application state, recognize
that
they aren't shared accross the web farm, rather they are specific to the
particular server that exeuctes that code and the particular application
in
which your code is running. App state is particularly suited to the
lazy-load style of configuration, where you set up a property that first
tries to find the answer in its cache, but if it hasn't already been
loaded,
tries to find the answer from source.
Each web farm web app instance has to take care of itself and can do
(pretty
much)nothing to help other application instances in the farm.
As far as I understand, .net helps with this challenge because session
state
is easily stored in a database (a 3rd tier database server that serves
all
of the web servers in a web farm). After that, I think you are on your
own,
but I bet that others have some suggestions as to how else to battle the
stateless/stateful paradox of web sites/farms.
To repeat Tom's message, usually you need to think about web farm
consequences up front before you design a site or else you're bound to
make
some artitechtural decisions that make farming difficult.
Ho, ho, ho.... (my farming (not funny)joke)
Regards,
Stuart Salsbury
Ernst & Young LLP
-----Original Message-----
From: Thomas Tomiczek [mailto:
Click here to reveal e-mail address
]
Sent: Friday, May 04, 2001 12:04 PM
To: aspngbeta
Subject: [aspngbeta] RE: Web Farm Question
I would say:
NOT AT ALL :-)
You will have to rework your application so that it works on a web farm
:-) Its about the first of many changes you will have to do :-)
Thomas Tomiczek
THONA Consulting Ltd.
-----Original Message-----
From: sen kum [mailto:
Click here to reveal e-mail address
]
Sent: Freitag, 4. Mai 2001 16:00
To: aspngbeta
Subject: [aspngbeta] Web Farm Question
-- This message, which was originally sent to "aspngdata", has been
moved to "aspngbeta" mailing list by the List Master --
This question is about webfarm. How to update an
application variable in all webservers[in webfarm] if
anyone of webserver's application variable was
modified by user. ie i want to synchrnoize the
application variable in all the web servers [in
webfarm]. i think we are using hardware router.
i am not much aware of webfarm configuartion. Any one
could explain how to solve the above problem.
[As prj in final stage, i dont want to do anything in
database side]
Thanks in advance
| [aspngbeta] member
Click here to reveal e-mail address
=3D YOUR ID
|
http://www.asplists.com/asplists/aspngbeta.asp
=3D JOIN/QUIT
| [aspngbeta] member
Click here to reveal e-mail address
=3D YOUR ID
|
http://www.asplists.com/asplists/aspngbeta.asp
=3D JOIN/QUIT
| [aspngbeta] member
Click here to reveal e-mail address
=3D YOUR ID
|
http://www.asplists.com/asplists/aspngbeta.asp
=3D JOIN/QUIT
Reply to this message...
System.Runtime.Remoting.Contexts.Context
Ad
MBR BootFX
Best-of-breed application framework for .NET projects, developed by Matthew Baxter-Reynolds and MBR IT
Copyright © Matthew Baxter-Reynolds 2001-2008. '.NET 247 Software Development Services' is a trading style of MBR IT Solutions Ltd.
Contact Us
-
Terms of Use
-
Privacy Policy
-
www.dotnet247.com