CN112416717A - Batch execution result reporting method, device, equipment and medium - Google Patents
Batch execution result reporting method, device, equipment and medium Download PDFInfo
- Publication number
- CN112416717A CN112416717A CN202011355408.2A CN202011355408A CN112416717A CN 112416717 A CN112416717 A CN 112416717A CN 202011355408 A CN202011355408 A CN 202011355408A CN 112416717 A CN112416717 A CN 112416717A
- Authority
- CN
- China
- Prior art keywords
- execution result
- reporting
- batch
- reported
- queue
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 230000000903 blocking effect Effects 0.000 claims abstract description 62
- 230000015654 memory Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 description 48
- 238000004590 computer program Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3017—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3089—Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
- G06F11/3093—Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Retry When Errors Occur (AREA)
Abstract
The application provides a batch execution result reporting method. According to the method, when the batch execution result comprises the unsuccessful execution result reporting, the unsuccessful execution result is recorded in the error reporting log, the execution result recorded in the error reporting log is added to the blocking queue, and the execution result is reported again according to the blocking queue, so that the problems that the execution result cannot be stored in a database and a large amount of resources and time are consumed when the execution result is executed again are solved.
Description
Technical Field
The present application relates to the field of computer technologies, and in particular, to an access control method, apparatus, device, and computer-readable storage medium.
Background
Whether internet or enterprise-class applications are flooded with a large number of batch tasks. The batch processing task refers to a batch processing task, such as a batch collection payment service, a payment due for a personal loan, an automatic payment for a credit card, a periodic automatic transfer, a fund settlement and settlement processing and the like.
These distributed, poorly reliable batch tasks typically need to be handled by a unified platform, such as a batch scheduling platform. Specifically, after the batch processing task is called, the agent service in the batch scheduling platform actively reports the batch execution result. The batch execution result mainly comprises information such as a plan serial number, a node execution state, a node execution result and the like. If the receiving service does not receive the execution batch result, the normal operation of the business is generally influenced.
When the batch execution result reports an error due to network jitter or downtime restart, if the batch is re-executed and the execution result is obtained again, a large amount of time is spent and a large amount of Central Processing Unit (CPU) resources are also occupied. There is a need to provide an efficient and low-cost method for reporting batch execution results.
Disclosure of Invention
The application provides a batch execution result reporting method. According to the method, when the batch execution result comprises the unsuccessful execution result reporting, the unsuccessful execution result is recorded in the error reporting log, the execution result recorded in the error reporting log is added to the blocking queue, and the execution result is reported again according to the blocking queue, so that the problems that the execution result cannot be stored in a database, and a large amount of resources and time are consumed when the execution result is executed again are solved, and the normal operation of the service is ensured.
In a first aspect, the present application provides a method for reporting batch execution results. The method comprises the following steps:
when the batch execution result comprises at least one unsuccessful execution result reporting, recording at least one execution result in a reporting error log;
adding at least one execution result recorded in the reported error log to a blocking queue;
and reporting at least one execution result again according to the blocking queue.
In some possible implementations, the at least one execution result includes multiple execution results, and the multiple execution results are recorded in different reported error logs;
adding at least one execution result recorded in the reported error log to a blocking queue, comprising:
and adding the execution result recorded in the reported error log with the reporting times less than the preset times to a blocking queue.
In some possible implementations, the re-reporting at least one execution result according to the congestion queue includes:
and when the service starting time reaches the preset time, reporting at least one execution result again according to the blocking queue.
In some possible implementations, the method further includes:
and when the execution result in the blocking queue is reported successfully, deleting the corresponding reporting error log.
In some possible implementations, the method further includes:
and when the execution result in the blocking queue is not reported successfully, adding one to the reporting times, and updating a reporting error log corresponding to the execution result.
In some possible implementations, the re-reporting at least one execution result according to the congestion queue includes:
and when the reporting times of the execution results in the blocking queue are less than the preset times, reporting at least one execution result again.
In some possible implementations, after adding the at least one execution result recorded in the reported error log to the blocking queue, the method further includes:
and ending the batch execution result reporting thread.
In a second aspect, the present application provides a device for reporting batch execution results, where the device includes:
the recording module is used for recording at least one execution result in a reporting error log when the batch execution result comprises at least one execution result which is not reported successfully;
the adding module is used for adding at least one execution result recorded in the reported error log to the blocking queue;
and the reporting module is used for reporting at least one execution result again according to the blocking queue.
In some possible implementations, the at least one execution result includes multiple execution results, and the multiple execution results are recorded in different reported error logs;
the adding module is specifically configured to:
and adding the execution result recorded in the reported error log with the reporting times less than the preset times to a blocking queue.
In some possible implementation manners, the reporting module is specifically configured to:
and when the service starting time reaches the preset time, reporting at least one execution result again according to the blocking queue.
In some possible implementations, the apparatus further includes:
and the deleting module is used for deleting the corresponding reporting error log when the execution result in the blocking queue is reported successfully.
In some possible implementations, the apparatus further includes:
and the updating module is used for adding one to the reporting times and updating the reporting error log corresponding to the execution result when the execution result in the blocking queue is not reported successfully.
In some possible implementation manners, the reporting module is specifically configured to:
and when the reporting times of the execution results in the blocking queue are less than the preset times, reporting at least one execution result again.
In some possible implementations, after adding the at least one execution result recorded in the reported error log to the blocking queue, the apparatus further includes:
and the ending module is used for ending the batch execution result reporting thread.
In a third aspect, the present application provides an apparatus comprising a processor and a memory. The processor and the memory are in communication with each other. The processor is configured to execute the instructions stored in the memory, so as to enable the device to perform the batch execution result reporting method in the first aspect or any implementation manner of the first aspect.
In a fourth aspect, the present application provides a computer-readable storage medium, where instructions are stored in the computer-readable storage medium, and the instructions instruct a device to execute the batch execution result reporting method according to the first aspect or any implementation manner of the first aspect.
In a fifth aspect, the present application provides a computer program product containing instructions, which when run on a device, causes the device to perform the batch execution result reporting method according to the first aspect or any implementation manner of the first aspect.
The present application can further combine to provide more implementations on the basis of the implementations provided by the above aspects.
According to the technical scheme, the embodiment of the application has the following advantages:
the embodiment of the application provides a batch execution result reporting method, and the method records unsuccessful execution results in a reporting error log when the batch execution results comprise unsuccessful execution result reporting, then adds the execution results recorded in the reporting error log to a blocking queue, and reports the execution results again according to the blocking queue, so that the problems that the execution results cannot be stored in a database and consume a large amount of resources and time when being executed again are avoided, and the normal operation of services is ensured.
Furthermore, the blocking queue is adopted, the batch execution result reporting and the batch scheduling main thread are completely separated, and the pressure of the main thread is relieved. And a timing task is applied, so that the thread safety of reporting the execution result of each round is ensured. The reporting times of each batch execution result are limited so as to reduce meaningless repeated reporting,
drawings
In order to more clearly illustrate the technical method of the embodiments of the present application, the drawings needed to be used in the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without inventive labor.
Fig. 1 is a schematic flowchart of a batch execution result reporting method according to an embodiment of the present application;
fig. 2 is a schematic flow chart of another batch execution result reporting method according to an embodiment of the present application;
fig. 3 is a schematic structural diagram of a device for reporting batch execution results according to an embodiment of the present disclosure.
Detailed Description
The scheme in the embodiments provided in the present application will be described below with reference to the drawings in the present application.
The terms "first" and "second" in the embodiments of the present application are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature.
Some technical terms referred to in the embodiments of the present application will be first described.
Batch processing tasks, also known as batch processing tasks, refer to the execution of a series of programs on a computer without manual intervention.
Batch business processing refers to batch processing of a particular business logic by an executable element, such as a program or script. The batch business processing comprises the business of batch collection and payment, payment due for personal loan, automatic payment for credit card, periodical automatic transfer, fund settlement and settlement processing and the like.
In general, a batch task is processed on a batch scheduling platform, and the batch scheduling platform performs unified management scheduling on the batch task, thereby realizing centralization of job management. Specifically, after the batch processing task is invoked, the proxy service in the batch scheduling platform actively reports the batch execution result, for example, reports the batch execution result through a representation state transfer (REST) request. If the receiving service does not receive the execution batch result, the normal operation of the business is generally influenced.
In the prior art, when the REST request fails to send the batch execution result due to network jitter or downtime and restart, the batch execution result cannot be stored in the database, but a large amount of CPU resources and time are consumed when the whole batch is executed again.
In view of the above, the present application provides an efficient method for reporting batch execution results. The method may be performed by a processing device. The processing device is a device having a data processing capability, and may be, for example, a server, or a terminal device such as a desktop computer, a notebook computer, or a smart phone.
Specifically, the processing device records the unsuccessful execution result reported in the batch execution result in the reported error log, and then adds the unsuccessful execution result in the blocking queue, so as to report the unsuccessful result again, and only reports the unsuccessful result again through the blocking queue, thereby avoiding that a large amount of CPU resources and time are wasted by reporting all the execution results again, improving the efficiency of reporting the batch execution result, and ensuring the high availability and fault tolerance of the batch scheduling platform.
The processing device can also end the batch execution result reporting thread after adding the batch execution result into the blocking queue, thereby releasing resources and ensuring the maximum utilization of system resources such as a CPU. In addition, the processing equipment adopts a blocking queue such as a LinkedBlockingQueue of a one-way linked list to buffer data, so that the priority of reporting error retry and the complete parallelism of production and consumption are ensured, the reporting error retry of the batch execution result is completely separated from the batch scheduling main thread, and the pressure of the main thread is relieved.
In order to make the technical solution of the present application clearer and easier to understand, the technical solution of the present application will be described in detail from the perspective of a processing device.
Referring to fig. 1, a flow diagram of a batch execution result reporting method provided in an embodiment of the present application is shown, where the method includes the following steps:
s102: and when the batch execution result comprises at least one unsuccessful execution result reported, the processing equipment records at least one execution result in a reported error log.
In general, the batch execution result may include that a plurality of execution results are not reported successfully, so that the processing device records the plurality of execution results in different reporting error logs.
In some possible implementation manners, the same execution result may be executed unsuccessfully for multiple times, the execution result is stored in the same reported error log each time, in order to solve meaningless repeated reporting, the reporting times of the same execution result can be limited, and when the limited times are reached and the reporting is still unsuccessful, the execution result may have a problem, so that the corresponding log is transferred to the backup directory, and the problem is conveniently inquired by related personnel.
S104: and the processing equipment adds at least one execution result recorded in the reported error log to the blocking queue.
Specifically, the processing device reads the reported error log file list one by one in sequence, maps the obtained execution result to be reported, and then adds the result to the blocking queue.
The blocking queue such as LinkedBlockingQueue is a blocking queue capable of realizing thread safety, realizes a blocking queue interface, introduces two locks for take and put operations, namely LinkedBlockingQueue queue and putLock are different locks for enqueuing and dequeuing, so that enqueuing and dequeuing operations can be carried out simultaneously. Meanwhile, two condition variables, namely notEmpty and notFull, are introduced, wherein the notEmpty indicates that the program has elements in the queue and can execute take operation; notFull indicates that the program queue is not yet full and may be put in. With reference to the producer and consumer models, a producer may produce when the queue is not full and a consumer may consume when the queue is not empty.
In some possible implementations, for example, in the proxy service, there are many batch scheduling requests, and batch scheduling is performed asynchronously, so that there are a lot of batch results to be sent to the receiving service at a certain moment, and therefore it is required to ensure that the execution results are stored successfully when the sending of the execution results fails and to ensure the priority of retry when the result reports an error and retries. The LinkedBlockingQueue is a blocking version of a queue based on a linked list, achieves enqueue and dequeue separation, is high in efficiency, and supports capacity limitation, so that the LinkedBlockingQueue is adopted to store data, and the requirement of batch processing in proxy service can be met.
In general, a plurality of execution results are recorded in the reported error log, and the processing device adds the execution results recorded in the reported error log to the blocking queue according to the addition sequence.
In the application, the data is cached by adopting a blocking queue LinkedBlockingQueue, so that the priority of error retry reporting and the complete parallelism of production and consumption are ensured; and the reporting error retry of the batch execution result is completely separated from the batch scheduling main thread, so that the pressure of the main thread is relieved.
According to some possible implementation manners in S102, the reporting times may be limited, and the processing device adds the execution result recorded in the reporting error log with the reporting times smaller than the preset times to the blocking queue
In some possible implementation manners, after the processing device adds the execution result recorded in the reported error log to the blocking queue, the batch execution result reporting thread is ended, and thread resources are saved.
S106: and the processing equipment reports at least one execution result again according to the blocking queue.
Specifically, the processing device takes out the reported error execution results one by one from the congestion queue, and sends a Rest request with the execution results to the receiving service, thereby realizing the re-reporting of the execution results.
In some possible implementations, a timing task may be applied, that is, a preset time is set before S102 starts, timing is performed when S102 starts, and when the service start time reaches the preset time, at least one execution result is reported again according to the blocking queue. A timed task refers to some business logic that is normally done using a timer in order to reduce server and database stress. In the application, a Spring Boot timing delay task can be set, namely, the first retry is started after the service is restarted within the predefined time, and the timing task can reduce the pressure of a server and a database and ensure the thread safety of the error retry reported in each round of result.
When the execution result in the blocking queue is reported successfully, the corresponding reporting error log is deleted, log accumulation is prevented, the memory can be released in time, and the efficiency is improved.
And when the execution results in the blocking queue are not reported successfully, adding one to the reporting times, and updating a reporting error log corresponding to the execution results, namely that at least one execution result is not reported successfully in the batch execution results, performing S102 and preparing to report again in the next round.
In some possible implementation manners, the above S102, S104, and S106 form a loop, and the number of reported error retries can be limited as needed, so that the memory can be released in time, and the efficiency of log scanning is improved.
And when the reporting of the execution result is unsuccessful and the preset retry number is reached, the reporting error log corresponding to the execution result is migrated to the backup directory, so that the related technical personnel can conveniently check the problems.
When the above-mentioned loop is executed, because the batch scheduling is performed asynchronously, in S102, the processing device may record the first unsuccessful result report in the reported error log, and may record the multiple unsuccessful results reports in the reported error log that does not reach the length limit.
In another embodiment, when the project initialization is completed, the current thread of the system is used for searching the historical reported results which are not in error, so that automatic scanning and acquisition of the historical reported tasks which are in error can be ensured after the downtime restart, and a monitoring program does not need to be specially developed, thereby saving thread resources.
Fig. 2 is a schematic view of a complete flow of another batch execution result reporting method according to an embodiment of the present application, where the method includes the following steps:
s202: judging whether the processing equipment is restarted after the service is down, if yes, entering S204, and scanning the log which is not reported successfully in history; otherwise, S206 is entered, indicating a first start.
The downtime is a phenomenon that the computer cannot recover from a serious error system or a hardware system has a problem, so that the system has no response for a long time and has to be restarted. When the reporting of a large amount of execution results of the system is unsuccessful, a service downtime may be caused.
According to the method and the device, when the project initialization is completed, the current thread of the system is used for searching the historical reported results which are not mistaken, so that the historical results are reported and automatically scanned and obtained for tasks to be retried, which are mistaken after the downtime is restarted, a monitoring program does not need to be specially developed, and thread resources are saved.
S204: the processing device acquires a list of files stored under the reported error directory, and proceeds to S208.
S206: the processing device waits to start a timed task.
S208: the processing equipment acquires whether the reported error log file list is empty, and if the reported error log file list is empty, the S204 is entered; otherwise, the process proceeds to S210.
S210: the processing device determines whether all the files are scanned, if so, the process proceeds to S204, otherwise, the process proceeds to S212.
S212: and the processing equipment sequentially reads the error log files one by one from the reported error log file list.
S214: and the processing equipment maps the acquired execution result to be reported and adds the execution result to be reported to a blocking queue.
S216: the processing equipment judges whether the blocking queue is empty, namely judges whether the execution result in the queue completes the round of retry, if the queue is empty, the execution result in the queue completes the round of retry, the retry is finished, and the waiting timer is awakened again within the preset delay time after the task is finished; otherwise, it indicates that there is an object in the queue that does not complete the retry, and proceeds to S218.
S218: and the processing equipment takes out the reported error execution result from the blocking queue.
S220: the processing device performs a reporting retry, and specifically, the processing device sends a Rest request with an execution result to the receiving service.
S222: the processing device determines whether the retry is successful, and proceeds to S224 if the retry is successful, or proceeds to S226 if not.
S224: the processing device deletes the corresponding log and proceeds to S216.
S226: the processing device determines whether the number of retries reaches an upper limit, and if so, proceeds to S228, otherwise, proceeds to S230.
S228: the processing device migrates the corresponding log to the backup directory, and then proceeds to S216.
S230: the processing device reports the reporting times of the reporting execution result to + 1.
S232: and the processing equipment updates the log corresponding to the reported execution result.
S234: the processing device adds the reported execution result to the queue again, and then the process goes to S216.
Corresponding to the above method embodiment, the present application further provides a device for reporting batch execution results, referring to fig. 3, where the device 300 includes: a recording module 302, an adding module 304 and a reporting module 306.
A recording module 302, configured to record at least one execution result in a reporting error log when the batch execution result includes at least one execution result that is not reported successfully;
an adding module 304, configured to add at least one execution result recorded in the reported error log to the blocking queue;
a reporting module 306, configured to report at least one execution result again according to the congestion queue.
In some possible implementations, the at least one execution result includes multiple execution results, and the multiple execution results are recorded in different reported error logs;
the adding module 304 is specifically configured to:
and adding the execution result recorded in the reported error log with the reporting times less than the preset times to a blocking queue.
In some possible implementation manners, the reporting module 306 is specifically configured to:
and when the service starting time reaches the preset time, reporting at least one execution result again according to the blocking queue.
In some possible implementations, the apparatus further includes:
and the deleting module is used for deleting the corresponding reporting error log when the execution result in the blocking queue is reported successfully.
In some possible implementations, the apparatus further includes:
and the updating module is used for adding one to the reporting times and updating the reporting error log corresponding to the execution result when the execution result in the blocking queue is not reported successfully.
In some possible implementation manners, the reporting module 306 is specifically configured to:
and when the reporting times of the execution results in the blocking queue are less than the preset times, reporting at least one execution result again.
In some possible implementations, after adding the at least one execution result recorded in the reported error log to the blocking queue, the apparatus further includes:
and the ending module is used for ending the batch execution result reporting thread.
The application provides equipment for realizing a batch execution result reporting method. The apparatus includes a processor and a memory. The processor and the memory are in communication with each other. The processor is used for executing the instructions stored in the memory so as to enable the equipment to execute the batch execution result reporting method.
The application provides a computer-readable storage medium, in which instructions are stored, and when the computer-readable storage medium runs on a device, the device executes the batch execution result reporting method.
The application provides a computer program product containing instructions, which when run on a device, causes the device to execute the batch execution result reporting method.
It should be noted that the above-described embodiments of the apparatus are merely schematic, where the units described as separate parts may or may not be physically separate, and the parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. In addition, in the drawings of the embodiments of the apparatus provided in the present application, the connection relationship between the modules indicates that there is a communication connection therebetween, and may be implemented as one or more communication buses or signal lines.
Through the above description of the embodiments, those skilled in the art will clearly understand that the present application can be implemented by software plus necessary general-purpose hardware, and certainly can also be implemented by special-purpose hardware including special-purpose integrated circuits, special-purpose CPUs, special-purpose memories, special-purpose components and the like. Generally, functions performed by computer programs can be easily implemented by corresponding hardware, and specific hardware structures for implementing the same functions may be various, such as analog circuits, digital circuits, or dedicated circuits. However, for the present application, the implementation of a software program is more preferable. Based on such understanding, the technical solutions of the present application may be substantially embodied in the form of a software product, which is stored in a readable storage medium, such as a floppy disk, a usb disk, a removable hard disk, a ROM, a RAM, a magnetic disk, or an optical disk of a computer, and includes several instructions for enabling a computer device (which may be a personal computer, an exercise device, or a network device) to execute the method according to the embodiments of the present application.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product.
The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website site, computer, training device, or data center to another website site, computer, training device, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can store or a data storage device, such as a training device, a data center, etc., that incorporates one or more available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
Claims (10)
1. A method for reporting batch execution results is characterized in that the method comprises the following steps:
when the batch execution result comprises at least one execution result which is not reported successfully, recording the at least one execution result in a reporting error log;
adding the at least one execution result recorded in the reported error log to a blocking queue;
and reporting the at least one execution result again according to the blocking queue.
2. The method of claim 1, wherein the at least one execution result comprises a plurality of execution results, and wherein the plurality of execution results are recorded in different reported error logs;
the adding the at least one execution result recorded in the reported error log to a congestion queue includes:
and adding the execution result recorded in the reported error log with the reporting times less than the preset times into a blocking queue.
3. The method of claim 1, wherein the re-reporting the at least one execution result according to the congestion queue comprises:
and when the service starting time reaches the preset time, reporting the at least one execution result again according to the blocking queue.
4. The method according to any one of claims 1 to 3, further comprising:
and when the execution result in the blocking queue is reported successfully, deleting the corresponding reporting error log.
5. The method according to any one of claims 1 to 3, further comprising:
and when the execution result in the blocking queue is not reported successfully, adding one to the reporting times, and updating a reporting error log corresponding to the execution result.
6. The method of claim 5, wherein the re-reporting the at least one execution result according to the congestion queue comprises:
and when the reporting times of the execution results in the blocking queue are less than the preset times, reporting the at least one execution result again.
7. The method of any of claims 1 to 3, wherein after adding the at least one execution result recorded in the reported error log to a blocking queue, the method further comprises:
and ending the batch execution result reporting thread.
8. An apparatus for reporting batch execution results, the apparatus comprising:
the recording module is used for recording at least one execution result in a reporting error log when the batch execution result comprises at least one execution result which is not reported successfully;
an adding module, configured to add the at least one execution result recorded in the reported error log to a blocking queue;
and the reporting module is used for reporting the at least one execution result again according to the blocking queue.
9. An apparatus, comprising a processor and a memory;
the processor is to execute instructions stored in the memory to cause the device to perform the method of any of claims 1 to 7.
10. A computer-readable storage medium comprising instructions that direct a device to perform the method of any of claims 1-7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011355408.2A CN112416717A (en) | 2020-11-27 | 2020-11-27 | Batch execution result reporting method, device, equipment and medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011355408.2A CN112416717A (en) | 2020-11-27 | 2020-11-27 | Batch execution result reporting method, device, equipment and medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112416717A true CN112416717A (en) | 2021-02-26 |
Family
ID=74842649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011355408.2A Pending CN112416717A (en) | 2020-11-27 | 2020-11-27 | Batch execution result reporting method, device, equipment and medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112416717A (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108833199A (en) * | 2018-04-26 | 2018-11-16 | 广州视源电子科技股份有限公司 | Method, apparatus, equipment and the storage medium that data report |
CN109347942A (en) * | 2018-10-09 | 2019-02-15 | 浙江明度智控科技有限公司 | A kind of industrial gateway data repay method and industrial gateway |
CN109525632A (en) * | 2018-09-30 | 2019-03-26 | 珠海派诺科技股份有限公司 | Gateway data uploads database connection digital control method, device, equipment and medium |
CN110765167A (en) * | 2019-10-23 | 2020-02-07 | 泰康保险集团股份有限公司 | Policy data processing method, device and equipment |
CN110839055A (en) * | 2018-08-17 | 2020-02-25 | 菜鸟智能物流控股有限公司 | Task processing method, device and system |
-
2020
- 2020-11-27 CN CN202011355408.2A patent/CN112416717A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108833199A (en) * | 2018-04-26 | 2018-11-16 | 广州视源电子科技股份有限公司 | Method, apparatus, equipment and the storage medium that data report |
CN110839055A (en) * | 2018-08-17 | 2020-02-25 | 菜鸟智能物流控股有限公司 | Task processing method, device and system |
CN109525632A (en) * | 2018-09-30 | 2019-03-26 | 珠海派诺科技股份有限公司 | Gateway data uploads database connection digital control method, device, equipment and medium |
CN109347942A (en) * | 2018-10-09 | 2019-02-15 | 浙江明度智控科技有限公司 | A kind of industrial gateway data repay method and industrial gateway |
CN110765167A (en) * | 2019-10-23 | 2020-02-07 | 泰康保险集团股份有限公司 | Policy data processing method, device and equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107016480B (en) | Task scheduling method, device and system | |
CN110753084B (en) | Uplink data reading method, cache server and computer readable storage medium | |
US20140325517A1 (en) | Server system, method for controlling the same, and program for executing parallel distributed processing | |
CN110650164B (en) | File uploading method and device, terminal and computer storage medium | |
US20190286574A1 (en) | Systems and methods for remote procedure call | |
CN111586158A (en) | Audio and video fragment uploading and retransmitting method | |
CN112416717A (en) | Batch execution result reporting method, device, equipment and medium | |
CN111125168B (en) | Data processing method and device, electronic equipment and storage medium | |
CN113760522A (en) | Task processing method and device | |
CN106776153B (en) | Job control method and server | |
CN112114938A (en) | Transaction processing method and device and server | |
US11386060B1 (en) | Techniques for verifiably processing data in distributed computing systems | |
CN114417200B (en) | Network data acquisition method and device and electronic equipment | |
CN108121514B (en) | Meta information updating method and device, computing equipment and computer storage medium | |
CN115952227A (en) | Data acquisition system and method, electronic device and storage medium | |
CN115499493A (en) | Asynchronous transaction processing method and device, storage medium and computer equipment | |
CN112445620B (en) | Method and device for optimizing writing performance of SMB protocol and readable storage medium | |
CN115904650A (en) | Timed task supervision method and device under Linux system | |
CN112231601B (en) | Link management method, device, equipment and computer storage medium | |
CN114924904A (en) | Failed task retry method and device, electronic equipment and storage medium | |
CN114218058A (en) | Method and system for recording user operation sequence by multi-task user operation log | |
CN111431951B (en) | Data processing method, node equipment, system and storage medium | |
CN108345431B (en) | Data reading method and device | |
CN113407562A (en) | Communication method and device of distributed database system | |
CN116010126B (en) | Service aggregation method, device and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |