CN103544103A - Method and system for test, simulation and concurrence of software performance - Google Patents

Method and system for test, simulation and concurrence of software performance Download PDF

Info

Publication number
CN103544103A
CN103544103A CN201310393147.7A CN201310393147A CN103544103A CN 103544103 A CN103544103 A CN 103544103A CN 201310393147 A CN201310393147 A CN 201310393147A CN 103544103 A CN103544103 A CN 103544103A
Authority
CN
China
Prior art keywords
user
test
module
request
concurrent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201310393147.7A
Other languages
Chinese (zh)
Inventor
衣安平
杨光宇
孙一铭
刘增
刘初阳
殷炳玉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yantai Zhong Ke Network Technical Institute
Original Assignee
Yantai Zhong Ke Network Technical Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yantai Zhong Ke Network Technical Institute filed Critical Yantai Zhong Ke Network Technical Institute
Priority to CN201310393147.7A priority Critical patent/CN103544103A/en
Publication of CN103544103A publication Critical patent/CN103544103A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

The invention relates to a method for test, simulation and concurrence of software performance. The method for the test, simulation and concurrence of the software performance specifically comprises the steps that (1) user configuration information which is input by a user is read, (2) a user requirement structural body is stored in a shared memory module and mapping is established, (3) service requests of concurrent users are received and at least one test progress is established according to the number of the concurrent users and the user requirement structural body, (4) test threads are established, (5) each test thread is used for processing the service request of a corresponding user and is stopped when a stopping condition is met, (6) operation is ended and the test threads in each test process are stopped after operation of the test threads in each process is ended in sequence, (7) relevant data of each service are stored, analyzed and counted, and then all the processes are finished. According to the method and system for the test, simulation and concurrence of the software performance, the fact that how to simulate user concurrence is explained, bottlenecks are prevented from occurring, and the purpose of a high-concurrency scene by means of a small number of hardware sources is achieved; concurrency stability is guaranteed; support to different user services is achieved; help is provided for positioning and development cycle shorting.

Description

