LIS 525 - Servers
"
Setting up a Web server
is a trick only a certified computer geek should try."
(Kent, P. 2000.
Poor Richard's Web site, 2nd ed. 54)
A server
is a combination of hardware and
software
on a network
that holds information and reponds to requests.
A Web server specifically provides web services to remote
clients;
these services may include Web pages and secure transactions.
Backup
It is essential that server files be backed up regularly.
Backup may be on local media, such as tapes,
or over a network.
Local backup gives greater functionality,
but requires local administration.
In any case,
it may be difficult to restore everything from backup.
Local backup strategies should include medium rotation;
for example,
a backup takes place every day of the week on a different tape,
with changes only backed up every day except Sunday,
when a full backup is performed.
Since tapes wear out,
a new tape should be introduced regularly;
it might be made the Monday tape,
and each of the other tapes might be shifted one day,
with the Sunday tape retired to the archives.
Popular Server Software
The most popular server software is Apache,
at about 46% of active sites,
followed by Microsoft, at about 38%,
and Google's Blogger, at about 10%,
with others at less than 1% each.
Netcraft has a form that you can use
to find out what server a given site is running.
Some Options
Dedicated server
- Locally maintained.
- Colocation (or colo).
Your server is located at a dedicated facility
with resources including a secured cage or cabinet,
regulated power, dedicated Internet connection, security, and support.
- Outsourced server
(or managed Web server).
Similar to colocation,
except that you choose the components
from options provided by the service provider
rather than supplying your own hardware and software from outside.
Virtual server
Computer resources are shared with other virtual servers
running on the same machine.
Allows low-cost web hosting.
Ways to Improve Server Performance
- Increase resources: disks, memory, CPU, SSL acceleration
cards.
- Cache files (e.g., on a proxy server).*
- Turn off remote user identity checking
and remote host name lookup.
- Avoid server side includes
and directory listings.
- Turn off server-side scripting completely
or try running scripts on a different machine.
- Enable HTTP compression for text-format files.
* If caching is used, it should be disabled for pages
that are time-sensitive or customized for specific users;
such pages are normally recognized from HTTP header information
(e.g. Expires or Cache-Control headers)
or from the use of HTTPS.
Arranging Multiple Servers
| Method
| Explanation
| Advantages
| Disadvantages
|
| DNS balancing
| DNS server returns different IP addresses
randomly or depending on loads.
|
| Balance may be poor.
Long session may use more than one server
- files must agree.
|
| Hardware/software load balancing
| Front end intercepts and routes HTTP requests.
| Better performance than DNS.
Can detect when a server is having problems.
|
| Reverse proxying
| Similar to previous,
but proxy server caches some content,
especially static content.
| Reduces load on server(s).
May be faster.
|
| Content spreading across servers
| Different material on different servers,
with appropriate links between pages.
| Some load balancing.
Client's key files can be mounted on a small dedicated server.
| Not very dynamic.
Additional cost and poor load balancing
if a dedicated server is included.
|
For More Information
Home
Last updated October 31, 2007.
This page maintained by
Prof. Tim Craven
E-mail (text/plain only): craven@uwo.ca
Faculty of Information and
Media Studies
University of Western
Ontario,
London, Ontario
Canada, N6A 5B7