How to host a .net site in this situation?

pisceswzh

Well-known member
Joined
Mar 19, 2007
Messages
96
Programming Experience
1-3
Hi,

In my office there is a SQL 2000 Server for our internal information system. Now I want to provide new service for our client, a service that allows our clints to log in a website and see some information in that SQL server.

The problem is the bandwidth in our office is not large enough to host a web server, meaning the clients will experience very slow connection to use the service. Therefore, I want to host the web server in a hosting company. However, if I host the web server in a hosting company. How can the web server load the data in the SQL server in the office?

Is there any solution for this situation? Thanks!
 
Is it possible to frequently backup the data from your office database and restore the data on to your hosting server database( either manually or thru some scheduled job). That way the data will be synced from your office to the hosting, though they will some latency and the hosting will not always have upto date data.
 
Well you have several solutions, all have their benefits and drawbacks:

- You could just directly access the database from the webserver, if it's on a static IP (use a dynamic DNS else). This has the advantage that you still can access the database as you normally would, but wouldn't solve the problem entirely

- You could make daily backup of the database. This is a fast solution but has two disadvantages: you get stale data and you have a large amount to upload daily (depending on the database size)

- With SQL Server you could also use replication. This is actually a kind of synchronisation between two or more database. There are different synching systems such as publish-subscribe, full replication, ... This method allows you to only update the database changes, so you have the advantages of the previous solution without the drawback of a heavy daily upload. It's disadvantage is that it's not an easy thing to set up (correctly)

- A third thing you could do, is implement it the first way, but use the caching structure of ASP.NET to limit the traffic between the web and the SQL server

As you see, some way or another the data has to get to the user, so there are always drawbacks. The only thing without a drawback would be buying a bigger line in your companies office, but I can understand that's not always possible.


Before going with one of these solutions, think them trough (looking at the size of your database, daily transactions, amount of customers, ...) and test each given setup with realistic data (NOT real data)
 
Last edited:
Back
Top