A kind of software performance test is simulated concurrent method and system
Technical field
The present invention relates to a kind of software performance test and simulate concurrent method and system, belong to field of computer technology.
Background technology
For software product performance evaluating forwarding method, wherein classical scene is: concurrent user asks scene, and for example 5000 users submit call charging service to simultaneously.Wherein how to use few computing machine of trying one's best, steadily, analog subscriber operation behavior becomes an industry difficult problem accurately.
Computer hardware configuration is more and more higher, can be more and more for the resource of programme distribution, and test process is the least unit that can distribute hardware resource, many test processes many hardware resources that is assigned to of can trying one's best, simulate under high user concurrent scene many test processes advantage that possesses skills.
Operating system is moved under memory protect pattern, and test process has independently logical memory space, between many test processes are mutual, can not directly access.And existing free performance testing tool is all used single test process framework.Cannot fully apply for hardware resource, the number of concurrent of unit analog subscriber easily reaches the upper limit, and high when concurrent CPU time sheet distribute not enoughly, running precision is low.
This invention adopts many test processes mode, and has solved the problem of communication between test process, is used for analog subscriber being distributed as.The LoadRunner, the WebLoad that similarly have with it windows platform.
Summary of the invention
Technical matters to be solved by this invention is, for business software in prior art: LoadRunner, WebLoad, but it all belongs to business software, and code and framework belong to secret of the trade, underground, expensive, and can not under linux system, move; Open source software: be similar to HttpLoad and only adopt single test process list test thread framework to belong to false concurrent, its model is simple, accuracy rate is low, cannot guarantee the deficiency of the accurate transmission of customer service, provide a kind of computer program of having annotated how to realize analog subscriber concurrent software performance test simulation forwarding method.
The technical scheme that the present invention solves the problems of the technologies described above is as follows: a kind of software performance test simulation forwarding method, specifically comprise the following steps:
Step 1: read the user configuration information that modular converter reads user's input, be converted to the discernible user's request structure of computing machine;
Step 2: shared drive module stores user's request structure;
Step 3: request receiving module receives at least one concurrent user's service request, according to concurrent user's quantity and user's request structure, create at least one test process, make the concurrent user of the corresponding predetermined number of each test process, and set up mapping, make all test process mapping user's request structures;
Step 4: test thread creation module creates a plurality of test threads in each test process, makes the corresponding test thread of each concurrent user;
Step 5: Service Processing Module makes each test thread process separately a user's service request, records each business return data, when number of run reaches pre-determined number or reaches Preset Time working time, shared drive module is put and is stopped zone bit;
Step 6: shared drive module detected and put and stop zone bit, exit successively after testing thread operation in each test process;
Step 7: analysis module storage service return data, analyze and add up every service related data, finish.
The invention has the beneficial effects as follows: concurrent framework and LoadRunner are suitable aspect stability and accuracy; Used many test processes to test thread framework, reasonable distribution resource, guarantees that each test process pressure load is reasonable more, has avoided certain test process to occur losing efficacy, the impact on overall load test result; Many test processes framework has guaranteed that workload generator can apply for enough system resource, avoids the impact on concurrent framework of resource deadlock that the competition of many test threads causes; Many test thread frameworks have guaranteed that each customer service operates in independently in context, has avoided response time interference each other between customer service in HTTPLOAD framework; Stop sending after order receiving, framework is not simply to abandon the customer service request that sending, but waits for that the service request sending all returns, and after having added up, then exits concurrent framework, has improved data statistics precision.
On the basis of technique scheme, the present invention can also do following improvement.
Further, in described step 3, every 50 concurrent users create a test process, test process of startup that concurrent user's less than is 50; The test process that concurrent module starts is counted the quantity of P and is calculated by following formula:
Figure BDA0000376159390000031
Wherein P represents test process quantity, and N represents concurrent user's quantity.
Further, described step 5 specifically comprises the following steps:
Step 5.1: Service Processing Module makes each test thread process separately a user's service request, reads user's request structure;
Step 5.2: the library file of invoke user business, initialization business function;
Step 5.3: carry out the business function of user's request, and record operation result;
Step 5.4: judgement operational mode is time digital modeling or temporal mode; If inferior digital modeling carry out step 5.5; Otherwise, carry out step 5.8;
Step 5.5: number of run is saved in shared drive module, and the number of run in real-time update shared drive module;
Step 5.6: judge that whether number of run equals to be kept in advance the preset times in shared drive module, if so, carry out step 5.7; Otherwise, jump to step 5.3;
Step 5.7: winding-up function, send business return data to analysis module, exit test thread, and discharge operation required memory;
Step 5.8: judge and whether equal to be kept in advance the Preset Time in shared drive module working time, if so, carry out step 5.7; Otherwise, jump to step 5.3.
Further, described user configuration information comprises test macro address information, number of users information, working time and database information.
Adopt the beneficial effect of above-mentioned further scheme to be, user configuration information, identifies user's request, analog subscriber business conduct, controls concurrent running and control concurrent exiting for each test process.
Further, in the process of described step 5 processing user's service request, real-time storage user's business return data, for the statistical study of real-time exhibition and step 7.
Further, in described step 6, test thread operation is complete for each while exiting successively, in real-time update shared drive module, exits test number of threads, when exiting the quantity of test thread and equal to bring into operation the quantity of test thread, just carry out step 8.
Adopt the beneficial effect of above-mentioned further scheme to be, guaranteed that each request results is counted on, improved accuracy.
Another technical matters to be solved by this invention is, for deficiency of the prior art, to provide a kind of computer program of having annotated how to realize the concurrent software performance test simulation concurrent system of analog subscriber.
The technical scheme that the present invention solves the problems of the technologies described above is as follows: a kind of software performance test simulation concurrent system, comprises and read modular converter, shared drive module, request receiving module, test thread creation module, Service Processing Module and analysis module;
The described modular converter that reads, for reading the user configuration information of user's input, is converted to the discernible user's request structure of computing machine, and described user's request structure is sent to shared drive module;
Described shared drive module receives and stores user's request structure;
Described request receiver module is for receiving at least one concurrent user's service request, according to concurrent user's quantity and user's request structure, create at least one test process, make the concurrent user of the corresponding predetermined number of each test process, and set up mapping, make all test process mapping user's request structures;
Described test thread creation module, for creating a plurality of test threads at each test process, makes the corresponding test thread of each concurrent user;
Described Service Processing Module, for making each test thread process separately a user's service request, records each business return data, when number of run reaches pre-determined number or reaches Preset Time working time, shared drive module is put and is stopped zone bit; Service Processing Module detects shared drive module and puts and stop zone bit, exits successively after testing thread operation in each test process;
Every service related data is analyzed and added up to described analysis module, for storage service return data.
The invention has the beneficial effects as follows: the present invention has announced a kind of software performance test simulation forwarding method, how analog subscriber is concurrent to have annotated computer program, rely on the enough resources of multi-process application to carry out rational management, prevent bottleneck, reach and utilize a small amount of high concurrent scene of hardware resource simulation; Communication between multi-process, controls escape mechanism, guarantees that each result that sends is all counted on, and improves statistics precision.Control the time interval between twice customer service request, guarantee concurrent stability.Running environment is not limited to windows platform.User, by development library file, can realize the support to different user business; Rely on this models of concurrency, developer and user can obtain approaching most the performance performance of real project under different scenes, by analysis user business datum and tested server resource consumption, be can be orientation problem and are shortened the construction cycle and offer help.
On the basis of technique scheme, the present invention can also do following improvement.
Further, described request receiver module creates a test process by every 50 concurrent users, test process of startup that concurrent user's less than is 50; The test process that concurrent module starts is counted the quantity of P and is calculated by following formula:
Figure BDA0000376159390000051
Wherein P represents test process quantity, and N represents concurrent user's quantity.
Further, described Service Processing Module specifically comprises mode decision module, initialization module, business execution module and number of times logging modle and time judgment module;
Described mode decision module is used for reading user's request structure, and judgement operational mode is time digital modeling or temporal mode, and when operational mode is inferior digital modeling, business execution module is connected with number of times logging modle data; When operational mode is temporal mode, business execution module is connected with time judgment module data;
Described initialization module is for the library file of invoke user business, initialization business function;
The business function that described business execution module is asked for carrying out user, and record operation result, and operation result is sent to analysis module;
Described number of times logging modle is carried out the number of times of the business function of user's request for record traffic execution module, and number of run is saved in shared drive module, and the number of run in real-time update shared drive module; When number of run equals to be kept in advance the preset times in shared drive module, winding-up function, exits test thread, and discharges operation required memory; Otherwise, return to the request that continues to carry out and arrive business execution module;
Described time judgment module is for judging whether equal to be kept in advance the Preset Time of shared drive module working time, and if so, winding-up function, exits test thread, and discharges operation required memory; Otherwise, return to the request that continues to carry out and arrive business execution module.
Further, described user configuration information comprises test macro address information, number of users information, working time and database information.
Adopt the beneficial effect of above-mentioned further scheme to be, user configuration information, identifies user's request, analog subscriber business conduct, controls concurrent running and control concurrent exiting for each test process.
Further, in the process of described Service Processing Module processing user's service request, implement to show and store user's business return data, for real-time exhibition and statistical study.
Further, described Service Processing Module is processed in the process of business, each is tested when thread operation is complete to be exited successively, in real-time update shared drive module, exit test number of threads, when exiting the quantity of test thread and equal to bring into operation the quantity of test thread, just send instruction and make analysis module analysis and add up every service related data.
Adopt the beneficial effect of above-mentioned further scheme to be, guaranteed that each request results is counted on, improved accuracy.
The present invention has announced a kind of software performance test simulation forwarding method, and how analog subscriber is concurrent to have annotated computer program;
Rely on the resource that the application of many test processes is enough to carry out rational management, prevent bottleneck, reach and utilize a small amount of high concurrent scene of hardware resource simulation;
Communication between many test processes, controls escape mechanism, guarantees that each result that sends is all counted on, and improves statistics precision.
Control the time interval between twice customer service request, guarantee concurrent stability.
Running environment is not limited to windows platform.
User, by development library file, can realize the support to different user business;
Rely on this models of concurrency, developer and user can obtain approaching most the performance performance of real project under different scenes, by analysis user business datum and tested server resource consumption, be can be orientation problem and are shortened the construction cycle and offer help.
The present invention by and forwarding method centered by, use many test processes to test the behavior of thread emulation customer service is technological means more, by space, change the mode of time, guarantee the operation of models of concurrency accurate stable, for developer and client provide, approach real user behavior emulation.
Step 1. reads user's configuration: user according to demand, confirms to need test macro address, concurrent user number, working time, database information, generating configuration file.Program reads user configuration information, and for storing, the structure of computing machine identification, identifies user's request, analog subscriber business conduct, controls concurrent running and control concurrent exiting for each test process.
Figure BDA0000376159390000071
Figure BDA0000376159390000081
Step 2. operating system is under memory protect mechanism; each test process has independently logical memory space; each test process cannot be accessed other test process data; and this models of concurrency is tested threading based on many test processes more; the restriction of operating system, causes each test process cannot learn other test process information.By realizing shared drive by shining upon same ordinary file between test process, the user's request structure that storing step 1 obtains, guarantees that each test process can read unified user's request; During operation, can know other test process running statuses, its uniqueness can be used to carry out the load balancing of step 3 test process; Arrive after working time, can store the whole end signals of the issued all requests of test process, guarantee data statistics precision.
Step 3. allocation for test test process: create test process, each test process read step 2 is stored in shared drive, the user's request structure being generated by step 1, according to user concurrent number, equally loaded is to each test process, every 50 concurrent users create a test process (less than 50 also starts a new test process), and each group concurrent user is controlled by a test process.The number of concurrent of supposing user's appointment is N, and the test process that concurrent module can start is counted P and can be calculated by following formula:
Figure BDA0000376159390000091
Prevent the overweight accuracy that affects customer service of certain test process load.
Step 4. allocation for test test thread: create test thread in the test process of step 3., guaranteeing that each Virtual User business all has independently tests thread, independently in sheet and context, moving working time, guaranteeing that computerese is annotated really and accurately and forwarding method.In test thread, according to user, configure the business conduct that invoke user need be simulated.
Step 5. is carried out business function: the present invention can provide time and two kinds of operating mechanisms of number of times, and under time operational mode, timer can play the operation stop position in shared drive after arriving working time; Under number of times operational mode, after each service request completes, all can upgrade shared drive operation number, when equaling user's configured number, the operation stop position in shared drive can be risen number of run.
Each tests thread by calling the library file of packaged customer service, realizes the traffic pressure of tested end is sent.By developing different customer service library files, can realize the flexible support to customer service, totally 3 main functions in library file, initialization function only calls once, for initialization before operation, moves well resource requirement; Business function function circular flow within the cycle of operation, realizes the simulation to Virtual User; After operation being detected and stopping sign and be set to, test when thread exits and can carry out end function, discharge operation resource requirement.
The user service data of step 6. real-time exhibition storage: the user service data return data of analyzing stored, for real-time exhibition and statistical study.
Step 7. exits concurrent test process, arrive after end of run condition, put the zone bit that stops of shared drive, after testing thread operation in each test process, exit successively, each test thread upgrades shared drive while exiting and exits test number of threads, when exiting test number of threads and equal operation test number of threads, operating procedure 8.Guaranteed that each request results is counted on, improved accuracy.
The business return data of step 8. statistics storage: add up successfully, every data of the index such as failure, response time, clicking rate per second, for user and developer provide accurate detailed statistical data.
The load balancing of concurrent framework:
By many test processes, can apply for the mechanism of more hardware resources, adopt many test processes framework simulation Virtual User, Virtual User equally loaded is arrived to each test process, every 50 concurrent users one create a test process (less than 50 also starts a new test process), and each group concurrent user is controlled by a test process.The number of concurrent of supposing user's appointment is N, and the test process that concurrent module can start is counted P and can be calculated by following formula:
Figure BDA0000376159390000101
The method prevents the overweight accuracy that affects customer service of certain test process load.
Many test thread analog subscriber service request:
Many test threads guarantee that customer service operates in independent context, avoid producing and disturb, and guarantee models of concurrency precision.
Carry out business function: the present invention can provide time and two kinds of operating mechanisms of number of times, under time operational mode, timer can play the operation stop position in shared drive after arriving working time; Under number of times operational mode, after each service request completes, all can upgrade shared drive operation number, when equaling user's configured number, the operation stop position in shared drive can be risen number of run.
Each tests thread by calling the library file of packaged customer service, realizes the traffic pressure of tested end is sent.By developing different customer service library files, can realize the flexible support to customer service, totally 3 main functions in library file, initialization function only calls once, for initialization before operation, moves well resource requirement; Business function function circular flow within the cycle of operation, realizes the simulation to Virtual User; After operation being detected and stopping sign and be set to, test when thread exits and can carry out end function, discharge operation resource requirement.
Escape mechanism:
After working time or number of run arrive, after waiting for that when exiting the service request having created completes, exit again test thread, when test thread is when exit, can upgrade time number variable that exits of shared drive, when exiting number of times and equal to create quantity, just carry out next step data statistics, the method has guaranteed to send request with server and has received the consistent of request, has guaranteed that each request can obtain conclusion, has improved the accuracy of data conclusions.
Accompanying drawing explanation
Fig. 1 is that a kind of software performance test described in the specific embodiment of the invention 1 is simulated concurrent method flow diagram;
Fig. 2 is business processing flow figure in a kind of software performance test simulation described in the specific embodiment of the invention 1 forwarding method;
Fig. 3 is a kind of software performance test simulation concurrent system block diagram described in the specific embodiment of the invention 1;
Fig. 4 is Service Processing Module block diagram in a kind of software performance test simulation concurrent system described in the specific embodiment of the invention 1.
In accompanying drawing, the list of parts of each label representative is as follows:
1, read modular converter, 2, shared drive module, 3, request receiving module, 4, test thread creation module, 5, Service Processing Module, 6, analysis module, 51, mode decision module, 52, initialization module, 53, business execution module, 54, number of times logging modle, 55, time judgment module.
Embodiment
Below in conjunction with accompanying drawing, principle of the present invention and feature are described, example, only for explaining the present invention, is not intended to limit scope of the present invention.
As shown in Figure 1, for a kind of software performance test described in the specific embodiment of the invention 1, simulate concurrent method flow diagram, specifically comprise the following steps:
Step 1: read the user configuration information that modular converter reads user's input, be converted to the discernible user's request structure of computing machine;
Step 2: shared drive module stores user's request structure;
Step 3: request receiving module receives at least one concurrent user's service request, according to concurrent user's quantity and user's request structure, create at least one test process, make the concurrent user of the corresponding predetermined number of each test process, and set up mapping, make all test process mapping user's request structures;
Step 4: test thread creation module creates a plurality of test threads in each test process, makes the corresponding test thread of each concurrent user;
Step 5: Service Processing Module makes each test thread process separately a user's service request, records each business return data, when number of run reaches pre-determined number or reaches Preset Time working time, shared drive module is put and is stopped zone bit;
Step 6: shared drive module detected and put and stop zone bit, exit successively after testing thread operation in each test process;
Step 7: analysis module storage service return data, analyze and add up every service related data, finish.
In described step 3, every 50 concurrent users create a test process, test process of startup that concurrent user's less than is 50; The test process that concurrent module starts is counted the quantity of P and is calculated by following formula:
Figure BDA0000376159390000121
Wherein P represents test process quantity, and N represents concurrent user's quantity.
Described step 5 specifically comprises the following steps:
Step 5.1: Service Processing Module makes each test thread process separately a user's service request, reads user's request structure;
Step 5.2: the library file of invoke user business, initialization business function;
Step 5.3: carry out the business function of user's request, and record operation result;
Step 5.4: judgement operational mode is time digital modeling or temporal mode; If inferior digital modeling carry out step 5.5; Otherwise, carry out step 5.8;
Step 5.5: number of run is saved in shared drive module, and the number of run in real-time update shared drive module;
Step 5.6: judge that whether number of run equals to be kept in advance the preset times in shared drive module, if so, carry out step 5.7; Otherwise, jump to step 5.3;
Step 5.7: winding-up function, send business return data to analysis module, exit test thread, and discharge operation required memory;
Step 5.8: judge and whether equal to be kept in advance the Preset Time in shared drive module working time, if so, carry out step 5.7; Otherwise, jump to step 5.3.
Described user configuration information comprises test macro address information, number of users information, working time and database information.
In the process of described step 5 processing user's service request, real-time storage user's business return data, for the statistical study of real-time exhibition and step 7.
In described step 6, test thread operation is complete for each while exiting successively, in real-time update shared drive module, exits test number of threads, when exiting the quantity of test thread and equal to bring into operation the quantity of test thread, just carry out step 8.
As shown in Figure 3, a kind of software performance test simulation concurrent system block diagram for described in the specific embodiment of the invention 1, comprises and reads modular converter 1, shared drive module 2, request receiving module 3, test thread creation module 4, Service Processing Module 5 and analysis module 6;
The described modular converter 1 that reads, for reading the user configuration information of user's input, is converted to the discernible user's request structure of computing machine, and described user's request structure is sent to shared drive module 2;
Described shared drive module 2 receives and stores user's request structure;
Described request receiver module 3 is for receiving at least one concurrent user's service request, according to concurrent user's quantity and user's request structure, create at least one test process, make the concurrent user of the corresponding predetermined number of each test process, and set up mapping, make all test process mapping user's request structures;
Described test thread creation module 4, for create a plurality of test threads at each test process, makes the corresponding test thread of each concurrent user;
Described Service Processing Module 5, for making each test thread process separately a user's service request, records each business return data, when number of run reaches pre-determined number or reaches Preset Time working time, shared drive module is put and is stopped zone bit; Service Processing Module 5 detects shared drive module and puts and stop zone bit, exits successively after testing thread operation in each test process;
Every service related data is analyzed and added up to described analysis module 6, for storage service return data.
Described request receiver module 3 creates a test process by every 50 concurrent users, test process of startup that concurrent user's less than is 50; The test process that concurrent module starts is counted the quantity of P and is calculated by following formula:
Figure BDA0000376159390000141
Wherein P represents test process quantity, and N represents concurrent user's quantity.
As shown in Figure 4, described Service Processing Module 5 specifically comprises mode decision module 51, initialization module 52, business execution module 53 and number of times logging modle 54 and time judgment module 55;
Described mode decision module 51 is for reading user's request structure, and judgement operational mode is time digital modeling or temporal mode, and when operational mode is inferior digital modeling, business execution module 53 is connected with number of times logging modle 54 data; When operational mode is temporal mode, business execution module 53 is connected with time judgment module 55 data;
Described initialization module 52 is for the library file of invoke user business, initialization business function;
The business function that described business execution module 53 is asked for carrying out user, and record operation result, and operation result is sent to analysis module 6;
Described number of times logging modle 54 is carried out the number of times of the business function of user's request for record traffic execution module, and number of run is saved in shared drive module 2, and the number of run in real-time update shared drive module 2; When number of run equals to be kept in advance the preset times in shared drive module 2, winding-up function, exits test thread, and discharges operation required memory; Otherwise, return to the request that continues to carry out and arrive business execution module 53;
Whether described time judgment module 55 equals to be kept in advance the Preset Time of shared drive module 2 working time for judging, if so, winding-up function, exits test thread, and discharges operation required memory; Otherwise, return to the request that continues to carry out and arrive business execution module 53.
Described user configuration information comprises test macro address information, number of users information, working time and database information.
Further, in the process of described Service Processing Module processing user's service request, implement to show and store user's business return data, for real-time exhibition and statistical study.
Described Service Processing Module 5 is processed in the process of business, each is tested when thread operation is complete to be exited successively, in real-time update shared drive module, exit test number of threads, when exiting the quantity of test thread and equal to bring into operation the quantity of test thread, just send instruction and make analysis module analysis and add up every service related data.
The foregoing is only preferred embodiment of the present invention, in order to limit the present invention, within the spirit and principles in the present invention not all, any modification of doing, be equal to replacement, improvement etc., within all should being included in protection scope of the present invention.

