Patents by Inventor Bernard Jacobs

Bernard Jacobs 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: 7113980
    Abstract: A system for managing a JMS message store in a clustered network includes an object acting as a message store for Java Message Service (JMS). A lead server is selected from several clustered servers. The lead server uses a distributed consensus algorithm to select a host server, utilizing multicast messaging while executing rounds of the algorithm. The selected host server hosts the JMS message store, providing sole access to JMS. The other servers are notified of the new host by multicast messaging. All servers in the cluster can use JMS, but they must send messages to the message store on the host and pick up any messages from the message store.
    Type: Grant
    Filed: September 4, 2002
    Date of Patent: September 26, 2006
    Assignee: BEA Systems, Inc.
    Inventors: Dean Bernard Jacobs, Eric M. Halpern
  • Patent number: 7028030
    Abstract: Concurrency can be maintained in cluster caching when processing an update request on network server that is storing a local copy of a data item. The request can be processed using the local copy of the data item. A predicated update request can be sent to a network database storing the data item, wherein the database can commit the update if the local copy is current with the data item. If the local copy is not current, the network server can request a new copy, process the request using the current copy, and try another predicated request. The process can continue until the update is committed to the database or aborted. Once committed, any other servers in the cluster can be notified that the data item has been updated. Those other servers can drop any local copy of the data item and can request an updated copy of the data item.
    Type: Grant
    Filed: August 2, 2002
    Date of Patent: April 11, 2006
    Assignee: BEA Systems, Inc.
    Inventors: Dean Bernard Jacobs, Rob Woollen, Adam Messinger, Seth White
  • Patent number: 7020684
    Abstract: Transactions are granted concurrent access to a data item through the use of an optimistic concurrency algorithm. Each transaction gets its own instance of the data item, such as in a cache or in an entity bean, such that it is not necessary to lock the data. The instances can come from the data or from other instances. When a transaction updates the data item, the optimistic concurrency algorithm ensures that the other instances are notified that the data item has been changed and that it is necessary to read a new instance, from the database or from an updated instance. This description is not intended to be a complete description of, or limit the scope of, the invention. Other features, aspects, and objects of the invention can be obtained from a review of the specification, the figures, and the claims.
    Type: Grant
    Filed: January 10, 2003
    Date of Patent: March 28, 2006
    Assignee: BEA Systems, Inc.
    Inventors: Seth White, Adam Messinger, Dean Bernard Jacobs, Rob Woollen
  • Patent number: 6918013
    Abstract: Servers in a network cluster can each store a copy of a data item in local cache, providing read access to these copies through read-only entity beans. The original data item in the database can be updated through a read/write entity bean one of the cluster servers. That cluster server has access to an invalidation target, which contains identification information relating to copies of the data item stored on servers in the cluster. Once the read/write bean updates the data item in the database, an invalidate request can be sent or multicast to all cluster members, or to any read-only bean or server contained in the invalidation target. Each server or read-only bean receiving the request knows to drop any copy of the data item in local cache, and can request a current copy of the data item from the database.
    Type: Grant
    Filed: August 5, 2002
    Date of Patent: July 12, 2005
    Assignee: BEA Systems, Inc.
    Inventors: Dean Bernard Jacobs, Rob Woollen, Seth White
  • Publication number: 20040249928
    Abstract: A system for managing objects in a clustered network includes a file system containing at least one copy of a data object. The system can include several clustered servers in communication with the file system. A distributed consensus algorithm is used to select a host server. The selected host server can contain a copy of the data object, such as in local cache, providing access to the local copy to any other server in the cluster. Any change made to an item hosted by the host server can also be updated in the file system. If the host server becomes unable to host the object, a new host can be chosen using the distributed consensus algorithm. The other servers are then notified of the new host by multicast messaging.
    Type: Application
    Filed: July 9, 2004
    Publication date: December 9, 2004
    Applicant: BEA Systems, Inc.
    Inventors: Dean Bernard Jacobs, Eric M. Halpern
  • Publication number: 20040249946
    Abstract: A method for managing objects in a clustered network includes a file system containing at least one copy of a data object. The method can involve several clustered servers in communication with the file system. A distributed consensus algorithm is used to select a host server. The selected host server can contain a copy of the data object, such as in local cache, providing access to the local copy to any other server in the cluster. Any change made to an item hosted by the host server can also be updated in the file system. If the host server becomes unable to host the object, a new host can be chosen using the distributed consensus algorithm. The other servers are then notified of the new host by multicast messaging.
    Type: Application
    Filed: July 9, 2004
    Publication date: December 9, 2004
    Applicant: BEA Systems, Inc.
    Inventors: Dean Bernard Jacobs, Eric M. Halpern
  • Publication number: 20040243585
    Abstract: A system for managing objects in a clustered network includes a file system containing at least one copy of a data object. The system can include several clustered servers in communication with the file system. A distributed consensus algorithm is used to select a host server. The selected host server can contain a copy of the data object, such as in local cache, providing access to the local copy to any other server in the cluster. Any change made to an item hosted by the host server can also be updated in the file system. If the host server becomes unable to host the object, a new host can be chosen using the distributed consensus algorithm. The other servers are then notified of the new host by multicast messaging.
    Type: Application
    Filed: July 8, 2004
    Publication date: December 2, 2004
    Applicant: BEA Systems, Inc.
    Inventors: Dean Bernard Jacobs, Eric M. Halpern
  • Patent number: 6826601
    Abstract: A system for managing objects in a clustered network includes a file system containing at least one copy of a data object. The system can include several clustered servers in communication with the file system. A lead server is selected, which contains a distributed consensus algorithm for selecting a host server, and which utilizes multicasting while executing rounds of the algorithm. The selected host server can contain a copy of the data object, such as in local cache, providing access to the local copy to any other server in the cluster. Any change made to an item hosted by the host server can also be updated in the file system. If the host server becomes unable to host the object, a new host can be chosen using the distributed consensus algorithm. The other servers are then notified of the new host by multicast messaging.
    Type: Grant
    Filed: September 4, 2002
    Date of Patent: November 30, 2004
    Assignee: BEA Systems, Inc.
    Inventors: Dean Bernard Jacobs, Eric M. Halpern
  • Publication number: 20030236880
    Abstract: A Node Manager monitors the status of multiple servers. The Node Manager detects server failures, periodically monitors server health status, and performs server maintenance. When the Node Manager detects a server failure, it determines whether or not the server should be restarted. While periodically monitoring servers, the Node Manager may determine how often to trigger a health check, how long to wait for a response, and how to proceed if the server is deemed failed. The Node Manager may be controlled by an Administrative Server directly or by an external administrative agent. An administrative agent may control the Node Manager by interfacing with the Administrative Server. The Node Manager and AS may authenticate each other and encode their communications to each other for increased security.
    Type: Application
    Filed: January 9, 2003
    Publication date: December 25, 2003
    Inventors: Rahul Srivastava, Ananthan Bala Srinivasan, Eric M. Halpern, Dean Bernard Jacobs
  • Publication number: 20030233522
    Abstract: Transactions are granted concurrent access to a data item through the use of an optimistic concurrency algorithm. Each transaction gets its own instance of the data item, such as in a cache or in an entity bean, such that it is not necessary to lock the data. The instances can come from the data or from other instances. When a transaction updates the data item, the optimistic concurrency algorithm ensures that the other instances are notified that the data item has been changed and that it is necessary to read a new instance, from the database or from an updated instance.
    Type: Application
    Filed: January 10, 2003
    Publication date: December 18, 2003
    Inventors: Seth White, Adam Messinger, Dean Bernard Jacobs, Rob Woollen
  • Publication number: 20030229804
    Abstract: A Node Manager monitors the status of multiple servers. The Node Manager detects server failures, periodically monitors server health status, and performs server maintenance. When the Node Manager detects a server failure, it determines whether or not the server should be restarted. While periodically monitoring servers, the Node Manager may determine how often to trigger a health check, how long to wait for a response, and how to proceed if the server is deemed failed. The Node Manager may be controlled by an Administrative Server directly or by an external administrative agent. An administrative agent may control the Node Manager by interfacing with the Administrative Server. The Node Manager and AS may authenticate each other and encode their communications to each other for increased security.
    Type: Application
    Filed: January 9, 2003
    Publication date: December 11, 2003
    Inventors: Rahul Srivastava, Ananthan Bala Srinivasan, Eric M. Halpern, Dean Bernard Jacobs
  • Publication number: 20030225880
    Abstract: A Node Manager monitors the status of multiple servers. The Node Manager detects server failures, periodically monitors server health status, and performs server maintenance. When the Node Manager detects a server failure, it determines whether or not the server should be restarted. While periodically monitoring servers, the Node Manager may determine how often to trigger a health check, how long to wait for a response, and how to proceed if the server is deemed failed. The Node Manager may be controlled by an Administrative Server directly or by an external administrative agent. An administrative agent may control the Node Manager by interfacing with the Administrative Server. The Node Manager and AS may authenticate each other and encode their communications to each other for increased security.
    Type: Application
    Filed: January 9, 2003
    Publication date: December 4, 2003
    Inventors: Rahul Srivastava, Ananthan Bala Srinivasan, Eric M. Halpern, Dean Bernard Jacobs
  • Publication number: 20030158908
    Abstract: A system for managing objects in a clustered network includes a file system containing at least one copy of a data object. The system can include several clustered servers in communication with the file system. A lead server is selected, which contains a distributed consensus algorithm for selecting a host server, and which utilizes multicasting while executing rounds of the algorithm. The selected host server can contain a copy of the data object, such as in local cache, providing access to the local copy to any other server in the cluster. Any change made to an item hosted by the host server can also be updated in the file system. If the host server becomes unable to host the object, a new host can be chosen using the distributed consensus algorithm. The other servers are then notified of the new host by multicast messaging.
    Type: Application
    Filed: September 4, 2002
    Publication date: August 21, 2003
    Inventors: Dean Bernard Jacobs, Eric M. Halpern
  • Publication number: 20030065708
    Abstract: A system for managing a JMS message store in a clustered network includes an object acting as a message store for Java Message Service (JMS). A lead server is selected from several clustered servers. The lead server uses a distributed consensus algorithm to select a host server, utilizing multicast messaging while executing rounds of the algorithm. The selected host server hosts the JMS message store, providing sole access to JMS. The other servers are notified of the new host by multicast messaging. All servers in the cluster can use JMS, but they must send messages to the message store on the host and pick up any messages from the message store.
    Type: Application
    Filed: September 4, 2002
    Publication date: April 3, 2003
    Inventors: Dean Bernard Jacobs, Eric M. Halpern
  • Publication number: 20030051102
    Abstract: Servers in a network cluster can each store a copy of a data item in local cache, providing read access to these copies through read-only entity beans. The original data item in the database can be updated through a read/write entity bean one of the cluster servers. That cluster server has access to an invalidation target, which contains identification information relating to copies of the data item stored on servers in the cluster. Once the read/write bean updates the data item in the database, an invalidate request can be sent or multicast to all cluster members, or to any read-only bean or server contained in the invalidation target. Each server or read-only bean receiving the request knows to drop any copy of the data item in local cache, and can request a current copy of the data item from the database.
    Type: Application
    Filed: August 5, 2002
    Publication date: March 13, 2003
    Inventors: Dean Bernard Jacobs, Rob Woollen, Seth White
  • Publication number: 20030046230
    Abstract: In an account transaction such as an ATM transaction, a server in communication with an ATM stores a copy of the account balance. Before processing the transaction, the server reads the balance from memory and determines whether the account contains sufficient funds for the transaction. In order to prevent overdrawing of the account, the server makes any balance update predicated on the fact that the current balance in the account database is the same as the balance of the local copy of the account. If the account balance stored in the database is not the same, the server rolls back the request and updates the account balance stored in the local copy. This process continues until either the account balance is updated or the transaction is aborted.
    Type: Application
    Filed: August 2, 2002
    Publication date: March 6, 2003
    Inventors: Dean Bernard Jacobs, Rob Woollen, Adam Messinger, Seth White
  • Publication number: 20030046286
    Abstract: Concurrency can be maintained in cluster caching when processing an update request on network server that is storing a local copy of a data item. The request can be processed using the local copy of the data item. A predicated update request can be sent to a network database storing the data item, wherein the database can commit the update if the local copy is current with the data item. If the local copy is not current, the network server can request a new copy, process the request using the current copy, and try another predicated request. The process can continue until the update is committed to the database or aborted. Once committed, any other servers in the cluster can be notified that the data item has been updated. Those other servers can drop any local copy of the data item and can request an updated copy of the data item.
    Type: Application
    Filed: August 2, 2002
    Publication date: March 6, 2003
    Inventors: Dean Bernard Jacobs, Rob Woollen, Adam Messinger, Seth White
  • Publication number: 20030023898
    Abstract: Data is replicated from a master server to a slave server on a network by first sending a start call from a master user level to a master service level on the master server, the start call containing version information for data on the master server. The information is then sent to a slave service layer on a slave server so the slave server layer can determine whether data on the slave server is current. The slave server layer can request a delta from the master server if the slave data is not current. A delta containing the information necessary to update the slave data is sent from the master service layer to the slave service layer so the slave service layer can process the delta and send the updated information to the slave user layer.
    Type: Application
    Filed: October 11, 2001
    Publication date: January 30, 2003
    Inventors: Dean Bernard Jacobs, Reto Kramer, Ananthan Bala Srinivasan
  • Publication number: 20030018732
    Abstract: Data can be replicated over a network using a one or two phase method. For the one phase method, a master server containing an original copy of the data sends a version number for the current state of the data to each slave on the network so that each slave can request a delta from the master. The delta that is requested contains the data necessary to update the slave to the appropriate version of the data. For the two phase method, the master server sends a packet of information to each slave. The packet of information can be committed by the slaves if each slave is able to process the commit.
    Type: Application
    Filed: October 11, 2001
    Publication date: January 23, 2003
    Inventors: Dean Bernard Jacobs, Reto Kramer, Ananthan Bala Srinivasan
  • Publication number: 20030014526
    Abstract: A session replication system provides real-time data replication without unnecessarily slowing down the user experience. A system in accordance with the present invention may utilize a primary server to serve requests from a network client, as well as a secondary server to replicate the session information. When a request is received on the session, an attempt may be made to serve the request on the primary server. If the primary is unable to receive or respond to the request, the request may be served on the secondary server or on a new primary server. If the secondary server receives the request, the secondary server may become the new primary server. If a new primary server is selected, the new primary may request the session information from the secondary server.
    Type: Application
    Filed: October 31, 2001
    Publication date: January 16, 2003
    Inventors: Sam Pullara, Eric M. Halpern, Prasad Peddada, Adam Messinger, Dean Bernard Jacobs