473,804 Members | 1,999 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Single vs. multiple installations of same web app

Hi all,

I am working on a project where we need to host a growing number of web
sites (initially around 15). In terms of functionality the sites are
identical, and the only differences lies in some application settings (UI
language, layout template, etc.). Thus, we are really talking about one
web application, installed and configured to run under several
"identities ".

It seems to me that two alternative approaches exists on how to tackle
such a setup, but I am having a hard time choosing the right one to go
with. Let me explain the options as I see them:

A) Build a single web application and install it once for each "identity"
(= hostname).

Pro: Application settings goes in web.config.
Pro: Each site will have its own IIS log file.
Con: Changes must be distributed to all instalations.
Con: Seems redundant to duplicate code on server.
Con: Overhead in loading the same app several times.

B) Build a single web application and install it just once on the server,
with binding to all hostnames.

Pro: Updates/changes to be installed just once.
Pro: Ensures that all sites are code-wise up-to-date.
Con: Requires some custom configuration API.
Con: Configuration errors etc. might break all sites.

Do you have any experience with the kind of setup that I am talking about?
Do you have anything to add to my list above? Do you have any other advice
that might be useful for me to make the decision on which path to follow?

Thanks in advance.

--
Joern Schou-Rode
http://malamute.dk/
Aug 20 '08 #1
1 1120
"Joern Schou-Rode" <js*@malamute.d kwrote in message
news:op.uf6dhmj m31zpn8@marvin. ..
Hi all,

I am working on a project where we need to host a growing number of web
sites (initially around 15). In terms of functionality the sites are
identical, and the only differences lies in some application settings (UI
language, layout template, etc.). Thus, we are really talking about one
web application, installed and configured to run under several
"identities ".

It seems to me that two alternative approaches exists on how to tackle
such a setup, but I am having a hard time choosing the right one to go
with. Let me explain the options as I see them:

A) Build a single web application and install it once for each "identity"
(= hostname).

Pro: Application settings goes in web.config.
Pro: Each site will have its own IIS log file.
Con: Changes must be distributed to all instalations.
Con: Seems redundant to duplicate code on server.
Con: Overhead in loading the same app several times.

B) Build a single web application and install it just once on the server,
with binding to all hostnames.

Pro: Updates/changes to be installed just once.
Pro: Ensures that all sites are code-wise up-to-date.
Con: Requires some custom configuration API.
Con: Configuration errors etc. might break all sites.

Do you have any experience with the kind of setup that I am talking about?
Do you have anything to add to my list above? Do you have any other advice
that might be useful for me to make the decision on which path to follow?

A)

The distribution of common files could easily be automated from a single
master. With that in place I can't see much of a draw back to redundant
code. If you are doing ASP.NET place as much code as possible in dlls in
the bin folder. You could take that a step further by placing some code in
the GAC which will eliminate the redundancy for those dlls (which gives you
better JIT performance ). However only do that for slow moving utility
code.

There are some advantageous to having these sites run as separate
applications, isolation is one. Failure in one doesn't affect the others.
You can take down one with out taking them all down. You can roll out
version upgrades rather than be forced into a big bang roll out (although my
GAC suggestion may act counter to that).

If the app runs as a 32bit process then memory can be utalised better having
separate apps especially if the app uses session data since a web garden
would break that.

Also there is nothing 'clever' going on that is outside the norm. The
nominal path should never be underestimated its the most well trodden and
therefore the most tried and tested.

--
Anthony Jones - MVP ASP/ASP.NET
Aug 21 '08 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
1738
by: Peter Clark | last post by:
Think of something like MyYahoo: a personalized portal with news aggregator, weather forecast, comics, etc. Now instead of visiting a web site, think of all of it being sent daily as an email. It does have a web interface, but mostly for selecting your content: this is my location for weather, these are the news feeds I'm interested in, these are the comics I like, save my preferences, and the server takes care of the rest. Does such a...
3
2197
by: Rune Hansen | last post by:
I've posted this question on the mod_python mailing list but didn't get much response, so I thought I'd post it here. (My first attempt connected to an unrelated thread..sorry. Note-to-self:-must-get-more-coffee-before-posting-) It seems to me that for each path element in a URI a mod_python handler will be invoked. This applies to PythonAuthenHandler, PythonHeaderParserHandler and so on.
0
1263
by: Matthew Lunnon | last post by:
Hi all, We're running multiple PostgresQL database installations, each on a separate port. This works fine and psql -p <port number> template1 works and connects to the correct instance of the database. We have a problem with JDBC connections though. We have an application thatuses Resin and connects to the database via a jdbc driver. When we use, for example:
3
1203
by: mqs | last post by:
Hi, As per the following URL http://msdn.microsoft.com/library/default.asp? url=/library/en- us/mwsdk/html/mwconredirectingtomobilewebapplication.asp only one assembly can be put in a single cab file. Q:- What problems can occur if I put multiple assemblies
9
23088
by: Abhishek Srivastava | last post by:
Hello All, In IIS 6.0 We have a concept of worker processes and application pools. As I understand it, we can have multiple worker process per appliction pool. Each worker process is dedicated to a pool. If I assign only one application to a applicaton pool and have multiple worker processes assigned to that pool. Will my application be processed by many worker processes?
4
2331
by: Jeff | last post by:
We have multiple ASP.Net web apps in development. As a standard we are looking to go with SQL Server to hold state information. Can we have the multiple apps all point to a single State DB? Or do we need to install multiple instances of the State database on to the SQL Server (one for each Web app)? It would seem that you could run into troubles pointing several web apps at the same DB, because you would introduce the possibility (a...
4
4704
by: Matt Kruse | last post by:
While developing an internal IE6-only webapp, a discussion started about the 'best' way to apply classes to data tables across multiple pages. The two arguments were: 1. Apply a single class to each table. That class (possibly in combination with other classes on child elements) controls every part of the table - layout, colors, fonts, etc. Example: class="data" PROS: Easier to standardize, less specificity confusion, everything is...
35
9368
by: keerthyragavendran | last post by:
hi i'm downloading a single file using multiple threads... how can i specify a particular range of bytes alone from a single large file... for example say if i need only bytes ranging from 500000 to 3200000 of a file whose size is say 20MB... how do i request a download which starts directly at 500000th byte... thank u cheers
1
5992
by: Kreshna | last post by:
I need to compile PostgreSQL 8.3.5 on CentOS 4.2. The CentOS already has PostgreSQL 7 installed as part of its default installation. For some reason, I cannot touch the existing PostgreSQL (upgrading, etc) --I really need to use my own compilation of PostgreSQL. Is it possible to have multiple installations of PostgreSQL (and different version too) on the same server? At least in theory, I should use a different port for my own PostgreSQL...
0
9711
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9591
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10343
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
10087
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
6861
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5529
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5667
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4306
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
3001
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.