Claims (10)

1. software performance test simulation a forwarding method, is characterized in that, specifically comprises the following steps:
Step 1: read the user configuration information that modular converter reads user's input, be converted to the discernible user's request structure of computing machine;
Step 2: shared drive module stores user's request structure;
Step 3: request receiving module receives at least one concurrent user's service request, according to concurrent user's quantity and user's request structure, create at least one test process, make the concurrent user of the corresponding predetermined number of each test process, and set up mapping, make all test process mapping user's request structures;
Step 4: test thread creation module creates a plurality of test threads in each test process, makes the corresponding test thread of each concurrent user;
Step 5: Service Processing Module makes each test thread process separately a user's service request, records each business return data, when number of run reaches pre-determined number or reaches Preset Time working time, shared drive module is put and is stopped zone bit;
Step 6: shared drive module detected and put and stop zone bit, exit successively after testing thread operation in each test process;
Step 7: analysis module storage service return data, analyze and add up every service related data, finish.
2. a kind of software performance test simulation according to claim 1 forwarding method, is characterized in that, in described step 3, every 50 concurrent users create a test process, test process of startup that concurrent user's less than is 50; The test process that concurrent module starts is counted the quantity of P and is calculated by following formula:
Figure FDA0000376159380000011
Wherein P represents test process quantity, and N represents concurrent user's quantity.
3. a kind of software performance test simulation according to claim 1 and 2 forwarding method, is characterized in that, described step 5 specifically comprises the following steps:
Step 5.1: Service Processing Module makes each test thread process separately a user's service request, reads user's request structure;
Step 5.2: the library file of invoke user business, initialization business function;
Step 5.3: carry out the business function of user's request, and record operation result;
Step 5.4: judgement operational mode is time digital modeling or temporal mode; If inferior digital modeling carry out step 5.5; Otherwise, carry out step 5.8;
Step 5.5: number of run is saved in shared drive module, and the number of run in real-time update shared drive module;
Step 5.6: judge that whether number of run equals to be kept in advance the preset times in shared drive module, if so, carry out step 5.7; Otherwise, jump to step 5.3;
Step 5.7: winding-up function, send business return data to analysis module, exit test thread, and discharge operation required memory;
Step 5.8: judge and whether equal to be kept in advance the Preset Time in shared drive module working time, if so, carry out step 5.7; Otherwise, jump to step 5.3.
4. a kind of software performance test simulation according to claim 3 forwarding method, is characterized in that, described user configuration information comprises test macro address information, number of users information, working time and database information.
5. a kind of software performance test simulation according to claim 4 forwarding method, is characterized in that, in the process of described step 5 processing user's service request, real-time storage user's business return data, for the statistical study of real-time exhibition and step 7.
6. a kind of software performance test according to claim 5 is simulated and forwarding method, it is characterized in that, in described step 6, each is tested when thread operation is complete to be exited successively, in real-time update shared drive module, exit test number of threads, when exiting the quantity of test thread and equal to bring into operation the quantity of test thread, just carry out step 8.
7. a software performance test simulation concurrent system, comprises and reads modular converter, shared drive module, request receiving module, test thread creation module, Service Processing Module and analysis module;
The described modular converter that reads, for reading the user configuration information of user's input, is converted to the discernible user's request structure of computing machine, and described user's request structure is sent to shared drive module;
Described shared drive module receives and stores user's request structure;
Described request receiver module is for receiving at least one concurrent user's service request, according to concurrent user's quantity and user's request structure, create at least one test process, make the concurrent user of the corresponding predetermined number of each test process, and set up mapping, make all test process mapping user's request structures;
Described test thread creation module, for creating a plurality of test threads at each test process, makes the corresponding test thread of each concurrent user;
Described Service Processing Module, for making each test thread process separately a user's service request, records each business return data, when number of run reaches pre-determined number or reaches Preset Time working time, shared drive module is put and is stopped zone bit; Service Processing Module detects shared drive module and puts and stop zone bit, exits successively after testing thread operation in each test process;
Every service related data is analyzed and added up to described analysis module, for storage service return data.
8. a kind of software performance test simulation concurrent system according to claim 7, is characterized in that, described request receiver module creates a test process by every 50 concurrent users, test process of startup that concurrent user's less than is 50; The test process that concurrent module starts is counted the quantity of P and is calculated by following formula:
Figure FDA0000376159380000031
Wherein P represents test process quantity, and N represents concurrent user's quantity.
9. according to a kind of software performance test simulation forwarding method described in claim 7 or 8, it is characterized in that, described Service Processing Module specifically comprises mode decision module, initialization module, business execution module and number of times logging modle and time judgment module;
Described mode decision module is used for reading user's request structure, and judgement operational mode is time digital modeling or temporal mode, and when operational mode is inferior digital modeling, business execution module is connected with number of times logging modle data; When operational mode is temporal mode, business execution module is connected with time judgment module data;
Described initialization module is for the library file of invoke user business, initialization business function;
The business function that described business execution module is asked for carrying out user, and record operation result, and operation result is sent to analysis module;
Described number of times logging modle is carried out the number of times of the business function of user's request for record traffic execution module, and number of run is saved in shared drive module, and the number of run in real-time update shared drive module; When number of run equals to be kept in advance the preset times in shared drive module, winding-up function, exits test thread, and discharges operation required memory; Otherwise, return to the request that continues to carry out and arrive business execution module;
Described time judgment module is for judging whether equal to be kept in advance the Preset Time of shared drive module working time, and if so, winding-up function, exits test thread, and discharges operation required memory; Otherwise, return to the request that continues to carry out and arrive business execution module.
10. a kind of software performance test simulation according to claim 9 forwarding method, is characterized in that, described user configuration information comprises test macro address information, number of users information, working time and database information;
In the process of described Service Processing Module processing user's service request, implement to show and store user's business return data, for real-time exhibition and statistical study;
Described Service Processing Module is processed in the process of business, each is tested when thread operation is complete to be exited successively, in real-time update shared drive module, exit test number of threads, when exiting the quantity of test thread and equal to bring into operation the quantity of test thread, just send instruction and make analysis module analysis and add up every service related data.
CN201310393147.7A 2013-09-02 2013-09-02 Method and system for test, simulation and concurrence of software performance Pending CN103544103A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310393147.7A CN103544103A (en) 2013-09-02 2013-09-02 Method and system for test, simulation and concurrence of software performance

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310393147.7A CN103544103A (en) 2013-09-02 2013-09-02 Method and system for test, simulation and concurrence of software performance

