Patents by Inventor Michael H. Conner

Michael H. Conner 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).

  • Patent number: 8032586
    Abstract: A method, a system, an apparatus, and a computer program product are presented for a fragment caching methodology. After a message is received at a computing device that contains a cache management unit, a fragment in the message body of the message is cached. Subsequent requests for the fragment at the cache management unit result in a cache hit. A FRAGMENTLINK tag is used to specify the location in a fragment for an included or linked fragment which is to be inserted into the fragment during fragment or page assembly or page rendering. A FRAGMENTLINK tag may include a FOREACH attribute that is interpreted as indicating that the FRAGMENTLINK tag should be replaced with multiple FRAGMENTLINK tags. The FOREACH attribute has an associated parameter that has multiple values that are used in identifying multiple fragments for the multiple FRAGMENTLINK tags.
    Type: Grant
    Filed: June 21, 2007
    Date of Patent: October 4, 2011
    Assignee: International Business Machines Corporation
    Inventors: James R. H. Challenger, Michael H. Conner, George P. Copeland, Arun K. Iyengar
  • Patent number: 7702800
    Abstract: A system and method are disclosed, according to which, the responsiveness of client/server-based distributed web applications operating in an object-oriented environment may be improved by detecting and handling affinity breaks between a client and server. Affinity exists when a client's requests are all routed to the same server. This is often the case, for example, during secure online transactions. A problem occurs when the preferred server becomes temporarily unavailable, and the client's requests are directed to a different server. When the original server is restored, it must detect the fact that its affinity with the client was disrupted, and any client-specific data in its cache may be invalid. In an exemplary embodiment of the system and method disclosed herein, an “affinity command” is exchanged between the client and the server during each client request. The affinity command contains a user ID associated with the client and a “generation ID”, which is unique for each request.
    Type: Grant
    Filed: December 18, 2000
    Date of Patent: April 20, 2010
    Assignee: International Business Machines Corporation
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Patent number: 7426534
    Abstract: A method, a system, an apparatus, and a computer program product are presented for a fragment caching methodology. After a message is received at a computing device that contains a cache management unit, a fragment in the message body of the message is cached. Subsequent requests for the fragment at the cache management unit result in a cache hit. A FRAGMENTLINK tag is used to specify the location in a fragment for an included or linked fragment which is to be inserted into the fragment during fragment or page assembly or page rendering. A FRAGMENTLINK tag may include a FOREACH attribute that is interpreted as indicating that the FRAGMENTLINK tag should be replaced with multiple FRAGMENTLINK tags. The FOREACH attribute has an associated parameter that has multiple values that are used in identifying multiple fragments for the multiple FRAGMENTLINK tags.
    Type: Grant
    Filed: December 19, 2001
    Date of Patent: September 16, 2008
    Assignee: International Business Machines Corporation
    Inventors: James R. H. Challenger, Michael H. Conner, George P. Copeland, Arun K. Iyengar
  • Patent number: 7117264
    Abstract: A method for communicating among a plurality of peer nodes in a network environment is provided. A discovery command is communicated from a current peer node to at least one neighbor peer node, the neighbor peer node in communication with the current peer node. An aggregated list of peer nodes is received at the current peer node, the aggregated list of peer nodes comprising information about at least one peer node in communication with the at least one neighbor node. Programs and systems of using the method are also provided.
    Type: Grant
    Filed: January 10, 2002
    Date of Patent: October 3, 2006
    Assignee: International Business Machines Corporation
    Inventors: Craig H. Becker, Michael H. Conner
  • Patent number: 6877025
    Abstract: A system and method are disclosed, according to which, the responsiveness of client/server-based distributed web applications operating in an object-oriented environment may be improved by storing both JSPs and commands in the same cache. Some of the code and data structures required for caching JSPs are the same as for commands, and are saved in a common area of the cache. A second area of the cache is reserved for code and data specific to JSPs, and a third area is reserved for code and data specific to commands. This arrangement avoids the difficulty of judiciously apportioning the available cache between JSPs and commands.
    Type: Grant
    Filed: December 18, 2000
    Date of Patent: April 5, 2005
    Assignee: International Business Machines Corp.
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Patent number: 6823360
    Abstract: A system and method are disclosed, according to which, the responsiveness of client/server-based distributed web applications operating in an object-oriented environment may be improved by cofetching read only commands. In an exemplary embodiment, the system and method are implemented by defining special preExecute and postExecute methods of cacheable commands. The preExecute method of a requested command may be invoked to execute secondary commands and then return them to the requesting client. The postExecute method of a requested command may be invoked to place the returned commands in a cache, along with the requested command. In this manner, a single request can be used to execute, retrieve and cache multiple related commands. Cofetched commands are designated by the application developer when the requested command and its associated methods are created, and may be chosen based on their anticipated use in conjunction with the requested command.
    Type: Grant
    Filed: December 18, 2000
    Date of Patent: November 23, 2004
    Assignee: International Business Machines Corp.
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Patent number: 6807606
    Abstract: A system and method are disclosed, according to which, the responsiveness of client/server-based distributed web applications operating in an object-oriented environment may be improved by coordinating execution of cacheable entries among a group of web servers, operably coupled in a network. In an exemplary embodiment, entries are considered to be either commands or Java Server Pages (JSPs), and the system and method are implemented by defining a class of objects (i.e., CacheUnits) to manage the caching of entries. An entry must be executed before it can be stored in a cache. Since this is computationally costly, each cacheable entry has an associated coordinating CacheUnit, which sees to it that only one CacheUnit executes an entry. Once the entry has been executed, a copy of it resides in the cache of the coordinating CacheUnit, from which it can be accessed by other CacheUnits without having to re-execute it.
    Type: Grant
    Filed: December 18, 2000
    Date of Patent: October 19, 2004
    Assignee: International Business Machines Corp.
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Publication number: 20040073630
    Abstract: A system and method are disclosed, according to which, the responsiveness of client/server-based distributed web applications operating in an object-oriented environment may be improved by storing both JSPs and commands in the same cache. Some of the code and data structures required for caching JSPs are the same as for commands, and are saved in a common area of the cache. A second area of the cache is reserved for code and data specific to JSPs, and a third area is reserved for code and data specific to commands. This arrangement avoids the difficulty of judiciously apportioning the available cache between JSPs and commands.
    Type: Application
    Filed: December 18, 2000
    Publication date: April 15, 2004
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Publication number: 20030191800
    Abstract: A method, a system, an apparatus, and a computer program product are presented for a fragment caching methodology. After a message is received at a computing device that contains a cache management unit, a fragment in the message body of the message is cached. Subsequent requests for the fragment at the cache management unit result in a cache hit. A FRAGMENTLINK tag is used to specify the location in a fragment for an included or linked fragment which is to be inserted into the fragment during fragment or page assembly or page rendering. A FRAGMENTLINK tag may include a FOREACH attribute that is interpreted as indicating that the FRAGMENTLINK tag should be replaced with multiple FRAGMENTLINK tags. The FOREACH attribute has an associated parameter that has multiple values that are used in identifying multiple fragments for the multiple FRAGMENTLINK tags.
    Type: Application
    Filed: December 19, 2001
    Publication date: October 9, 2003
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: James R. H. Challenger, Michael H. Conner, George P. Copeland, Arun K. Iyengar
  • Publication number: 20030131129
    Abstract: A method for communicating among a plurality of peer nodes in a network environment is provided. A discovery command is communicated from a current peer node to at least one neighbor peer node, the neighbor peer node in communication with the current peer node. An aggregated list of peer nodes is received at the current peer node, the aggregated list of peer nodes comprising information about at least one peer node in communication with the at least one neighbor node. Programs and systems of using the method are also provided.
    Type: Application
    Filed: January 10, 2002
    Publication date: July 10, 2003
    Applicant: International Business Machines Corporation
    Inventors: Craig H. Becker, Michael H. Conner
  • Publication number: 20020147887
    Abstract: A system and method are disclosed, according to which, the responsiveness of client/server-based distributed web applications operating in an object-oriented environment may be improved by coordinating execution of cacheable entries among a group of web servers, operably coupled in a network. In an exemplary embodiment, entries are considered to be either commands or Java Server Pages (JSPs), and the system and method are implemented by defining a class of objects (i.e., CacheUnits) to manage the caching of entries. An entry must be executed before it can be stored in a cache. Since this is computationally costly, each cacheable entry has an associated coordinating CacheUnit, which sees to it that only one CacheUnit executes an entry. Once the entry has been executed, a copy of it resides in the cache of the coordinating CacheUnit, from which it can be accessed by other CacheUnits without having to re-execute it.
    Type: Application
    Filed: December 18, 2000
    Publication date: October 10, 2002
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Publication number: 20020116448
    Abstract: A system and method are disclosed, according to which, the responsiveness of client/server-based distributed web applications operating in an object-oriented environment may be improved by cofetching read only commands. In an exemplary embodiment, the system and method are implemented by defining special preExecute and postExecute methods of cacheable commands. The preExecute method of a requested command may be invoked to execute secondary commands and then return them to the requesting client. The postExecute method of a requested command may be invoked to place the returned commands in a cache, along with the requested command. In this manner, a single request can be used to execute, retrieve and cache multiple related commands. Cofetched commands are designated by the application developer when the requested command and its associated methods are created, and may be chosen based on their anticipated use in conjunction with the requested command.
    Type: Application
    Filed: December 18, 2000
    Publication date: August 22, 2002
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Publication number: 20020116474
    Abstract: A system and method are disclosed, according to which, the responsiveness of client/server-based distributed web applications operating in an object-oriented environment may be improved by detecting and handling affinity breaks between a client and server. Affinity exists when a client's requests are all routed to the same server. This is often the case, for example, during secure online transactions. A problem occurs when the preferred server becomes temporarily unavailable, and the client's requests are directed to a different server. When the original server is restored, it must detect the fact that its affinity with the client was disrupted, and any client-specific data in its cache may be invalid. In an exemplary embodiment of the system and method disclosed herein, an “affinity command” is exchanged between the client and the server during each client request.
    Type: Application
    Filed: December 18, 2000
    Publication date: August 22, 2002
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Publication number: 20020116582
    Abstract: A system and method are disclosed, according to which, the responsiveness of client/server-based distributed web applications operating in an object-oriented environment may be improved by batching invalidations of cache entries. Cache invalidations require updates of invalid cache entries from the database. Since database accesses are time-consuming, it is advantageous to combine several invalidations and execute them all at once (i.e.—to batch them). In an exemplary embodiment, cache entries may be identified or located on the basis of a unique ID. A list of IDs can be compiled by an application and consulted by a batch invalidation daemon, which uses the IDs therein to invalidate the desired entries. Alternatively, a time limit property of each cache entry can be examined by a time limit invalidation daemon, to invalidate entries that have “timed out”. Batching invalidations implies that invalid entries may remain in cache until the daemon wakes up.
    Type: Application
    Filed: December 18, 2000
    Publication date: August 22, 2002
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Publication number: 20020116583
    Abstract: A system and method are disclosed, according to which, the responsiveness of client/server-based distributed web applications operating in an object-oriented environment may be improved by effectively tracking dependencies between cached entries. In an exemplary embodiment, each cacheable data item is assigned a data ID, and each cache entry has an associated list of data IDs for data upon which it is dependent. The data ID list accounts for indirect dependence. A cache entry that indirectly depends on a data item (e.g., a JSP which calls a command that uses the data item) includes the item's data ID among its dependencies. If the data item changes, all the dependent entries may be readily identified by means of their data ID list. Invalidation methods that utilize the data ID are contemplated herein, as an efficient mechanism for managing invalidation dependencies.
    Type: Application
    Filed: December 18, 2000
    Publication date: August 22, 2002
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Publication number: 20020112125
    Abstract: A system and method are disclosed, according to which, the responsiveness of client/server-based distributed web applications operating in an object-oriented environment may be improved by caching read only commands. In an exemplary embodiment, the system and method are implemented by defining a class of objects (i.e. cacheable commands), along with associated methods and properties. Among the new methods are methods adapted to designate a cache, enter a command into a cache, search a cache for a specific command, etc. When the client requires a command, the server responding to the request first seeks the command in its local cache. If the command is not found locally, and sharing is enabled, the command is sought in the cache of a peer server. If the command is not cached, the server prepares the metadata for caching the command, executes the command and conveys the resulting HTML code to the requesting client, and caches the command for subsequent requests.
    Type: Application
    Filed: December 18, 2000
    Publication date: August 15, 2002
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Publication number: 20020111992
    Abstract: A system and method are disclosed, according to which performance of client/server-based distributed web applications operating in an object-oriented environment may be improved, by increasing the capacity of a cache for Java Server Pages (JSPs). The main body of a JSP may contain calls to several other JSPs. The conventional method of caching such a composite JSP places a fully expanded version of each called JSP at the point in the main code from which it is called. This can result in considerable redundancy, since the same JSP may be called from several places. In an exemplary embodiment of the techniques disclosed herein for caching composite JSPs, the called JSPs are stored separately from the main JSP, along with links allowing the called JSPs to be located in the cache or executed. This eliminates redundancy, since only one copy of each called JSP is required.
    Type: Application
    Filed: December 18, 2000
    Publication date: August 15, 2002
    Inventors: George P. Copeland, Michael H. Conner, Gregory A. Flurry
  • Patent number: 5623657
    Abstract: A data processing system having a language independent context management facility, implements scripting related functions by providing abstract classes. Scripting related objects in a visual builder are: script action objects; script development environments (support object-oriented and procedural scripting languages) and action objects and script debuggers. Abstract classes such as extension language, extension method, and extension activation are used to implement the script-related objects listed above. To support a specific scripting language, a language specific implementation is generated by creating subclasses for the extension language, extension method, and extension activation classes.
    Type: Grant
    Filed: February 28, 1995
    Date of Patent: April 22, 1997
    Assignee: International Business Machines Corporation
    Inventors: Michael H. Conner, Nurcan Coskun
  • Patent number: 5613148
    Abstract: A method for activating and executing objects containing data and procedures including the steps of relaying, by a first object in a first address space, a communication from a process in a second address space to a second object in the first address space, activating, by the second object, a third object containing data and procedures in response to the relayed communication, and executing, by the activated third object, an operation in response to the relayed communication. In addition, an apparatus for activating and executing remote objects containing data and procedures including a first object in a first address space for relaying a communication from a process in a second address space to a second object in the first address space, apparatus for activating, in the second object, a third object containing data and procedures in response to the relayed communication, and apparatus for executing, in the activated third object, an operation in response to the relayed communication.
    Type: Grant
    Filed: October 19, 1995
    Date of Patent: March 18, 1997
    Assignee: International Business Machines Corporation
    Inventors: Dawn E. Bezviner, Michael H. Conner, Kevin J. Greene, Scott Danforth, Erin E. Shepler, Marc G. Smith
  • Patent number: 5604907
    Abstract: A data processing system for executing object oriented programs includes a processor, a memory, a display subsystem, and means for defining action slots, action objects of a first class and action objects of a second class, such that execution of an action slot object will cause execution of each action object of the first and second classes associated with the action slot.
    Type: Grant
    Filed: March 10, 1995
    Date of Patent: February 18, 1997
    Assignee: International Business Machines Corporation
    Inventors: Michael H. Conner, Nurcan Coskun