← Back to Patent Explorer
US6237005B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Web server mechanism for processing multiple transactions in an interpreted language execution environment

Assignee: Hewlett Packard Enterprise Development LP
•
Filing: 1998-06-29
•
Granted: 2001-05-22
•
Expires: 2018-06-29
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A web server computer system includes a dispatcher program that processes transaction request messages received from a web browser. The dispatcher program includes a combination of persistent and transient interpreters that are used to process the transaction. The persistent interpreters are maintained in memory for an indefinite period of time and across multiple transactions. One type of persistent interpreter is a master interpreter that is used to coordinate the processing activity. A second type of persistent interpreter is a pristine interpreter that provides relevant context for any application programs required to process the transaction. A transient interpreter is maintained in memory for a finite duration, such as across a single transaction. One type of transient interpreter is a transaction interpreter that is used to process the transaction request message. The transaction interpreter is formed and used by the master interpreter to execute the procedures stored by the pristine interpreters that are required to execute the transaction to completion. When the transaction is complete a transaction result is returned to the web server and the transaction interpreter is preferably deleted from memory. The combination of persistent and transient interpreters in an interpreted language execution environment reduces the setup time across multiple transactions and thereby improves upon transaction processing performance.

Inventors

  • 👤 David Michael Griffin

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 11:20
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/50; G06F9/5005; G06F9/5027; G06F9/5055; Y; Y10; Y10S; Y10S707/00; Y10S707/99941; Y10S707/99943

Claims Analysis

