Patents by Inventor Gennaro A. Cuomo

Gennaro A. Cuomo has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20080201288
    Abstract: A method, system and program product for identifying caching opportunities is provided. The method includes identifying one or more data sources stored on a database system that are utilized by an application, establishing a pre-set read-update ratio threshold for data accessed from a data source, and tracking the read-update ratio threshold for data accessed from the data source, such that exceeding the pre-set read-update ratio threshold for the data accessed identifies a caching opportunity. The method further includes defining an action to be taken when the pre-set read-update ratio threshold for the data accessed from the data source has been exceeded and taking the action defined when the pre-set read-update ratio threshold for the data accessed from the data source has been exceeded. The action defined includes either advising a user of an opportunity to cache the data accessed or automatically caching the data accessed from the data source.
    Type: Application
    Filed: February 15, 2007
    Publication date: August 21, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Gennaro A. Cuomo, Thomas R. Gissel, Stephen Rees, Timothy J. Vincent
  • Publication number: 20080195754
    Abstract: A method and apparatus route hypertext protocol requests to one of a plurality of application servers, which share a database through a backend database management system. The application servers store session data in the database. Hence, if a subsequent request is routed to a different application server, the session data is available through the backend database management system. One or more web servers perform routing of requests to the application server. When a request is received that is accompanied by a session ID, routing is performed by utilizing a hash function on the session ID. The resulting hash value is mapped to an application server. A hash function on a session ID will always result in the same hash value; therefore, the request will always be routed to the same application server. However, if an application server is non-functional, a new hash based on the previous hash is computed until a functional application server is selected.
    Type: Application
    Filed: April 8, 2008
    Publication date: August 14, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Gennaro A. Cuomo, Michael L. Fraenkel, Brian K. Martin
  • Publication number: 20080140690
    Abstract: An apparatus, system, and storage medium that in an embodiment determine the active partitions of an application and assign the active partitions among servers via a routing table. The routing table is sent to a client, who uses the routing table to send requests and/or messages to the active partitions. In an embodiment, the routing table includes identifiers of the active partitions and the associated partitions. If one of the servers fails or if the partitions have a loading imbalance, the partitions are reassigned via the routing table.
    Type: Application
    Filed: February 12, 2008
    Publication date: June 12, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Gennaro A. Cuomo, Donald Francis Ferguson, William T. Newport
  • Patent number: 7366755
    Abstract: A method and apparatus route hypertext protocol requests to one of a plurality of application servers, which share a database through a backend database management system. The application servers store session data in the database. Hence, if a subsequent request is routed to a different application server, the session data is available through the backend database management system. One or more web servers perform routing of requests to the application server. When a request is received that is accompanied by a session ID, routing is performed by utilizing a hash function on the session ID. The resulting hash value is mapped to an application server. A hash function on a session ID will always result in the same hash value; therefore, the request will always be routed to the same application server. However, if an application server is non-functional, a new hash based on the previous hash is computed until a functional application server is selected.
    Type: Grant
    Filed: July 28, 2000
    Date of Patent: April 29, 2008
    Assignee: International Business Machines Corporation
    Inventors: Gennaro A. Cuomo, Michael L. Fraenkel, Brian Keith Martin
  • Patent number: 7356613
    Abstract: A method, apparatus, system, and signal-bearing medium that in an embodiment determine the active partitions of an application and assign the active partitions among servers via a routing table. The routing table is sent to a client, who uses the routing table to send requests and/or messages to the active partitions. In an embodiment, the routing table includes identifiers of the active partitions and the associated partitions. If one of the servers fails or if the partitions have a loading imbalance, the partitions are reassigned via the routing table.
    Type: Grant
    Filed: August 17, 2004
    Date of Patent: April 8, 2008
    Assignee: International Business Machines Corporation
    Inventors: Gennaro A. Cuomo, Donald Francis Ferguson, William T. Newport
  • Patent number: 7334087
    Abstract: A method of caching contextually variant objects in a common cache. The method can include identifying an object type for a requested object and determining whether the requested object has an object type which is specified among an enumerated set of cacheable object types which can be stored in the common cache. Importantly, each cacheable object type can have an associated context. If the requested object has an object type which is specified among the enumerated set of cacheable object types, a cache key can be computed for the requested object using cache key formulation rules for the associated context. Finally, the requested object can be retrieved from the common cache using the formulated cache key. Notably, in one aspect of the invention, the method also can include the step of invalidating individual objects in the common cache according to corresponding cache policies of associated contexts.
    Type: Grant
    Filed: February 8, 2005
    Date of Patent: February 19, 2008
    Assignee: International Business Machines Corporation
    Inventors: Gennaro A. Cuomo, Brian Keith Martin, Donald F. Ferguson, Daniel C. Shupp, Goran D. Zlokapa
  • Publication number: 20080016181
    Abstract: A computer implemented method, apparatus, and computer usable program code for providing media. A determination is made as to whether providing media would aid in providing information to a user in response to a communication session with the user. The media is authorized to be sent to the user based on an authorization of a representative in response to a determination that providing the media would aid in providing information to the user. The flow of the media sent to the user from the media server is controlled after the media has been authorized.
    Type: Application
    Filed: July 13, 2006
    Publication date: January 17, 2008
    Inventors: Erik John Burckart, John Paul Cammarata, Gennaro A. Cuomo, Ruth Anne Taylor
  • Publication number: 20070294596
    Abstract: The present invention provides inter-tier failure detection using a central aggregation point. A method in accordance with an embodiment of the present invention includes: performing intra-tier failure detection in a first tier of a multi-tier system; providing a failure status to a central aggregation point in the first tier; and communicating the failure status inter-tier to a central aggregation point of a second tier of the multi-tier system.
    Type: Application
    Filed: May 22, 2006
    Publication date: December 20, 2007
    Inventors: Thomas R. Gissel, Gennaro A. Cuomo, William T. Newport, Barton C. Vashaw
  • Patent number: 7295953
    Abstract: In a Web application testing method which has been configured in accordance with the present invention, a network message from one of several network clients can be intercepted. Session data in the network message can be identified and state information retrieved for the session in the Web application. An operation and corresponding associated parameters can be selected from a Web scenario template based upon the retrieved state information. Finally, operations can be invoked in the Web application, the operations corresponding to the operation and associated operational parameters selected from the Web scenario template.
    Type: Grant
    Filed: December 21, 2001
    Date of Patent: November 13, 2007
    Assignee: International Business Machines Corporation
    Inventors: John S. Cox, Gennaro A. Cuomo, Brian Keith Martin
  • Patent number: 7275239
    Abstract: Methods, systems, computer program products, and methods of doing business whereby programmatically-generated byte code insertion is used to perform run-time tracing of code that potentially encounters a wait during execution. The byte code insertion is performed at load time, and inserts byte codes before and after a located (potential) wait point. The inserted byte code functions to gather execution statistics, such as a time stamp before invoking a located wait point and a time stamp after invoking the located wait point. Preferred embodiments allow this tracing to be selectively activated/deactivated.
    Type: Grant
    Filed: February 10, 2003
    Date of Patent: September 25, 2007
    Assignee: International Business Machines Corporation
    Inventors: Gennaro A. Cuomo, Erik A. Daughtrey, Michael L. Fraenkel
  • Patent number: 7237242
    Abstract: Thread pools in a multithreaded server are programmatically adjusted, based on observed statistics from the server's inbound workload. In a multithreaded server environment, response time to end users is improved while increasing the efficiency of software execution and resource usage. Execution time and wait/queued time are tracked, for various types of requests being serviced by a server. Multiple logical pools of threads are used to service these requests, and inbound requests are directed to a selected one of these pools such that requests of similar execution-time requirements are serviced by the threads in that pool. The number and size of thread pools may be adjusted programmatically, and the distribution calculation (i.e., determining which inbound requests should be assigned to which pools) is a programmatic determination. In preferred embodiments, only one of these variables is adjusted at a time, and the results are monitored to determine whether the effect was positive or negative.
    Type: Grant
    Filed: December 31, 2002
    Date of Patent: June 26, 2007
    Assignee: International Business Machines Corporation
    Inventors: Christopher James Blythe, Gennaro A. Cuomo, Erik A. Daughtrey, Matt R. Hogstrom
  • Publication number: 20070086350
    Abstract: The present invention provides a method, system, and computer program product for failure detection with minimal bandwidth usage. A method for failure detection in a multi-node system in accordance with an embodiment of the present invention includes the steps of associating all connections between a first node and a second node with a last receipt value and a maximum idle value, calculating a difference between the last receipt value and a current time, and establishing a heartbeat connection from the first node to the second node if the difference between the last receipt value and the current time exceeds the maximum idle value. A heartbeat process is then initiated over the heartbeat connection to determine the condition of the second node.
    Type: Application
    Filed: October 13, 2005
    Publication date: April 19, 2007
    Applicant: International Business Machines Corporation
    Inventors: Marc Haberkorn, Gennaro Cuomo, Thomas Gissel, Barton Vashaw
  • Patent number: 7207043
    Abstract: Workload is programmatically distributed across a set of execution resources. In a multithreaded server environment, response time to end users is improved while increasing the efficiency of software execution and resource usage. Execution time and wait/queued time are tracked, for various types of requests being serviced by a server. Multiple logical pools of threads are used to service these requests, and inbound requests are directed to a selected one of these pools such that requests of similar execution-time requirements are serviced by the threads in that pool. The number and size of thread pools may be adjusted programmatically, and the distribution calculation (i.e., determining which inbound requests should be assigned to which pools) is a programmatic determination. In preferred embodiments, only one of these variables is adjusted at a time, and the results are monitored to determine whether the effect was positive or negative.
    Type: Grant
    Filed: December 31, 2002
    Date of Patent: April 17, 2007
    Assignee: International Business Machines Corporation
    Inventors: Christopher James Blythe, Gennaro A. Cuomo, Erik A. Daughtrey, Matt R. Hogstrom
  • Patent number: 7073027
    Abstract: Controlling a cache of distributed data is provided by dynamically determining whether and/or where to cache the distributed data based on characteristics of the data, characteristics of the source of the data and characteristics of the cache so as to provide an indication of whether to cache the data. The data may be selectively cached based on the indication.
    Type: Grant
    Filed: July 11, 2003
    Date of Patent: July 4, 2006
    Assignee: International Business Machines Corporation
    Inventors: Gennaro A. Cuomo, Brian K. Martin
  • Patent number: 7051201
    Abstract: A method for securing cached data in an enterprise environment. The method can include processing a request to locate data in a query cache. If the data can be located in the query cache, the data can be retrieved from the query cache. Additionally, at least one encrypted portion of the retrieved data can be decrypted. Finally, the decrypted portion and any remaining unencrypted portion of the retrieved data can be forwarded to a requesting client. By comparison, if the data cannot be located in the query cache, the data can be retrieved from a back-end data source over a computer communications network, and forwarded to the requesting client. Additionally, at least a portion of the retrieved data can be encrypted and both the encrypted portion and any remaining unencrypted portion can be stored in the query cache.
    Type: Grant
    Filed: March 15, 2002
    Date of Patent: May 23, 2006
    Assignee: International Business Machines Corporation
    Inventors: Gennaro A. Cuomo, Brian Keith Martin, Anthony Joseph Nadalin, Nataraj Nagaratnam
  • Patent number: 7043455
    Abstract: A method and apparatus for securing hypertext transfer protocol sessions authenticates a user's credentials before creating a session. The present invention then associates the session with the credentials. Subsequent requests are submitted with the session ID and the user credentials to be associated with the session. Therefore, an unauthorized user that has obtained a session ID cannot gain access to sensitive content associated with the session without possessing the valid credentials.
    Type: Grant
    Filed: July 28, 2000
    Date of Patent: May 9, 2006
    Assignee: International Business Machines Corporation
    Inventors: Gennaro A. Cuomo, Michael L. Fraenkel, Gabriel Garcia Montero, Nataraj Nagaratnam
  • Publication number: 20060095917
    Abstract: A method, system and apparatus for on-demand application resource allocation. In accordance with the method of the invention, an anticipated workload can be compared to a measured capacity for an application cluster in one or more server computing nodes in a server farm. If the measured capacity warrants a re-configuration of the application clusters, a new placement can be computed for application server instances in individual ones of the server computing nodes. Subsequently, the new placement can be applied to the server computing nodes in the server farm. In this regard, the applying step can include starting and stopping selected ones of the application server instances in different ones of the server computing nodes to effectuate the new placement.
    Type: Application
    Filed: November 1, 2004
    Publication date: May 4, 2006
    Applicant: International Business Machines Corporation
    Inventors: Elizabeth Black-Ziegelbein, Gennaro Cuomo, Brian Martin, Giovanni Pacifici, Michael Spreitzer, Malgorzata Steinder, Asser Tantawi
  • Publication number: 20060085541
    Abstract: A system and method are disclosed for leveraging bandwidth and processor utilization to advantageously influence response time performance. The objective of such leveraging is to maximize transaction throughput (e.g., requests per second) between a pair of servers when the servers are connected through less than optimal networks and/or network connections. Such an optimization is accomplished by determining whether or not adjusting request and/or reply sizes by applying a compression factor (i.e., to facilitate compression) will have a desirable influence on response time performance. Such determination is based on decision criteria including, but are not limited to, network protocol performance, CPU utilization, bandwidth utilization, and estimates of the CPU time and network time costs of sending compressed verses uncompressed data.
    Type: Application
    Filed: October 19, 2004
    Publication date: April 20, 2006
    Applicant: International Business Machines Corporation
    Inventors: Gennaro Cuomo, Thomas Gissel, Harvey Gunther, Barton Vashaw
  • Publication number: 20060082592
    Abstract: The inventive process comprises and improved process for displaying hierarchical information in a treemap by associating a different color with each nested treemap in a parent treemap, and generating a gradient for each color to preserve the representative value of varying shades. In general, a user divides the hierarchical information into clusters of nodes, designates a primary weight and a secondary weight for each cluster, and designates a base color for each cluster. The inventive process then divides the range of each cluster's secondary weight into bins, adjusts each cluster's base color to create a distinguishing gradient of the base color, assigns a distinguishing gradient to each bin, and draws a nested treemap for each cluster so that each nested treemap has a cluster's base color and each node in the cluster is represented by a bounding box having a distinct gradient of the cluster's base color.
    Type: Application
    Filed: October 19, 2004
    Publication date: April 20, 2006
    Applicant: International Business Machines Corporation
    Inventors: Elizabeth Black-Ziegelbein, Gennaro Cuomo, Marc Haberkorn, Barton Vashaw
  • Publication number: 20060075101
    Abstract: The present invention provides a method, system, and computer program product for supporting a large number of intermittently used application clusters without consuming all the resources needed to run server processes for all the application clusters all the time. A method in accordance with the present invention comprises: holding an application request for a dormant application cluster in a holding zone; changing a status of the dormant application cluster to active; changing a status of an unused active application cluster to dormant; stopping server processes for the newly dormant application cluster; starting server processes for the newly active application cluster; and directing the application request held in the holding zone to the server processes for the newly active application cluster.
    Type: Application
    Filed: September 29, 2004
    Publication date: April 6, 2006
    Applicant: International Business Machines Corporation
    Inventors: Nikolaos Anerousis, Gennaro Cuomo, Erik Daughtrey, Brian Martin, Giovanni Pacifici, Michael Spreitzer, Malgorzata Steinder, Asser Tantawi