Divya's Blog

Posts Tagged ‘Servers


Apache HTTP Server configuration screen

Image via Wikipedia

Introduction

  • Apache is a web server, that has it’s roots in the CERN web server.
  •  It is the most widely used web server on the Internet today, it can be integrated with content technologies like Zope, databases like MySQL and PostgreSQL and others (including Oracle and DB2) and the speed and versatility offered by Web rapid application development (RAD) languages like Personal Home Page (PHP).
  •  It is highly configurable, flexible and most importantly,it is open. This had lead to a host of development support on and around Apache.

External modules such as mod_rewrite, mod_perl and mod_php have added fist-fulls of functionality as well as improved the speed with which these requests can be serviced. It has, in no small part, played a role in the acceptance of the Linux platform in corporate organizations.

Apache versions

  • Apache comes in two basic flavors: Apache version 1.3.x and version 2.x.
  •  The configuration of these two differ quite substantially in some places

Basic server design

  • The Apache web server has been designed to be used in either a modular or non-modular way.
  •  In the former, modules are compiled separately from the core Apache server, and loaded dynamically as they are needed. .
  • Generally though, when we unpack an Apache that has been pre-compiled (i.e. It’s already in a .deb or .rpm package format), it is compiled to be modular.

Basic configuration

  • The core Apache server is configured using one text configuration file – httpd.conf. This usually resides in /etc/httpd, but may be elsewhere depending on your distribution.
  • The httpd.conf file is fairly well documented, however there are additional documentation with Apache that is an excellent resource to keep handy.

The server has 3 sections to the configuration file:

1. The global configuration settings

2. The main server configuration settings

3. The virtual hosts

Global configuration settings

In this part of the configuration file, the settings affect the overall operation of the server. Setting such as the minimum number of servers to start, the maximum number of servers to start, the server root directory and what port to listen on for http requests (the default port is 80, although you may make this whatever you wish).

Main server configuration settings

The majority of the server configuration happens within this section of the file. This is where we specify the DocumentRoot, the place we put our web pages that we want served to the public. This is where permissions for accessing the directories are defined and where authentication is configured.

The virtual hosts section

  • Hosting of many sites does not require many servers. Apache has the ability to divide it’s time by offering web pages for different web sites. The web site www.QEDux.co.za, is hosted on the same web server as http://www.hamishwhittal.org.za.
  • Apache is operating as a virtual host – it’s offering two sites from a single server.

IIS has three level of isolation:-

  1. LOW (IIS process)
  2. Medium pooled scenario
  3. High isolation scenario

LOW (IIS process):

  • In this main IIS process and ASP.NET application run in same process.
  •  So if any one crashes the other is also affected.

Example : It is possible to  host yahoo, hotmail .amazon and google on a single PC. So all application and the IIS process runs on the same process. In case any website crashes it affects every one.


Medium (Pooled):

  • In Medium pooled scenario the IIS and web application run in different process.
  • So in this case there are two processes process1 and process2.
  • In process1 the IIS process is running and in process2 we have all Web application running.

High (Isolated):

  • In high isolated scenario every process is running is there own process.
  • In given figure of high isolated scenario,there are five processes and every one   individual application.this requires heavy memory capacity with high fidelity.

                                       High isolation scenario


Medium pooled scenario

LOW IIS process scenario

                                                                  


DCOM allows for creating objects distributed across a network, a protocol for invoking that object’s methods, and secures access to the object.

v  DCOM provides a wrapper around COM, hence it is a backwards compatible extension.

v  DCOM uses Remote Procedural Calls (RPC) using Open Software Foundation’s Distributed Computing Environment.

These RPC are implemented over TCP/IP and named pipes. The protocol which is actually being used is registered just prior to use, as opposed to being registered at initialization time. The reason for this is that if a protocol is not being used, it will not be loaded. In order to inform an object that the client is still alive, periodic pinging is used. Hence, when the client has died and no ping has been received (to refresh it) before the expiration time, the server object will perform some clean up tasks (including decrementing its reference count). Since RPC across a network are typically slow (compared to processes residing on the same machine),

  • DCOM sends multiple requests in the same call. For example, in COM, the program performs a QueryInterface, one interface at a time.
  • In DCOM, multiple QueryInterfaces are all clustered into one call. This clustering optimization trick is also used when creating an instance of the object and serializing it with data.
  • These two operations usually occur together, DCOM allows one method which will perform both operations in one call without waiting for an acknowledgment from the first task before performing the second one.

Similarly, when a client pings its server object, it  can do it in one call.

  • Moreover, if there are multiple clients sending pings to multiple servers, an optimization is made where the multiple pings going to the same object are consolidated into just one ping. This is to cut down on the use of precious bandwidth used only for pinging.

The client has the control to set the computer which will be responsible for the lifetime of the object.

Call security is implemented in  four ways:

  1. Authentication (to prevent false clients from impersonating the true client),
  2. Authorization (to insure that a client only does what it is authorized to do),
  3. Data integrity (to insure that data was not tampered with during transit) and
  4. Data privacy (to insure that only designated sources can read it).

ü  The client gives the server various access privileges to access memory or disk space

 

  creation of  DCOM object in VB6

 Using the CreateObject method  we  can create a DCOM object. We  have to put the server name in the registry.


Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 6 other followers

Subscribe our Blog

Subscribe
CLUSTER MAPS Locations of visitors to this page

Tweets

Error: Twitter did not respond. Please wait a few minutes and refresh this page.