Method of SOA performance tuning
AssigneeOracle International Corporation
InventorsBo Stern, Dmitry Kocherginsky
Life of this patent
Estimating the term…
Abstract
Systems and methods of SOA performance tuning are provided. In accordance with an embodiment, one such method can comprise monitoring a plurality of processing stages, calculating a processing speed for each of the processing stages, and tuning a slowest processing stage of the plurality of processing stages.
Claims15
A method of performance tuning processing stages in a computer system, the method comprising:
- monitoring a plurality of processing stages;
- calculating a processing speed for each of the processing stages;
- and
- tuning a slowest processing stage of the plurality of processing stages, wherein tuning the slowest processing stage of the plurality of processing stages comprises:
- calculating a new number of threads to be allocated to the slowest processing stage by dividing the processing speed for a fastest processing stage by a thread rate for the slowest processing stage;
- and
- allocating the new number of threads to the slowest processing stage,
- wherein monitoring the plurality of processing stages comprises:
- determining a thread rate for each processing stage, wherein the thread rate for each processing stage is a number of messages which can be processed by a thread in a specified time period;
- and
- determining a number of threads enabled for each processing stage, and
- wherein the processing speed is a function of the determined thread rate.
A system for performance tuning processing stages, comprising:
- a computer, including a computer readable medium and processor;
- a process, executing on the computer, wherein the process comprises a plurality of processing stages;
- an automatic tuning module, wherein the automatic tuning module is operable to monitor the plurality of processing stages;
- calculate a processing speed for each of the processing stages;
- and
- automatically tune a slowest processing stage of the plurality of processing stages by:
- calculating a new number of threads to be allocated to the slowest processing stage by dividing the processing speed for a fastest processing stage by a thread rate for the slowest processing stage;
- and
- allocating the new number of threads to the slowest processing stage,
- wherein to monitor the plurality of processing stages, the automatic tuning module is further operable to:
- determine a thread rate for each processing stage, wherein the thread rate for each processing stage is a number of messages which can be processed by a thread in a specified time period;
- and
- determine a number of threads enabled for each processing stage, and
- wherein the processing speed is a function of the determined thread rate.
A non-transitory computer readable storage medium including instructions stored thereon which, when executed by a processor, cause the processor to perform the steps of:
- monitoring a plurality of processing stages;
- calculating a processing speed for each of the processing stages;
- and
- tuning a slowest processing stage of the plurality of processing stages by
- calculating a new number of threads to be allocated to the slowest processing stage by dividing the processing speed for a fastest processing stage by the thread rate for the slowest processing stage;
- and
- allocating the new number of threads to the slowest processing stage,
- wherein monitoring the plurality of processing stages comprises:
- determining a thread rate for each processing stage, wherein the thread rate for each processing stage is a number of messages which can be processed by a thread in a specified time period;
- and
- determining a number of threads enabled for each processing stage, and
- wherein the processing speed is a function of the determined thread rate.
Dependencies are inferred from the claim text.