Total Claims: 34
Claim 1
Independent Claim 128 words
A method for processing a transaction in an interpreted language execution environment, comprising the steps of: A) loading a persistent interpreter into a memory and initiating said persistent interpreter to configure an interpreted language execution environment, said persistent interpreter maintaining a set of variables and procedures, wherein said persistent interpreter is maintained in said memory for a time period, T 1 ; and B) loading a transient interpreter into said memory and initiating said transient interpreter, said transient interpreter being operative to access said variables and said procedures maintained by said persistent interpreter, to execute said transaction, and to return a result, wherein said transient interpreter is maintained in said memory for a time period, T 2 , and wherein T 2 is less than T 1 .
Claim 2
Independent Claim 128 words
A method for processing a transaction in an interpreted language execution environment, comprising the steps of: A) loading a persistent interpreter into a memory and initiating said persistent interpreter to configure an interpreted language execution environment, said persistent interpreter maintaining a set of variables and procedures, wherein said persistent interpreter is maintained in said memory for a time period, T 1 ; and B) loading a transient interpreter into said memory and initiating said transient interpreter, said transient interpreter being operative to access said variables and said procedures maintained by said persistent interpreter, to execute said transaction, and to return a result, wherein said transient interpreter is maintained in said memory for a time period, T 2 , and wherein T 2 is less than T 1 .
Claim 3
Dependent Claim 33 words
The method in accordance with claim 1 , wherein said transaction is specified by a message sent by a web browser process and wherein said message is received by a web server process.
Claim 4
Dependent Claim 54 words
The method in accordance with claim 1 , wherein said time period T 1 for maintaining said persistent interpreter in said memory extends for the processing of a plurality of transactions and where said time period T 2 for maintaining said transient interpreter in said memory extends for the processing of a single transaction.
Claim 5
Independent Claim 439 words
A method implemented by a computer system, said computer system including at least one central processing unit, a memory coupled to said central processing unit, a number of data sources coupled to said central processing unit and said memory, a network interface apparatus coupling said computer system to a number of other computer systems over a network medium, wherein said computer system receives a number of transaction requests from said other computer systems over said network medium and wherein said computer system executes a program incorporating said method to respond to each of said transaction requests, said method comprising the steps: i) accessing a master interpreter wherein said master interpreter configures an interpreted language execution environment and maintains a number of procedures in said memory for a time period T 1 ; ii) said master interpreter determining a number of application specific parameters required to process said transaction request by searching for a pristine interpreter having said application specific parameters, wherein said application specific parameters of said pristine interpreter are stored in said memory for a time period T 2 ; iii) if said master interpreter is unable to locate said application specific parameters in a pristine interpreter, said master interpreter forming a new pristine interpreter, locating said application specific parameters in said data sources coupled to said computer system, and loading said application specific parameters in said new pristine interpreter; iv) if said master interpreter is able to locate said application specific parameters in a pristine interpreter, said master interpreter forming a transaction interpreter that is operative to access said application specific parameters in said pristine interpreter and accessing procedures in said master interpreter, wherein each of said procedures and said application specific parameters accessed from said master interpreter and said pristine interpreter by said transaction interpreter are maintained in a temporary location in said memory for a time period T 3 ; v) said transaction interpreter being operative to use said procedures and said application specific parameters maintained in said temporary location of said memory while executing said transaction request, and upon completing execution of said transaction request, said master interpreter deleting said transaction interpreter and said procedures and said application specific parameters stored in said temporary location in said memory; and vi) if while executing said transaction request, said transaction interpreter requires access to application specific parameters not stored in said temporary location in said memory, said transaction interpreter searching said master interpreter and said pristine interpreter for said application specific parameters and upon locating said application specific parameters loading said application specific parameters into said temporary location in said memory, and continuing with step (v).
Claim 6
Independent Claim 439 words
A method implemented by a computer system, said computer system including at least one central processing unit, a memory coupled to said central processing unit, a number of data sources coupled to said central processing unit and said memory, a network interface apparatus coupling said computer system to a number of other computer systems over a network medium, wherein said computer system receives a number of transaction requests from said other computer systems over said network medium and wherein said computer system executes a program incorporating said method to respond to each of said transaction requests, said method comprising the steps: i) accessing a master interpreter wherein said master interpreter configures an interpreted language execution environment and maintains a number of procedures in said memory for a time period T 1 ; ii) said master interpreter determining a number of application specific parameters required to process said transaction request by searching for a pristine interpreter having said application specific parameters, wherein said application specific parameters of said pristine interpreter are stored in said memory for a time period T 2 ; iii) if said master interpreter is unable to locate said application specific parameters in a pristine interpreter, said master interpreter forming a new pristine interpreter, locating said application specific parameters in said data sources coupled to said computer system, and loading said application specific parameters in said new pristine interpreter; iv) if said master interpreter is able to locate said application specific parameters in a pristine interpreter, said master interpreter forming a transaction interpreter that is operative to access said application specific parameters in said pristine interpreter and accessing procedures in said master interpreter, wherein each of said procedures and said application specific parameters accessed from said master interpreter and said pristine interpreter by said transaction interpreter are maintained in a temporary location in said memory for a time period T 3 ; v) said transaction interpreter being operative to use said procedures and said application specific parameters maintained in said temporary location of said memory while executing said transaction request, and upon completing execution of said transaction request, said master interpreter deleting said transaction interpreter and said procedures and said application specific parameters stored in said temporary location in said memory; and vi) if while executing said transaction request, said transaction interpreter requires access to application specific parameters not stored in said temporary location in said memory, said transaction interpreter searching said master interpreter and said pristine interpreter for said application specific parameters and upon locating said application specific parameters loading said application specific parameters into said temporary location in said memory, and continuing with step (v).
Claim 7
Dependent Claim 30 words
The method in accordance with claim 4 , wherein said time period T 1 is not less than said time period T 2 and said time period T 3 .
Claim 8
Dependent Claim 23 words
The method in accordance with claim 4 , wherein said time period T 2 is greater than said time period T 3 .
Claim 9
Dependent Claim 27 words
The method in accordance with claim 4 , further comprising the step of transmitting a number of results to said other computer systems over said network medium.
Claim 10
Dependent Claim 24 words
The method in accordance with claim 4 , wherein said time period, T 1 , extends for the processing of a plurality of transactions.
Claim 11
Dependent Claim 24 words
The method in accordance with claim 4 , wherein said time period, T 2 , extends for the processing of a plurality of transactions.
Claim 12
Dependent Claim 23 words
The method in accordance with claim 4 , wherein said time period, T 3 , extends for the processing of a single transaction.
Claim 13
Dependent Claim 28 words
The method in accordance with claim 4 , wherein upon completing execution of said transaction, said transaction interpreter sending an indication of said completion to said computer system.
Claim 14
Dependent Claim 29 words
The method in accordance with claim 4 , wherein upon completing execution of said transaction, said transaction interpreter sending a resulting output of said transaction to said computer system.
Claim 15
Dependent Claim 32 words
The method in accordance with claim 4 , wherein a maximum number of said pristine interpreters, maintained in said memory and formed by said master interpreter, corresponds to a pre-determined fixed value.
Claim 16
Dependent Claim 32 words
The method in accordance with claim 4 , wherein a maximum number of said pristine interpreters, maintained in said memory and formed by said master interpreter, corresponds to a dynamically determined value.
Claim 17
Dependent Claim 43 words
The method in accordance with claim 4 , wherein access to application parameters not stored in said temporary location in said memory, as described in step (vi), is unsuccessful, said transaction interpreter issuing an indication of an error condition to said computer system.
Claim 18
Independent Claim 149 words
A system for processing a plurality of transactions in a web server, comprising: A) a master interpreter that maintains a set of global procedures in a memory for said plurality of transactions and that determines a set of application specific parameters required to process a transaction received by said web server; B) a pristine interpreter communicatively coupled to said master interpreter, wherein said pristine interpreter corresponds to said set of application specific parameters, and wherein said pristine interpreter maintains said application specific parameters in said memory for said plurality of transactions; and C) a transaction interpreter communicatively coupled to said master interpreter, wherein said transaction interpreter accesses a subset of said global procedures maintained by said master interpreter and accesses a subset of said application specific parameters maintained by said pristine interpreters, and wherein said transaction interpreter is maintained in said memory for the processing of a single transaction.
Claim 19
Independent Claim 149 words
A system for processing a plurality of transactions in a web server, comprising: A) a master interpreter that maintains a set of global procedures in a memory for said plurality of transactions and that determines a set of application specific parameters required to process a transaction received by said web server; B) a pristine interpreter communicatively coupled to said master interpreter, wherein said pristine interpreter corresponds to said set of application specific parameters, and wherein said pristine interpreter maintains said application specific parameters in said memory for said plurality of transactions; and C) a transaction interpreter communicatively coupled to said master interpreter, wherein said transaction interpreter accesses a subset of said global procedures maintained by said master interpreter and accesses a subset of said application specific parameters maintained by said pristine interpreters, and wherein said transaction interpreter is maintained in said memory for the processing of a single transaction.
Claim 20
Dependent Claim 23 words
The system in accordance with claim 16 , wherein said web server includes a computer system communicatively coupled to a local area network.
Claim 21
Dependent Claim 21 words
The system in accordance with claim 16 , wherein said web server includes a computer system communicative coupled to an Intranet.
Claim 22
Dependent Claim 25 words
The system in accordance with claim 16 , wherein said master interpreter, said pristine interpreter, and said transaction interpreter operate in a real-time mode environment.
Claim 23
Dependent Claim 24 words
The system in accordance with claim 16 , wherein said master interpreter, said pristine interpreter, and said transaction interpreter operate in a batch mode.
Claim 24
Dependent Claim 98 words
The system in accordance with claim 16 , wherein: said transaction interpreter A) stores said subset of global procedures and said subset of application specific parameters in said memory, B) executes said transaction using said subset of stored global procedures and said subset of stored application specific parameters, and C) returns a number of results from executing said transaction to said web server; and upon completion of said transaction and return of said results, said master interpreter deletes said subset of global procedures and said subset of application specific parameters stored by said transaction interpreter in said memory.
Claim 25
Dependent Claim 70 words
The system in accordance with claim 16 , wherein said web server includes a computer apparatus comprising: A) at least one central processing unit; B) a memory coupled to said central processing unit; C) a number of data sources coupled to said central processing unit and said memory; and D) a network interface apparatus providing coupling between said web server and a plural off web clients over a network medium.
Claim 26
Dependent Claim 90 words
The system in accordance with claim 16 , wherein said master interpreter unsuccessfully searches each of said pristine interpreters to locate said application specific parameters required for said transaction and wherein said master interpreter A) locates said application specific parameters from a data source communicatively coupled to said web server, B) forms a new pristine interpreter, C) stores said application specific parameters in said new pristine interpreter, D) copies said subset of application specific parameters to said transaction interpreter, and E) invokes execution of said transaction by said transaction interpreter.
Claim 27
Dependent Claim 32 words
The system in accordance with claim 23 , wherein a maximum number of said pristine interpreters, maintained in said memory and formed by said master interpreter, corresponds to a dynamically determined value.
Claim 28
Independent Claim 173 words
A system for processing a transaction in an interpreted language execution environment, comprising a master interpreter, responsive to a transaction request message received by a computer system, and wherein A) said master interpreter determines that an application program comprising a number of application variables and application procedures is needed to process said transaction, said master interpreter searches for a pristine interpreter including said application program, and if said pristine interpreter does not exist, said master interpreter forms a new pristine interpreter, and said master interpreter copies said application program from a data source, communicatively coupled with said master interpreter, to said new pristine interpreter; and B) said master interpreter forms a transaction interpreter to execute said transaction, wherein said master interpreter copies a number of said application variables and a number of said application procedures required to process said transaction to said transaction interpreter; and C) wherein said transaction interpreter operates on said application variables and said application procedures, and upon executing said transaction to completion, said master interpreter deletes said transaction interpreter.
Claim 29
Independent Claim 173 words
A system for processing a transaction in an interpreted language execution environment, comprising a master interpreter, responsive to a transaction request message received by a computer system, and wherein A) said master interpreter determines that an application program comprising a number of application variables and application procedures is needed to process said transaction, said master interpreter searches for a pristine interpreter including said application program, and if said pristine interpreter does not exist, said master interpreter forms a new pristine interpreter, and said master interpreter copies said application program from a data source, communicatively coupled with said master interpreter, to said new pristine interpreter; and B) said master interpreter forms a transaction interpreter to execute said transaction, wherein said master interpreter copies a number of said application variables and a number of said application procedures required to process said transaction to said transaction interpreter; and C) wherein said transaction interpreter operates on said application variables and said application procedures, and upon executing said transaction to completion, said master interpreter deletes said transaction interpreter.
Claim 30
Dependent Claim 29 words
The system in accordance with claim 25 , wherein said master interpreter, said pristine interpreter, said transaction interpreter, and said transaction request message are formed in said computer system.
Claim 31
Dependent Claim 179 words
A computer program product having computer executable code stored on a computer readable medium, said computer program product comprising: (A) a first code portion for establishing a master interpreter that maintains a set of global procedures in a memory during the processing of a plurality of transactions and that determines a set of application specific parameters required to process a transaction received by a web server; (B) a second code portion for establishing a pristine interpreter communicative coupled with said master interpreter, wherein said pristine interpreter corresponds to said set of application specific parameters, and wherein said pristine interpreter maintains said application specific parameters in said memory during the processing of said plurality of transactions; and C) a third code portion for establishing a transaction interpreter communicatively coupled with said master interpreter, wherein said transaction interpreter accesses a subset of said global procedures maintained by said master interpreter and accesses a subset of said application specific parameters maintained by said pristine interpreters, and wherein said transaction interpreter is maintained in said memory during the processing of a single transaction.
Claim 32
Dependent Claim 179 words
A computer program product having computer executable code stored on a computer readable medium, said computer program product comprising: (A) a first code portion for establishing a master interpreter that maintains a set of global procedures in a memory during the processing of a plurality of transactions and that determines a set of application specific parameters required to process a transaction received by a web server; (B) a second code portion for establishing a pristine interpreter communicative coupled with said master interpreter, wherein said pristine interpreter corresponds to said set of application specific parameters, and wherein said pristine interpreter maintains said application specific parameters in said memory during the processing of said plurality of transactions; and C) a third code portion for establishing a transaction interpreter communicatively coupled with said master interpreter, wherein said transaction interpreter accesses a subset of said global procedures maintained by said master interpreter and accesses a subset of said application specific parameters maintained by said pristine interpreters, and wherein said transaction interpreter is maintained in said memory during the processing of a single transaction.
Claim 33
Dependent Claim 184 words
A computer program product having computer executable code accessible over a communication link for storage on a computer readable medium, said computer program product comprising: A) a first code portion for establishing a master interpreter that maintains a set of global procedures in a memory during the processing of a plurality of transactions and determines a set of application specific parameters required to process a transaction received by a web server; B) a second code portion for establishing a pristine interpreter communicate coupled with said master interpreter, wherein said pristine interpreter corresponds to said set of application specific parameters, and wherein said pristine interpreter maintains said application specific parameters in said memory during the processing of said plurality of transactions; and C) a third code portion for establishing a transaction interpreter communicatively coupled with said master interpreter, wherein said transaction interpreter accesses a subset of said global procedures maintained by said master interpreter and accesses a subset of said application specific parameters maintained by said pristine interpreters, and wherein said transaction interpreter is maintained in said memory during the processing of a single transaction.
Claim 34
Dependent Claim 184 words
A computer program product having computer executable code accessible over a communication link for storage on a computer readable medium, said computer program product comprising: A) a first code portion for establishing a master interpreter that maintains a set of global procedures in a memory during the processing of a plurality of transactions and determines a set of application specific parameters required to process a transaction received by a web server; B) a second code portion for establishing a pristine interpreter communicate coupled with said master interpreter, wherein said pristine interpreter corresponds to said set of application specific parameters, and wherein said pristine interpreter maintains said application specific parameters in said memory during the processing of said plurality of transactions; and C) a third code portion for establishing a transaction interpreter communicatively coupled with said master interpreter, wherein said transaction interpreter accesses a subset of said global procedures maintained by said master interpreter and accesses a subset of said application specific parameters maintained by said pristine interpreters, and wherein said transaction interpreter is maintained in said memory during the processing of a single transaction.

References Cited (Backward Citations)

US5500881A Cited
US5715453A Cited
US5881219A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-05-21 2004-11-20 2005-05-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-05-21 2008-11-20 2009-05-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-05-21 2012-11-20 2013-05-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag