Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

A MUTUAL-SUBSTITUTING GARBAGE COLLECTING METHOD WITH AN INTERMEDIARY DEVICE

IP.com Disclosure Number: IPCOM000018646D
Original Publication Date: 2003-Jul-30
Included in the Prior Art Database: 2003-Jul-30
Document File: 5 page(s) / 42K

Publishing Venue

IBM

Abstract

Disclosed is a method for Garbage Collecting(GC) which needs no temporary suspension of service. To realize the behaviour, first, an intermediary device mediates GC-activities of a number of server computers. Second, the device dispatches clients' requests to computer that is not under GC. As the result, the intermediary device and server computers operate as a virtual non-stop server computer.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 33% of the total text.

Page 1 of 5

  A MUTUAL-SUBSTITUTING GARBAGE COLLECTING METHOD WITH AN INTERMEDIARY DEVICE

Background

Systems with an automatic memory management mechanism, known as Garbage Collection(GC), have spread rapidly in this few years; e.g. Java Virtual Machine(*). GC is an indispensable feature for application development. The reason is that one's complexity and scale go on increasing and the GC is an elixir for human errors such as allocated and derelict memory block.

However, the compensation for GC takes the shape of trouble and limitation.

First, every objects in memory space must be checked whether should be collected or not in GC process (called MARK phase). The service is forced to freeze exclusively for few milli-seconds or a few seconds. Especially in case of memory low, GC is invoked so frequently that it results in a trouble. The phenomenon called "stop-the-world" is for sure the compensation for GC.

Second, the limitation for memory loadage. To reduce the period of stop-the-world, the memory space should not be so large; i.e. the period of MARK phase is in proportion as memory space. In spite of the price-reduction of memory chip, the JVM heap size is configured to 256-512MB in general. Because of the limited memory space and some circumstances, an application can use only a few seriate memory region.

Disclosed makes it enable to be benefit from automatic memory management and to avoid compensations listed above.

*Java, JVM, and all Java-based marks are trademarks or registed trademarks of Sun Microsystems, Inc. in the United States and other countries.

Related Art

GC algorithm (generational, parallel, incremental) GC algorithm against stop-the-world are now well researched: the distribution of object's duration, multi-processor environment, and frequency of GC invocation.Although those can reduce the period of stop-the-world, but never zeroize the period. It's a fate; GC needs MARK phase and the MARK phase needs freezing of all threads.

Load balancer Often positioned at front-end of web system infrastructure. A load balancer asks servers' load periodically and dispatches request to a server whose load is lowest.

Other technologies about "avoiding GC" [A Proposal of the Task Scheduling Method for a Grid Computing System Considering

Information from the Distributed Memory Management System]

http://www.ipsj.or.jp/prosym/sprosym/program/koide.pdf

1

Page 2 of 5

Summary of the Invention

Actor There are a Client(C) that sends requests, an intermediary deviceļ¼ˆI) that relaies the request , and servers(S) that handle the request. Remember server(S) means an abstract system that have its own (and absolute) memory management mechanism, never means only a physical computer.

Organization Allocate servers(S) to the back of intermediary(I) and make them to be targets for dispatching (figure1).

ClientIntermediary

Server

Server

Server

figure1. Organazation

Mechanism This invention works with two logics; "GC mediation" and "Request Dispatching". Those two...