Showing posts with label server configuration. Show all posts
Showing posts with label server configuration. Show all posts

What is Clustering and Load Balancing?

Clustering is often understood to mean the capability of some software to provide load balancing services, and load balancing is often used as a synonym for a hardware- or third-party-software-based solution.

In practice, clustering is usually used with application servers like IBM WebSphere, BEA WebLogic and Oracle AS (10g). Also being used in that environment are load balancing features found in Application Delivery Controllers (ADC) like BIG-IP. (For simplicity, we will talk about "clustering" versus "ADC" approaches.)

Scalability

There are hardware load balancers, of course, but there we talk about "pools" or "farms," the server groupings where application requests get distributed. It is in the software world that the term "cluster" is applied to that same group.

Clustering will typically convert one instance of an application server to a master controller, then process/distribute requests to multiple instances using such industry standard algorithms as round robin, weighted round robin or least connections. Clustering is similar to load balancing in that it has horizontal scalability, a nearly transparent way to add additional instances of application servers for increased capacity or response time performance. To ensure that an instance is actually available, clustering approaches typically use an ICMP ping check or, sometimes, HTTP or TCP connection checks.

Health and Transparency

For load balancing, ADCs support the same industry algorithms, but have additional, complex number-crunching processes, and check such parameters as per-server CPU and memory utilization, fastest response times, etc. ADCs also support more robust health monitoring than the simple app server clustering solutions. This means they can verify content and do passive monitoring, dispensing with even the low impact of health checks on app server instances.

For applications that require the user to interact with the same server during a session, clustering uses server affinity to get the user there. This is most common during the execution of a process like order entry, where the session is used between pages (requests) to store data needed to close a transaction, like a shopping cart.

For the same situation, ADCs use persistence. Clustering solutions are usually somewhat limited as to the variables they can use, while ADCs can not only use traditional application variables but also get other information from the application or network-based data.

More than a few clustering solutions need node-agents deployed on each instance of an application server that is "clustered" by a controller. It may not be a burden as far as deploying and managing it, since it is often in place, but it is still means more processes running on the servers and consuming memory and CPU resources. Of course, it also adds another possible failure point to the data path. Since ADCs need no server-side components, they remain completely transparent.

How To Build Your Own Server

The measurement of a server is done in a unit called U, where 1U is equal to 1.75 inches. First of all you have to choose an operating system that you want to use while making server.

The Operating System Of The Server


Here i am taking a operating system (OS) from Microsoft and it is Windows 2000. It is not a server OS. It is not secure, and does not support .NET, but is still quite popular. The operating system can also be Windows Home Server, which is compatible with Windows XP and Vista clients. It is user-friendly, and has the Windows Home Server Console to administer or manage server remotely. The operating system can also be Windows 2003 Server, which supports .NET and can act as a domain controller, which means it plays a role in the logon process. Linux and FreeBSD are secure operating systems, but are very difficult to use.

You need to install Windows 2000 from the CD. To do so, you need to change the BIOS, so that you can boot from CD-ROM. Create a partition and format it with NTFS. You also need to configure the TCP/IP settings. Next, you need to go to Windows Update and install all the necessary patches to fix bugs.

Building an FTP Server


To build an FTP server, you need to download FileZilla Server, which is available in SourceForge. You need to add a new user and give him a password. You need to share the folders, which the user is able to access. You also need to give permissions, such as read (to download), write (to upload) and delete. If you want to set up a public FTP server, create a new user named 'Anonymous' and uncheck the password box. You can create a group, for a collection of users, who have the same permissions on a particular folder. You can access the FTP server by using the following URL: ftp://user:password@host:port. The host is your IP address, and the port is 21.

Instead of AppServ, you can use WampServer, which is also a combination of open-source applications in one package. The WampServer can start automatically when Windows starts, or you can manually start and stop the server everytime. The document root in WampServer is the 'www' directory. WampServer now supports PHP 5, but you can also use an add-on to support PHP 4. The normal user in MySQL is the root account, and the default password is blank. You can use the MySQL command-line tool, which brings up the console.

Instead of FileZilla, you can use the CrossFTP server. So, now that you have learned how to build a server, you can go ahead and make a personal home page or a front page for your business.