Load balancer in environment services patterns

Electrical computers and digital processing systems: multicomput – Distributed data processing – Client/server

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S241000, C709S226000

Reexamination Certificate

active

06578068

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates to system optimization and more particularly to organized request distribution to server components.
BACKGROUND OF THE INVENTION
An important use of computers is the transfer of information over a network. Currently, the largest computer network in existence is the Internet. The Internet is a worldwide interconnection of computer networks that communicate using a common protocol. Millions of computers, from low end personal computers to high-end super computers are coupled to the Internet.
The Internet grew out of work funded in the 1960s by the U.S. Defense Department's Advanced Research Projects Agency. For a long time, Internet was used by researchers in universities and national laboratories to share information. As the existence of the Internet became more widely known, many users outside of the academic/research community (e.g., employees of large corporations) started to use Internet to carry electronic mail.
In 1989, a new type of information system known as the World-Wide-Web (“the Web”) was introduced to the Internet. Early development of the Web took place at CERN, the European Particle Physics Laboratory. The Web is a wide-area hypermedia information retrieval system aimed to give wide access to a large universe of documents. At that time, the Web was known to and used by the academic/research community only. There was no easily available tool which allows a technically untrained person to access the Web.
In 1993, researchers at the National Center for Supercomputing Applications (NCSA) released a Web browser called “Mosaic” that implemented a graphical user interface (GUI). Mosaic's graphical user interface was simple to learn yet powerful. The Mosaic browser allows a user to retrieve documents from the World-Wide-Web using simple point-and-click commands. Because the user does not have to be technically trained and the browser is pleasant to use, it has the potential of opening up the Internet to the masses.
The architecture of the Web follows a conventional client-server model. The terms “client” and “server” are used to refer to a computer's general role as a requester of data (the client) or provider of data (the server). Under the Web environment, Web browsers reside in clients and Web documents reside in servers. Web clients and Web servers communicate using a protocol called “HyperText Transfer Protocol” (HTTP). A browser opens a connection to a server and initiates a request for a document. The server delivers the requested document, typically in the form of a text document coded in a standard Hypertext Markup Language (HTML) format, and when the connection is closed in the above interaction, the server serves a passive role, i.e., it accepts commands from the client and cannot request the client to perform any action.
The communication model under the conventional Web environment provides a very limited level of interaction between clients and servers. In many systems, increasing the level of interaction between components in the systems often makes the systems more robust, but increasing the interaction increases the complexity of the interaction and typically slows the rate of the interaction. Thus, the conventional Web environment provides less complex, faster interactions because of the Web's level of interaction between clients and servers.
SUMMARY OF THE INVENTION
A system and method are provided for distributing incoming requests from a user interface amongst a client and server components for optimizing usage of resources. Incoming requests are first received and stored by an activity module. The activity module instructs a client to handle a first subset of the requests and passes a second subset of the requests on to a utilization-based load balancer. The second subset of the requests are stored on the load balancer, and an availability of server components is determined and a listing of available server components is compiled. A determination is made as to which server component on the listing of available server components is most appropriate to receive a particular request. Each particular request of the second subset of requests is sent to the selected server component determined to be most appropriate to receive the particular request.
In one embodiment of the present invention, the determination of which server component is the most appropriate may be performed by allocating the requests on a round-robin basis whereby requests are assigned to consecutive server components by traversing along the listing of available server components. In another embodiment of the present invention, the determination of which server component is the most appropriate may also include calculating an amount of utilization that each available server component or the client is currently experiencing.
In one aspect of the present invention, the amount of utilization of each available server components may be calculated based on current CPU utilization, kernel scheduling run-queue length, current network traffic at a node to the server component, and/or a number of requests currently being serviced.
In another aspect of the present invention, a request may be rerouted to a different available server component upon a crash of the selected server component. In a further embodiment of the present invention, the server components may be saved in a persistent store, wherein a check is made to determine whether a connection to a server component needs to be reestablished.


REFERENCES:
patent: 5047918 (1991-09-01), Schwartz et al.
patent: 5133075 (1992-07-01), Risch
patent: 5187787 (1993-02-01), Skeen et al.
patent: 5241580 (1993-08-01), Babson, III
patent: 5257369 (1993-10-01), Skeen et al.
patent: 5291593 (1994-03-01), Abraham et al.
patent: 5301270 (1994-04-01), Steinberg et al.
patent: 5301320 (1994-04-01), McAttee et al.
patent: 5313636 (1994-05-01), Noble et al.
patent: 5414812 (1995-05-01), Filip et al.
patent: 5434978 (1995-07-01), Dockter et al.
patent: 5437038 (1995-07-01), Silberbauer et al.
patent: 5457797 (1995-10-01), Butterworth et al.
patent: 5459837 (1995-10-01), Caccavale
patent: 5463686 (1995-10-01), Lebourges
patent: 5471629 (1995-11-01), Risch
patent: 5475844 (1995-12-01), Shiramizu et al.
patent: 5499371 (1996-03-01), Henninger et al.
patent: 5560005 (1996-09-01), Hoover et al.
patent: 5568644 (1996-10-01), Nelson et al.
patent: 5581758 (1996-12-01), Burnett et al.
patent: 5606664 (1997-02-01), Brown et al.
patent: 5623418 (1997-04-01), Rostoker et al.
patent: 5642511 (1997-06-01), Chow et al.
patent: 5649139 (1997-07-01), Weinreb et al.
patent: 5671386 (1997-09-01), Blair et al.
patent: 5675748 (1997-10-01), Ross
patent: 5677997 (1997-10-01), Talatik
patent: 5680602 (1997-10-01), Bloem et al.
patent: 5692107 (1997-11-01), Simoudis et al.
patent: 5706506 (1998-01-01), Jensen et al.
patent: 5708828 (1998-01-01), Coleman
patent: 5710901 (1998-01-01), Stodghill et al.
patent: 5715397 (1998-02-01), Ogawa et al.
patent: 5721908 (1998-02-01), Lagarde et al.
patent: 5724575 (1998-03-01), Hoover et al.
patent: 5732263 (1998-03-01), Havens et al.
patent: 5732270 (1998-03-01), Foody et al.
patent: 5737607 (1998-04-01), Hamilton et al.
patent: 5751965 (1998-05-01), Mayo et al.
patent: 5758351 (1998-05-01), Gibson
patent: 5761513 (1998-06-01), Yellin et al.
patent: 5764235 (1998-06-01), Hunt et al.
patent: 5764955 (1998-06-01), Doolan
patent: 5774660 (1998-06-01), Brendel et al.
patent: 5778368 (1998-07-01), Hogan et al.
patent: 5787413 (1998-07-01), Kauffman et al.
patent: 5799310 (1998-08-01), Anderson et al.
patent: 5867153 (1999-02-01), Grandcolas et al.
patent: 5870742 (1999-02-01), Chang et al.
patent: 5870746 (1999-02-01), Knutson et al.
patent: 5872973 (1999-02-01), Mitchell et al.
patent: 5873086 (1999-02-01), Fujii et al.
patent: 5878408 (1999-03-01), Van Huben et al.
patent: 5881238 (1999-03-01), Aman et al.
patent: 5890133 (1999-03-01), Ernst
patent: 5892909 (1999-04-01), Grasso et al.
patent: 5892946 (1999-04-01), Woster et al.
patent: 5896383 (1999-04-01), Wakeland
patent:

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Load balancer in environment services patterns does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Load balancer in environment services patterns, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Load balancer in environment services patterns will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3139871

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.