Publications (1)

Publication Number Publication Date
CN103544103A true CN103544103A (en) 2014-01-29

Family

ID=49967575

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310393147.7A Pending CN103544103A (en) 2013-09-02 2013-09-02 Method and system for test, simulation and concurrence of software performance

Country Status (1)

Country Link
CN (1) CN103544103A (en)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104978261A (en) * 2014-04-03 2015-10-14 腾讯科技(深圳)有限公司 Test method, device and system of application program
CN105224450A (en) * 2014-07-02 2016-01-06 阿里巴巴集团控股有限公司 Concurrent testing method and device
CN105607991A (en) * 2014-11-20 2016-05-25 阿里巴巴集团控股有限公司 Test method and device based on asynchronous threads
CN105607997A (en) * 2015-11-26 2016-05-25 珠海多玩信息技术有限公司 Background service test method, apparatus and system for software product
CN106201881A (en) * 2016-07-12 2016-12-07 桂林电子科技大学 A kind of CSP concurrent system adjustment method based on ASP
CN106502887A (en) * 2016-10-13 2017-03-15 郑州云海信息技术有限公司 A kind of stability test method, test controller and system
CN107666416A (en) * 2017-09-07 2018-02-06 郑州云海信息技术有限公司 A kind of iperf test results decision-making system
CN108108295A (en) * 2018-01-02 2018-06-01 天津同阳科技发展有限公司 Data receiver programmed pressure test method
CN108279973A (en) * 2017-01-05 2018-07-13 阿里巴巴集团控股有限公司 A kind of information statistical method, device and electronic equipment
CN108304286A (en) * 2018-01-17 2018-07-20 杭州当虹科技有限公司 A kind of system and method carrying out automatic test to transcoding server concurrency performance
CN108446210A (en) * 2018-02-07 2018-08-24 平安科技(深圳)有限公司 Measure, storage medium and the server of system performance
CN108512715A (en) * 2017-02-28 2018-09-07 菜鸟智能物流控股有限公司 Load pressure test method of service link and related device
CN109828616A (en) * 2019-01-21 2019-05-31 厦门大学 A kind of parts mix selection method and system of RV retarder
CN110275806A (en) * 2019-06-20 2019-09-24 深圳忆联信息系统有限公司 SSD controller multimode concurrent testing method and device based on Python
CN110661671A (en) * 2018-06-28 2020-01-07 中兴通讯股份有限公司 Service detection method, device and equipment and storage medium
CN111026632A (en) * 2018-10-10 2020-04-17 武汉斗鱼网络科技有限公司 Performance test method, storage medium, electronic device and system
CN111475394A (en) * 2019-01-24 2020-07-31 阿里巴巴集团控股有限公司 Application testing method and device
CN112346849A (en) * 2019-08-09 2021-02-09 北京国双科技有限公司 Method and device for configuring CPU
CN114554532A (en) * 2022-03-09 2022-05-27 武汉烽火技术服务有限公司 5G device high-concurrency simulation method and device
CN116594884A (en) * 2023-05-16 2023-08-15 上海安般信息科技有限公司 Fuzzy test method and device based on concurrent mode

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101576844A (en) * 2008-05-09 2009-11-11 北京世纪拓远软件科技发展有限公司 Method and system for testing software system performances
CN102035697A (en) * 2010-12-31 2011-04-27 中国电子科技集团公司第十五研究所 Concurrent connections performance testing system and method for file system
CN102368721A (en) * 2011-11-25 2012-03-07 中国科学技术大学 Performance testing system and method for MS (Media Server) clustered system
CN102831053A (en) * 2011-06-17 2012-12-19 阿里巴巴集团控股有限公司 Scheduling method and device for test execution
US8347267B2 (en) * 2001-07-27 2013-01-01 Smartesoft, Inc. Automated software testing and validation system
CN102955721A (en) * 2011-08-16 2013-03-06 阿里巴巴集团控股有限公司 Device and method for pressure generation for testing
CN103067214A (en) * 2011-10-19 2013-04-24 阿里巴巴集团控股有限公司 Method, client, server and system used for testing web site performance

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8347267B2 (en) * 2001-07-27 2013-01-01 Smartesoft, Inc. Automated software testing and validation system
CN101576844A (en) * 2008-05-09 2009-11-11 北京世纪拓远软件科技发展有限公司 Method and system for testing software system performances
CN102035697A (en) * 2010-12-31 2011-04-27 中国电子科技集团公司第十五研究所 Concurrent connections performance testing system and method for file system
CN102831053A (en) * 2011-06-17 2012-12-19 阿里巴巴集团控股有限公司 Scheduling method and device for test execution
CN102955721A (en) * 2011-08-16 2013-03-06 阿里巴巴集团控股有限公司 Device and method for pressure generation for testing
CN103067214A (en) * 2011-10-19 2013-04-24 阿里巴巴集团控股有限公司 Method, client, server and system used for testing web site performance
CN102368721A (en) * 2011-11-25 2012-03-07 中国科学技术大学 Performance testing system and method for MS (Media Server) clustered system

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104978261A (en) * 2014-04-03 2015-10-14 腾讯科技(深圳)有限公司 Test method, device and system of application program
CN105224450A (en) * 2014-07-02 2016-01-06 阿里巴巴集团控股有限公司 Concurrent testing method and device
CN105607991A (en) * 2014-11-20 2016-05-25 阿里巴巴集团控股有限公司 Test method and device based on asynchronous threads
CN105607997A (en) * 2015-11-26 2016-05-25 珠海多玩信息技术有限公司 Background service test method, apparatus and system for software product
CN106201881A (en) * 2016-07-12 2016-12-07 桂林电子科技大学 A kind of CSP concurrent system adjustment method based on ASP
CN106201881B (en) * 2016-07-12 2019-02-01 桂林电子科技大学 A kind of CSP concurrent system adjustment method based on ASP
CN106502887A (en) * 2016-10-13 2017-03-15 郑州云海信息技术有限公司 A kind of stability test method, test controller and system
CN108279973B (en) * 2017-01-05 2022-05-06 阿里巴巴集团控股有限公司 Information statistical method and device and electronic equipment
CN108279973A (en) * 2017-01-05 2018-07-13 阿里巴巴集团控股有限公司 A kind of information statistical method, device and electronic equipment
CN108512715A (en) * 2017-02-28 2018-09-07 菜鸟智能物流控股有限公司 Load pressure test method of service link and related device
CN107666416A (en) * 2017-09-07 2018-02-06 郑州云海信息技术有限公司 A kind of iperf test results decision-making system
CN108108295A (en) * 2018-01-02 2018-06-01 天津同阳科技发展有限公司 Data receiver programmed pressure test method
CN108304286A (en) * 2018-01-17 2018-07-20 杭州当虹科技有限公司 A kind of system and method carrying out automatic test to transcoding server concurrency performance
CN108446210B (en) * 2018-02-07 2021-04-30 平安科技(深圳)有限公司 System performance measurement method, storage medium and server
CN108446210A (en) * 2018-02-07 2018-08-24 平安科技(深圳)有限公司 Measure, storage medium and the server of system performance
CN110661671A (en) * 2018-06-28 2020-01-07 中兴通讯股份有限公司 Service detection method, device and equipment and storage medium
CN111026632A (en) * 2018-10-10 2020-04-17 武汉斗鱼网络科技有限公司 Performance test method, storage medium, electronic device and system
CN109828616A (en) * 2019-01-21 2019-05-31 厦门大学 A kind of parts mix selection method and system of RV retarder
CN111475394A (en) * 2019-01-24 2020-07-31 阿里巴巴集团控股有限公司 Application testing method and device
CN111475394B (en) * 2019-01-24 2023-06-20 阿里巴巴集团控股有限公司 Application testing method and device
CN110275806A (en) * 2019-06-20 2019-09-24 深圳忆联信息系统有限公司 SSD controller multimode concurrent testing method and device based on Python
CN112346849A (en) * 2019-08-09 2021-02-09 北京国双科技有限公司 Method and device for configuring CPU
CN114554532A (en) * 2022-03-09 2022-05-27 武汉烽火技术服务有限公司 5G device high-concurrency simulation method and device
CN114554532B (en) * 2022-03-09 2023-07-18 武汉烽火技术服务有限公司 High concurrency simulation method and device for 5G equipment
CN116594884A (en) * 2023-05-16 2023-08-15 上海安般信息科技有限公司 Fuzzy test method and device based on concurrent mode
CN116594884B (en) * 2023-05-16 2023-10-27 上海安般信息科技有限公司 Fuzzy test method and device based on concurrent mode

Similar Documents

Publication Publication Date Title
CN103544103A (en) Method and system for test, simulation and concurrence of software performance
JP5926864B2 (en) System and method for configuring a cloud computing system
Silva et al. Cloudbench: Experiment automation for cloud environments
JP6373840B2 (en) System and method for tuning a cloud computing system
CN103544102B (en) A kind of software performance test analogy method and device
US10379883B2 (en) Simulation of high performance computing (HPC) application environment using virtual nodes
US9229838B2 (en) Modeling and evaluating application performance in a new environment
CN103235756A (en) Simulation testing method for partition application software of embedded system
CN104978261A (en) Test method, device and system of application program
CN103955373A (en) Design method of SDN (Software Defined Networking) application integration development environment
Galuba et al. ProtoPeer: a P2P toolkit bridging the gap between simulation and live deployement
Lin et al. ABS-YARN: A formal framework for modeling Hadoop YARN clusters
CN104750603A (en) Multi-core DSP (Digital Signal Processor) software emulator and physical layer software testing method thereof
CN110162481A (en) A kind of method for testing software, device, equipment and storage medium
CN107797914A (en) Code process method, apparatus and code delivery system
CN101887378A (en) Semi-physical real-time simulator and semi-physical real-time simulation system
KR102376477B1 (en) Electronic system with data exchange mechanism and method of operation thereof
CN108052444A (en) A kind of method and apparatus of performance test for mobile application
Di Sanzo et al. A flexible framework for accurate simulation of cloud in-memory data stores
CN109947535A (en) The direct fault location external member of Virtual machine
CN102331961B (en) Method, system and dispatcher for simulating multiple processors in parallel
CN101799767A (en) Method for carrying out parallel simulation by repeatedly switching a plurality of operation modes of simulator
Kerola et al. Monit: A performance monitoring tool for parallel and pseudo-parallel programs
Williamson Discrete event simulation in the Mobius modeling framework
Neves et al. Mremu: An emulation-based framework for datacenter network experimentation using realistic mapreduce traffic

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20140129