Detailed Description
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with embodiments of the application. Rather, they are merely examples of apparatus and methods consistent with aspects of embodiments of the application as detailed in the accompanying claims.
The terminology used in the embodiments of the application is for the purpose of describing particular embodiments only and is not intended to be limiting of embodiments of the application. As used in this application and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used herein refers to and encompasses any or all possible combinations of one or more of the associated listed items.
It should be understood that although the terms first, second, third, etc. may be used in embodiments of the present application to describe various information, these information should not be limited to these terms. These terms are only used to distinguish one type of information from another. For example, the first information may also be referred to as second information, and similarly, the second information may also be referred to as first information, without departing from the scope of embodiments of the present application. The words "if" and "if" as used herein may be interpreted as "at..once" or "when..once" or "in response to a determination", depending on the context.
Reference will now be made in detail to embodiments of the present application, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to the like or similar elements throughout. The embodiments described below by referring to the drawings are illustrative and intended to explain the present application and should not be construed as limiting the application.
It should be noted that, the software adaptation evaluation method provided in any one of the embodiments of the present application may be executed alone or in combination with possible implementation methods in other embodiments, and may also be executed in combination with any one of the technical solutions in the related art.
The software adaptation evaluation method and the device thereof according to the embodiment of the application are described below with reference to the accompanying drawings.
Fig. 1 is a schematic flow chart of a software adaptation evaluation method according to an embodiment of the present application. As shown in fig. 1, the method includes, but is not limited to, the steps of:
step S101, obtaining reference parameters of the application software running in the migration system.
In one possible implementation, the handling of the migration system involves a comprehensive assessment of the migration system architecture, migration planning, architecture design of the migration system, migration enforcement operations, and subsequent monitoring and optimization.
The comprehensive evaluation of the migration system comprises the steps of analyzing whether the functions currently provided by the migration system architecture meet business requirements or not, evaluating performance indexes such as response time, throughput, resource utilization rate and the like of the migration system, identifying performance bottlenecks of the migration system architecture, checking fault recovery capacity, fault tolerance mechanism and the like of the migration system architecture, and evaluating security protection measures of the migration system architecture, including data encryption, access control, vulnerability management and the like.
It should be noted that fig. 2 is a schematic diagram illustrating interaction between the migration system and the migration system according to an embodiment of the present application. As shown in fig. 2, the components of the migration system architecture include a client, a server, and a database, and the client is used to set items of performance test according to a control table for performance test, and configure reference parameters, which are generally referred to as performance reference parameters, that is, performance Benchmark Parameters. The baseline parameters are used to measure and evaluate a series of quantitative indicators of system architecture or component performance, and can provide clear, comparable criteria for migrating, upgrading or optimizing the system to evaluate the performance of the system architecture to be migrated.
The reference parameters generally include response time, throughput, concurrency user number, resource utilization, delay, error rate, expandability, transaction processing rate, service quality and the like, and when system migration, upgrading or optimizing is performed, appropriate reference parameters are generally selected for evaluation and testing according to specific application scenarios and requirements. These baseline parameters not only help the user to understand the current performance state of the migrating system architecture, but also serve as targets and bases for optimization and improvement.
Further, as an example, a control table for performance testing may be obtained from a database according to the migration system architecture. In this embodiment, the control table is an important concept of database design, and is used for managing and controlling data operations, data flows, rights allocation, and other aspects of other tables in the database. When large-scale data migration is performed, the control table can control partition information of the storage source database so as to guide the data migration process, the control table hi can define the data processing process, such as data cleaning, conversion and loading processes, through the control table, the input, output and processing logic defining each step can be cleaned, future expansibility is usually considered in the design of the control table, and as the database system is continuously developed and changed, new functions may need to be added or existing functions may need to be adjusted, so that enough expansion space should be reserved when the control table is designed.
Further, as an example, the reference parameters are configured from the client of the migration system according to the configuration information of the control table. In this embodiment, the configuration information of the control table includes table identification information, data partition and flow control information, rights management information, metadata information, system parameter information, and the like. It should be noted that, when configuring the reference parameters, the table structure and the field setting should be flexibly adjusted according to the actual situation, and the association and the dependency between the database tables should be considered.
As shown in fig. 1, in step S102 of the software adaptation evaluation method, a plurality of benchmarking value parameters for performance test are obtained according to the reference parameters, and performance test time-consuming value parameters corresponding to the benchmarking value parameters are obtained from the migration system.
In a possible implementation manner, the parameter of the marker post value used for the performance test can be used as an important reference for evaluating whether the application software migrates from the migration system to reach the expected level, and the parameter of the marker post value is helpful for quantifying migration effects, so that the migrated migration system can meet business requirements and performance requirements.
Alternatively, as an example, the instruction stream corresponding to the reference parameter may be obtained from the server according to the architecture of the migration system, and based on the performance test of each component (including the central processing unit, the memory, the file read-write system, the disk, the network capability, etc.) in the migration system on the instruction stream, a plurality of target value parameters (including the processing capability of the central processing unit, the memory read-write capability, the file read-write capability, the disk read-write capability, the network load capability, etc.) are obtained, and the target value parameters of the migration system are used as references to evaluate the service processing capability and the performance parameters of the migration system.
Alternatively, as an example, related industry reports may be queried to obtain the benchmarking parameters of performance indicators of the same type of mobile systems, and these reports are typically issued by authorities with high reference value.
Alternatively, as an example, performance test may be performed on the migration system by a professional operation and maintenance mechanism, to obtain a relatively professional marker post value parameter, and the accuracy of the migration result is evaluated by using the marker post value parameter as a reference.
Therefore, the method for obtaining the marker post value parameter for performance test should be selected according to the specific usage scenario, which is not described herein.
Further, as an example, based on interactions between the migrating system and the migrating system, a first instruction sent by the migrating system is collected from the migrating system, a stress generation test is performed on the first instruction, and a performance test time-consuming value parameter corresponding to the marker post value parameter is obtained from the migrating system. Further, if the single-threaded pressure generation test is performed on the first instruction, a performance test time-consuming value parameter corresponding to the marker post value parameter of each component in the migration system is obtained from the migration system. Further, according to the single-thread mode, performance tests are conducted on all components in the migration system based on the first instruction, and performance test time of all the components is counted. By way of example, if the benchmarking parameters are quantized values relating to CPU processing power, then the performance test time corresponds to the quantized values of CPU processing power in the migration system. Further, a plurality of performance test time are overlapped to obtain performance test time consumption value parameters, wherein the performance test time consumption value parameters comprise processing capacity, memory read-write capacity, file read-write capacity, disk read-write capacity, network load capacity and the like of the central processing unit.
Further, if the first instruction is subjected to the multithreading pressure generating test, a performance test time-consuming value parameter corresponding to the marker post value parameter of each component in the migration system is obtained from the migration system. Further, according to the multithreading mode, performance tests are conducted on all components in the migration system based on the first instruction, and performance test time of all the components is counted.
As an example, for the single-thread mode, if only the processing capability, memory read-write capability, file read-write capability, disk read-write capability of the central processor are considered, the performance test time of each component = single-thread Cheng Zhongyang processor performance test time + single-thread memory performance test time + single-thread file read-write performance test time + single-thread Cheng Cipan read-write performance test time.
For the multithreading mode, the homogenization is performed according to the number of the central processing units, if only the processing capacity, the memory read-write capacity, the file read-write capacity and the disk read-write capacity of the central processing units are considered, the performance test time of each component=the total time consumption of the multithreading central processing unit performance test/the number of the logic central processing units+the total time consumption of the multithreading memory performance test/the number of the logic central processing units+the total time consumption of the multithreading file read-write performance test/the number of the logic central processing units+the total time consumption of the multithreading Cheng Cipan read-write performance test/the number of the logic central processing units.
It should be noted that, for the performance test of the central processing unit, the elsen screening method may be adopted to count how many prime numbers can be calculated in 1 second, or the operations of sorting and searching for sub-strings may be adopted to count the designated strings read into the memory, and the time consumed for all string operations may be counted.
For performance test of the memory, memory copying can be performed on the formulated file, and time consumption is counted.
For the performance test of the file reading and writing capability, the specified file can be randomly read and written through a file system, and time consumption is counted.
For the performance test of the disk reading and writing capability, the disk device can be randomly read and written, and time consumption is counted.
As shown in fig. 1, in step S103 of the software adaptation evaluation method, an average value and a square root of a proportionality coefficient between a benchmarking value parameter and a performance test time-consuming value parameter are obtained, and an evaluation result for evaluating the running of application software in an migration system is obtained according to the average value and the square root.
In a possible implementation manner, as an example, according to a plurality of files for performance test, the corresponding relation between the target value parameters and the performance test consumption value parameters is obtained, according to the corresponding relation, the proportionality coefficients between the target value parameters and the performance test consumption value parameters are obtained, wherein for each test file, a group of target value parameters and performance test consumption value parameters are obtained, the proportionality coefficients are subjected to average value obtaining operation, the proportionality coefficients are subjected to product operation, a first intermediate variable is obtained, and based on the number of the files, the first intermediate variable is subjected to exponentiation operation, and a square root is obtained. Further, based on superposition of the average value and the square root, an evaluation value of the application software adapted to the migration system is obtained, and an evaluation result of the application software running in the migration system is obtained according to comparison of the evaluation value and a threshold value.
The following formula may be used to obtain an evaluation value of the application software adaptation and migration system:
Wherein V n is an evaluation value, T n is a performance test consumption value parameter, B n is a standard pole value parameter, n is the number of files used for performance test, P1 is a first weight representing an average value, P2 is a second weight representing a square root, wherein P1+P2=1, and P1 and P2 are set according to a use scene.
As an example, four sets of thresholds may be set, respectively, [0,0.75 ], [0.75,0.85 ], [0.85,0.95 ], and [0.95,1.0 ], where the evaluation result corresponding to [0,0.75 ] is poor, the evaluation result corresponding to [0.75,0.85) is acceptable, the evaluation result corresponding to [0.85,0.95) is good, and the evaluation result corresponding to [0.95,1.0) is excellent. Therefore, according to which threshold the evaluation value falls within, the evaluation result of the application software running in the migration system is obtained.
The processing operation of the migration system architecture further comprises the steps of ensuring that the service is not interrupted or is rarely interrupted in the migration process to the migration system; in solving the compatibility problem of the existing architecture and the architecture of the system to be migrated, code modification, configuration adjustment and the like may be needed, a risk management plan is formulated, potential migration risks are identified, and responsive countermeasures are designated.
In summary, a plurality of benchmarking value parameters for performance test are obtained according to the reference parameters of the application software running in the migration system, the time-consuming performance test value parameters corresponding to the benchmarking value parameters are obtained from the migration system, and an evaluation result for evaluating the application software running in the migration system is obtained according to the proportionality coefficient between the benchmarking value parameters and the time-consuming performance test value parameters. Provides objective and effective judgment standard for migration of application software to domestic platform, and has wide applicability.
Fig. 3 is a schematic structural diagram of a software adaptation evaluation device according to an embodiment of the present application. As shown in fig. 3, the software adaptation evaluation device 300 includes:
The first obtaining module 301, where the first obtaining module 301 is configured to obtain a reference parameter of an application software running on the migration system;
the second obtaining module 302 is configured to obtain a plurality of benchmarking value parameters for performance test according to the reference parameters, and obtain a time-consuming performance test value parameter corresponding to the benchmarking value parameters from the migration system;
The third obtaining module 303, where the third obtaining module 303 is configured to obtain an average value and a square root of a scaling factor between the benchmarking value parameter and the performance test time-consuming value parameter, and obtain an evaluation result for evaluating the running of the application software in the migration system according to the average value and the square root.
Fig. 4 is a schematic structural diagram of an electronic device according to an embodiment of the present application. The electronic device shown in fig. 4 is only an example and should not be construed as limiting the functionality and scope of use of the embodiments of the application.
As shown in fig. 5, the electronic device 400 includes a processor 401 that can perform various suitable actions and processes according to a program stored in a Read Only Memory (ROM) 402 or a program loaded from a Memory 406 into a random access Memory (RAM, random Access Memory) 403. In the RAM 403, various programs and data necessary for the operation of the electronic device 400 are also stored. The processor 401, the ROM 402, and the RAM 403 are connected to each other by a bus 404. An Input/Output (I/O) interface 405 is also connected to bus 404.
The following components are connected to the I/O interface 405, a memory 406 including a hard disk or the like, and a communication section 407 including a network interface card such as a LAN (local area network ) card, a modem or the like, the communication section 407 performing communication processing via a network such as the internet, and a drive 408 is also connected to the I/O interface 405 as necessary.
In particular, according to embodiments of the present application, the processes described above with reference to flowcharts may be implemented as computer software programs. For example, embodiments of the present application include a computer program embodied on a computer readable medium, the computer program containing program code for performing the method shown in the flowchart. In such an embodiment, the computer program may be downloaded and installed from the network through the communication portion 407. The above-described functions defined in the method of the application are performed when the computer program is executed by the processor 401.
In an exemplary embodiment, a storage medium is also provided, e.g., a memory, comprising instructions executable by the processor 401 of the electronic device 400 to perform the above-described method. Alternatively, the storage medium may be a non-transitory computer readable storage medium, which may be, for example, ROM, random Access Memory (RAM), CD-ROM, magnetic tape, floppy disk, optical data storage device, and the like.
In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present application, however, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, with the computer-readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Fig. 5 is a schematic structural diagram of another electronic device according to an embodiment of the present application. The electronic device shown in fig. 5 is only an example and should not be construed as limiting the functionality and scope of use of the embodiments of the present application. As shown in fig. 5, the electronic device 500 includes a processor 501 and a memory 502. The memory 502 is used for storing program codes, and the processor 501 is connected to the memory 502 and is used for reading the program codes from the memory 502 to implement the software adaptation evaluation method in the above embodiment.
Alternatively, the number of processors 501 may be one or more.
Optionally, the electronic device may further include an interface 503, and the number of the interfaces 503 may be plural. The interface 503 may be connected to an application program, and may receive data of an external device such as a sensor, or the like.
Other embodiments of the application will be apparent to those skilled in the art from consideration of the specification and practice of the application disclosed herein. This application is intended to cover any variations, uses, or adaptations of the application following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice within the art to which the application pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the application being indicated by the following claims.
It is to be understood that the application is not limited to the precise arrangements and instrumentalities shown in the drawings, which have been described above, and that various modifications and changes may be effected without departing from the scope thereof. The scope of the application is limited only by the appended claims.