Method, device, system, electronic device and storage medium for allocating audit tasks

Through the event-driven asynchronous audit task allocation method, the problem of unbalanced supply and demand of tasks and auditors in live broadcast resource audit task allocation is solved, stable assignment of tasks and auditor load balancing is achieved, and audit efficiency and system scalability are improved.

CN114265697BActive Publication Date: 2025-08-08BEIJING BAIDU NETCOM SCI & TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111642519.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-29
Publication Date
2025-08-08
Estimated Expiration
2041-12-29

AI Technical Summary

Technical Problem

In the prior art, the audit task allocation method of live broadcast resources cannot achieve the supply and demand balance between tasks and auditors, resulting in unbalanced load of auditors, affecting audit coherence and efficiency.

Method used

The asynchronous audit task allocation method is adopted based on event-driven asynchronously triggers the task allocation process by detecting the task status and auditor status in the task pool and queue metadatabase, and tasks are allocated and seconded according to business information and task number thresholds to achieve stable tasks allocation.

Benefits of technology

It achieves a balance between supply and demand between tasks and auditors, ensures stable allocation of audit tasks, improves audit consistency and efficiency, supports personalized task requirements, and reduces system upgrade and maintenance costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114265697B_ABST
    Figure CN114265697B_ABST
Patent Text Reader

Abstract

The present disclosure provides a method, device, system, electronic device and storage medium for allocating audit tasks, and relates to the field of information security technology. The specific scheme includes: detecting the task status of each audit task in the task pool, wherein the task status includes to be assigned, assigned and deleted; in response to detecting the existence of an audit task with a target task status in the task pool, triggering the task allocation process corresponding to the target task status, wherein the target task status is either to be assigned or deleted. The technical solution of the present disclosure provides an event-driven asynchronous audit task allocation method, which can realize flexible and stable allocation of tasks and achieve a balance between the supply and demand of tasks and auditors.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of data processing technology, specifically to the field of information security technology, and in particular to a method, device, system, electronic device and storage medium for allocating audit tasks. Background Art

[0002] Currently, some services require manual review. For example, the review process for live streaming resources requires continuous content monitoring and review. This is because live streaming is an ongoing media resource, and it's impossible to predict or determine that subsequent content will not violate regulations based solely on current content. This requires that reviewers monitor the live stream at all times. However, the number of live streamers and reviewers is not proportional. It's obviously uneconomical for one reviewer to monitor only one live stream. Reviewers need to monitor multiple live streams simultaneously to monitor online content in real time. This requires a task allocation mechanism to ensure that all live streams are assigned to the appropriate reviewer. Summary of the Invention

[0003] The present disclosure provides a method, device, electronic device and storage medium for allocating audit tasks.

[0004] According to a first aspect of the present disclosure, a method for assigning audit tasks is provided, comprising:

[0005] Check the task status of each audit task in the task pool, where the task status includes pending, assigned, and deleted;

[0006] In response to detecting that there is an audit task with a target task status in the task pool, a task allocation process corresponding to the target task status is triggered, where the target task status is either to be allocated or deleted.

[0007] According to a second aspect of the present disclosure, there is provided a device for allocating audit tasks, comprising:

[0008] The first detection module is used to detect the task status of each audit task in the task pool, wherein the task status includes pending assignment, assigned and deleted;

[0009] The first trigger module is configured to trigger a task allocation process corresponding to a target task status in response to detecting that there is an audit task in a target task status in a task pool, where the target task status is either to be allocated or deleted.

[0010] According to a third aspect of the present disclosure, there is provided an electronic device, including:

[0011] At least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the method in any embodiment of the present disclosure.

[0012] According to a fourth aspect of the present disclosure, a system for allocating audit tasks is provided, comprising:

[0013] Task pool, used to store task data and task status of each audit task;

[0014] a queue metadata database, for storing queue data of each queue, wherein the queue data includes at least one of the number of tasks, auditor status, auditor business information, and a task number threshold;

[0015] The task allocator includes the allocating device in any embodiment of the present disclosure or the electronic device in any embodiment of the present disclosure.

[0016] According to a fifth aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, where the computer instructions are used to enable a computer to execute the method in any embodiment of the present disclosure.

[0017] According to a sixth aspect of the present disclosure, a computer program product is provided, comprising a computer program, which implements the method in any embodiment of the present disclosure when executed by a processor.

[0018] The technical solution of the embodiment of the present disclosure provides an event-driven asynchronous audit task allocation method, which can realize flexible and stable allocation of tasks and achieve a balance between supply and demand of tasks and auditors.

[0019] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] The accompanying drawings are provided to facilitate a better understanding of the present invention and do not constitute a limitation of the present disclosure.

[0021] Figure 1 Flowchart of a method for allocating audit tasks in one embodiment of the present disclosure;

[0022] Figure 2 Flowchart of a method for allocating audit tasks in one embodiment of the present disclosure;

[0023] Figure 3 Flowchart of a method for allocating audit tasks in one embodiment of the present disclosure;

[0024] Figure 4 This is a diagram illustrating an application example of a method for allocating audit tasks in an embodiment of the present disclosure;

[0025] Figure 5 A block diagram of an apparatus for allocating audit tasks according to an embodiment of the present disclosure;

[0026] Figure 6 The present invention is a block diagram of an electronic device for implementing the method for allocating audit tasks according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0027] The following description of exemplary embodiments of the present disclosure is made in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding. These details should be considered as merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.

[0028] In the related art, task allocation is to directly distribute all tasks evenly to all auditors. For example: all tasks are stored in a data table in advance, and the currently online auditors are stored in another data table; when the current auditor obtains the monitoring task, it will first calculate the total number of tasks that are still valid and the number of online auditors, and then calculate the average number of tasks that should be distributed to each auditor as the number of tasks that the current auditor needs to monitor. Finally, based on the current auditor's position among the online auditors (for example, based on the order in the data table), the interval of the tasks that need to be assigned to the current auditor in the entire task table is calculated, and then the tasks that the current auditor needs to monitor are determined, and the task details are assembled and returned to the current auditor. However, this method will cause the tasks assigned to the auditor to change significantly when the number of tasks or auditors changes, and the auditor will not be able to form audit continuity.

[0029] The present disclosure aims to provide an event-driven asynchronous audit task allocation method that can achieve stable task allocation and achieve a balance between the supply and demand of tasks and auditors. For example, the method of the present disclosure can be executed by a task allocator (Worker).

[0030] Figure 1 Flowchart showing the method for assigning audit tasks according to an embodiment of the present disclosure. Figure 1 As shown, the method for assigning the audit task may include:

[0031] Step S101: Detect the task status of each audit task in the task pool, where the task status includes pending, assigned, and deleted;

[0032] Step S102 : In response to detecting that there is an audit task in the task pool with a target task status, triggering a task allocation process corresponding to the target task status, where the target task status is either to be allocated or deleted.

[0033] The Task Pool is responsible for storing the task data and status of each audit task. For example, 0 indicates pending assignment, 1 indicates assigned, and 2 indicates deleted.

[0034] When it is detected that there are audit tasks to be assigned or deleted in the task pool, the task allocator will be automatically triggered to execute the task assignment process.

[0035] That is to say, the task allocation in the embodiment of the present disclosure is based on event triggering, that is, the task status will trigger the task allocation, and the task allocation and event triggering are executed asynchronously. Whether the task allocation is completed does not affect the next triggering of the task allocation, thereby achieving stable allocation of tasks and achieving a real-time balance between the supply and demand of tasks and auditors.

[0036] In one embodiment, in step S102, in response to detecting that there is an audit task with a target task status in the task pool, triggering a task allocation process corresponding to the target task status may include:

[0037] In the case of detecting that there are audit tasks to be assigned in the task pool, determining a first target queue from the multiple queues to be selected based on queue data of the multiple queues to be selected, wherein the queue data includes at least one of the number of tasks, auditor status, auditor business information, and a task number threshold;

[0038] The audit task to be assigned is assigned to the first target queue, and the task status of the audit task to be assigned is changed to assigned in the task pool, and the task quantity of the first target queue is updated.

[0039] In one example, the task executor may determine the first target queue based on the number of tasks in each queue to be selected. For example, if the first target queue has the least number of tasks among the queues to be selected, the audit task to be assigned may be assigned to the first target queue.

[0040] In another example, the task executor can determine the first target queue based on the auditor's business information corresponding to each pending queue and the business information corresponding to the audit task to be assigned. The business information may include business domain and priority, and the auditor's business information may include the auditor's business domain and auditor's business level. For example, if the audit task to be assigned belongs to a high-priority business, the pending queue corresponding to the auditor with the high business level will be selected as the first target queue.

[0041] In another example, when determining the first target queue, the task executor may also consider a task quantity threshold for the candidate queue. The task quantity threshold may be a maximum value, a minimum value, or a range between the maximum and minimum values. The task quantity threshold may be set based on the auditor's business capabilities.

[0042] After the task executor assigns the audit task to the first target queue, it changes the task status of the audit task in the task pool to assigned, and at the same time, updates the number of tasks corresponding to the first target queue, that is, adds 1.

[0043] In the embodiment of the present disclosure, one auditor corresponds to one queue. The "queue" in the embodiment of the present disclosure is responsible for storing the auditor's current audit tasks, including both the queue to be selected and the target queue, such as the first target queue, the second target queue and the third target queue.

[0044] Based on this, when an audit task to be assigned appears in the task pool, the task executor will be triggered to assign the audit task, that is, the status of the task to be assigned will trigger a new task assignment, and the task assignment and event triggering are executed asynchronously. Whether the new task assignment is completed does not affect other types of task assignment events, thereby achieving stable task allocation, achieving a real-time balance between supply and demand of tasks and auditors, and being able to adjust task weights according to business types to meet diverse task assignment needs.

[0045] In one embodiment, in step S102, in response to detecting that there is an audit task with a target task status in the task pool, triggering a task allocation process corresponding to the target task status may also include: obtaining queue data of multiple queues to be selected from a queue metadata database.

[0046] The Queue Meta database maintains and monitors queue metadata for each queue, such as queue name, auditor status (online, online, offline), number of tasks, auditor business information, and task thresholds. This facilitates data management and prevents errors. Furthermore, information acquisition and task assignment can be separated and executed asynchronously, avoiding coupling between assignment logic and business operations. This allows the method to be flexibly reused in various business scenarios.

[0047] In one embodiment, in step S102, in response to detecting that there is an audit task with a target task status in the task pool, triggering a task allocation process corresponding to the target task status may include:

[0048] When it is detected that a deleted audit task exists in the task pool and a bound queue exists for the deleted audit task, the deleted audit task is deleted from the bound queue and the number of tasks in the bound queue is updated.

[0049] Exemplarily, when the task distributor detects in the background that the status is deleted but there are still audit tasks bound to the queue, it starts the task cleanup process, that is, deletes the audit task from the bound queue and updates the task quantity of the corresponding queue metadata.

[0050] Based on this, when a deleted audit task appears in the task pool, the task executor will be triggered to clean up the audit task, thereby avoiding data redundancy and making the allocation more reasonable.

[0051] In one embodiment, Figure 2 As shown, the method for assigning audit tasks in the embodiment of the present disclosure may further include:

[0052] Step S201: Check the auditor status of multiple queues to be selected in the queue metadata database;

[0053] Step S202 : in response to detecting that a second target queue with a target auditor status exists in the queue metadata database, triggering a task allocation process for the second target queue, wherein the target auditor status includes either online or offline.

[0054] The auditor status includes online, offline, and online. Online means the auditor is newly online.

[0055] In other words, the event-triggered task allocation in this embodiment also includes monitoring and triggering of queue metadata. That is, auditors logging on and off trigger the task allocator to execute the corresponding task allocation process. Auditor status monitoring is separated from task allocation and executed asynchronously, thus avoiding coupling of allocation logic with the business. This allows for stable task allocation, achieving a real-time balance between task and auditor supply and demand, and is reusable across various business scenarios.

[0056] In one embodiment, in step S202, in response to detecting that a second target queue with a target auditor status exists in the queue metadata database, triggering a task allocation process for the second target queue includes:

[0057] In a case where the second target queue with an auditor status of online is detected, a third target queue is determined from the plurality of queues to be selected based on queue data of the plurality of queues to be selected, wherein the queue data includes at least one of the number of tasks, the auditor status, the auditor's business information, and a task number threshold;

[0058] At least one audit task in the third target queue is seconded to the second target queue, and the task quantities of the second target queue and the third target queue are updated in the queue metadata database.

[0059] In one example, the task executor may determine the third target queue based on the number of tasks in each queue to be selected. For example, if the third target queue has the largest number of tasks among the queues to be selected, one or more audit tasks in the third target queue may be seconded to the second target queue.

[0060] In another example, the task executor may determine the third target queue based on the business information of the auditors corresponding to each queue to be selected and the business information corresponding to the audit task to be assigned.

[0061] In yet another example, the task executor may further consider a threshold value of the number of tasks in the queue to be selected when determining the third target queue.

[0062] After the task executor transfers the audit task in the third target queue to the second target queue, it updates the task quantities corresponding to the second target queue and the third target queue in the queue metadata database.

[0063] Based on this, when a second target queue with a newly added auditor appears in the queue metadata, the task executor will be triggered to second the task, thereby achieving a stable distribution of tasks and achieving a real-time balance between the supply and demand of tasks and auditors.

[0064] For example, in the process of executing task secondment, it is necessary to comprehensively consider the last assigned time of the audit task, and second the audit tasks with newer assignment times to the second target queue in reverse order. This allows the audit tasks that have been monitored for a long time to continue to remain with the original auditor and maintain continuity.

[0065] In one embodiment, in step S202, in response to detecting that a second target queue with a target auditor status exists in the queue metadata database, triggering a task allocation process for the second target queue includes:

[0066] When it is detected that there is a second target queue whose auditor status is offline, the audit tasks in the second target queue are allocated to the task pool, and the number of tasks of the second target queue is updated in the queue metadata database, and the task status of the audit tasks in the second target queue in the task pool is changed to pending assignment.

[0067] For example, when the task allocator detects in the background that an auditor has gone offline but the number of his tasks is still greater than 0, it will start the task release process, delete the audit task from the queue of the offline auditor, update its task number, and assign it to the task pool, and change its task status from assigned to pending assignment, thereby triggering the task allocation process in step 102.

[0068] Based on this, the auditor offline event-driven and task allocation can be executed asynchronously without unnecessary coupling, and task allocation can be implemented flexibly and efficiently.

[0069] In one embodiment, Figure 3 As shown, the method of this embodiment may further include:

[0070] Step S301: Detecting whether there is a fourth target queue that does not comply with a preset allocation policy based on queue data of a plurality of queues to be selected in a queue metadata database, wherein the queue data includes at least one of a task quantity, an auditor status, an auditor's business information, and a task quantity threshold;

[0071] Step S302: In response to detecting the existence of a fourth target queue, triggering a task allocation process for the fourth target queue.

[0072] The preset allocation strategy can be a maximum or minimum number of tasks. For example, if the number of tasks in each queue is unbalanced due to the on / off broadcast of live broadcasts, a task secondment process can be implemented to achieve a stable distribution of tasks and achieve a real-time balance between the supply and demand of tasks and auditors.

[0073] In one embodiment, step S302 may include:

[0074] Determine a fifth target queue from a plurality of queues to be selected, wherein, among the queues to be selected, the fourth target queue has the largest number of tasks, and the fifth target queue has the smallest number of tasks;

[0075] At least one audit task in the fourth target queue is seconded to the fifth target queue, and the task quantities of the fourth target queue and the fifth target queue are updated in the queue metadata database.

[0076] That is to say, the preset allocation strategy can be the maximum number of tasks, so that when the number of tasks in the fourth target queue is the largest, its audit tasks can be diverted in time, thereby flexibly allocating audit tasks and achieving a real-time balance between supply and demand of tasks and auditors.

[0077] For example, in the process of executing task secondment, it is necessary to comprehensively consider the last assigned time of the audit task, and second the audit tasks with newer assignment times to the fifth target queue in reverse order. This allows the audit tasks that have been monitored for a long time to continue to remain with the original auditor and maintain continuity.

[0078] The following combination Figure 4 An application example of the embodiment of the present disclosure is introduced. Figure 4As shown in the example, the audit task allocation system may include a human audit module, a task pool, a queue, and a task dispatcher. The task pool, queue, and task dispatcher can be found in the above descriptions and will not be described in detail here.

[0079] The Human Review Module can perform the entry of audit tasks, that is, storing the task data of the audit task in the task pool and marking its task status as pending assignment. The Human Review Module can also perform the deletion of audit tasks, that is, deleting the task data of the audit task from the task pool and marking its task status as deleted.

[0080] In addition, the allocation information of each link in the execution of the entire task allocation method will be recorded to form a monitoring list. The human review module can obtain the monitoring list to facilitate problem discovery and location.

[0081] There can be multiple task dispatchers, processing different partitions in parallel. For example, worker 1 is responsible for partition 1, which corresponds to a portion of the data in the task pool and queue metadata database; worker 2 is responsible for partition 2, which corresponds to a portion of the data in the task pool and queue metadata database.

[0082] It should be noted that the review and deletion of audit tasks, and the online and offline auditors are connected to the task allocation system as events. These external changes will trigger the processing of the task allocation system, but this process is carried out asynchronously. The system will not wait until the allocation is completed to notify the auditor of the successful online status. Instead, it will return success immediately after the event is triggered. The actual task allocation is completed asynchronously in the background.

[0083] The following describes the main execution process of the audit task assignment method based on the above audit system, taking live broadcast as the audit task:

[0084] (1) When a new live broadcast starts, the review module will add the live broadcast task to the task pool, and the review process ends.

[0085] (2) After the task allocator detects that there are tasks to be assigned in the background, it will start the allocation process. It will find the auditor who currently holds the least number of tasks and assign the task to him (update the queue metadata and add the task to the queue). It should be noted that the allocation strategy can be adjusted according to different businesses, such as the example in step S102 above.

[0086] (3) When a live broadcast is shut down, the human review module will update the status of the live broadcast task in the task pool to deleted, and the deletion task process ends.

[0087] (4) When the task dispatcher detects that a live broadcast has been deleted but there is still task data in the bound queue in the background, it starts the task cleanup process, that is, deleting the live broadcast from the bound queue and updating the number of tasks in the bound queue.

[0088] (5) When a new auditor comes online to start monitoring, the status will be updated to online in the queue metadata database, and the online process ends.

[0089] (6) When the task allocator detects that the auditor has the least number of tasks assigned (0), it will second the tasks from other auditors to this auditor. When seconding tasks, it is necessary to comprehensively consider the last time the task was assigned and second the tasks with the latest assignment time to the auditor in reverse order. This way, tasks that have been monitored for a long time can continue to be retained by the original auditor to maintain consistency.

[0090] (7) When an auditor exits monitoring, the status will be updated to offline in the update queue metadata database, and the exit process ends.

[0091] (8) If the task allocator detects that the number of tasks for the offline auditor is still greater than 0, it will start the task release process. Note that task release does not directly assign tasks, but only removes the task from the offline auditor's queue and updates its task number and task status to pending assignment. The actual task assignment will be handled by the new task assignment process, which is the process described in step (2).

[0092] (9) During the monitoring process, the number of tasks assigned to each auditor may be unbalanced due to the on / off switching of live broadcasts. This will be handled by the task allocator, that is, the process described in step (6). Each time, the number of tasks of the auditor with the least tasks will be adjusted, and task secondment will be initiated.

[0093] (10) The processing flow of the task allocator in the above steps will record the corresponding allocation records to facilitate problem location.

[0094] Based on this, the assignment of tasks can be separated from business logic such as review, audit monitoring, etc. as much as possible, so that subsequent adjustments and changes to the assignment logic can only modify the assignment logic and will not affect the business logic. In addition, the component-based design approach can concentrate the logic of individual components (such as review modules, task pools, queues, queue metadata databases, and task allocators) as much as possible in one aspect. In this way, there is no need to consider complex business scenarios during implementation, and it is only necessary to ensure that the capabilities provided by the components are correct. On this basis, the entire process of monitoring assignment is driven by various events (task additions and reductions, auditors going online and offline), and the task allocator completes the asynchronous processing, without unnecessary coupling, and is flexible and efficient.

[0095] The tasks assigned in this way are relatively stable. In the absence of task transfer, a task will be assigned to the same auditor from beginning to end, so that the auditor can easily maintain continuous monitoring and quickly discover online violations; it can quickly support personalized task requirements, such as task locking and support for adjusting task weights; at the same time, it decouples business logic and task allocation, and other businesses can directly reuse the task allocation process without repeated implementation to meet their own needs, thereby improving the scalability of the system and reducing upgrade and iteration costs; and the entire allocation process records the corresponding allocation records, which are traceable and convenient for data analysis or problem location.

[0096] Figure 5 FIG. 1 shows a device for allocating audit tasks according to an embodiment of the present disclosure. Figure 5 As shown, the audit task allocation device 500 includes:

[0097] The first detection module 501 is used to detect the task status of each audit task in the task pool, wherein the task status includes pending assignment, assigned, and deleted;

[0098] The first trigger module 502 is configured to trigger a task allocation process corresponding to a target task status in response to detecting that there is an audit task in the task pool, where the target task status is either to be allocated or deleted.

[0099] In one embodiment, the first triggering module 501 includes:

[0100] a first target queue determining unit, configured to, upon detecting that there are audit tasks to be assigned in the task pool, determine a first target queue from the plurality of queues to be selected based on queue data of the plurality of queues to be selected, wherein the queue data includes at least one of the number of tasks, auditor status, auditor business information, and a task number threshold;

[0101] The allocation unit is used to allocate the audit task to be allocated to the first target queue, change the task status of the audit task to be allocated to allocated in the task pool, and update the task quantity of the first target queue.

[0102] In one embodiment, the first triggering module 501 further includes:

[0103] The queue data acquisition unit is used to acquire queue data of multiple queues to be selected from the queue metadata database.

[0104] In one embodiment, the first triggering module 501 is further configured to:

[0105] When it is detected that a deleted audit task exists in the task pool and a bound queue exists for the deleted audit task, the deleted audit task is deleted from the bound queue and the number of tasks in the bound queue is updated.

[0106] In one embodiment, the audit task allocation device 500 further includes:

[0107] The second detection module is used to detect the auditor status corresponding to multiple queues to be selected in the queue metadata database;

[0108] The second trigger module is configured to trigger a task allocation process for the second target queue in response to detecting that a second target queue with a target auditor status exists in the queue metadata database, wherein the target auditor status includes either online or offline.

[0109] In one embodiment, the second trigger module includes:

[0110] a second detection unit, configured to, upon detecting the presence of a second target queue whose auditor status is online, determine a third target queue from the plurality of queues to be selected based on queue data of the plurality of queues to be selected, wherein the queue data includes at least one of a task quantity, an auditor status, auditor business information, and a task quantity threshold;

[0111] The first secondment unit is configured to second at least one audit task in the third target queue to the second target queue, and update the task quantities of the second target queue and the third target queue in the queue metadata database.

[0112] In one embodiment, the second trigger module is further configured to:

[0113] When it is detected that there is a second target queue whose auditor status is Auditor Offline, the audit tasks in the second target queue are allocated to the task pool, and the number of tasks of the second target queue is updated in the queue metadata database, and the task status of the audit tasks in the second target queue in the task pool is changed to To be Assigned.

[0114] In one embodiment, the audit task allocation device 500 further includes:

[0115] a third detection module, configured to detect whether there is a fourth target queue that does not comply with the preset allocation policy based on queue data of a plurality of candidate queues in the queue metadata database, wherein the queue data includes at least one of a task quantity, an auditor status, an auditor business information, and a task quantity threshold;

[0116] The third trigger module is configured to trigger a task allocation process for the fourth target queue in response to detecting the existence of the fourth target queue.

[0117] In one embodiment, the third trigger module includes:

[0118] a fifth target queue determining unit, configured to determine a fifth target queue from a plurality of queues to be selected, wherein, among the queues to be selected, the fourth target queue has the largest number of tasks and the fifth target queue has the smallest number of tasks;

[0119] The second secondment unit is configured to second at least one audit task in the fourth target queue to the fifth target queue, and update the number of tasks in the fourth target queue and the fifth target queue.

[0120] The functions and effects of each unit, module or sub-module in each device of the embodiments of the present disclosure can be found in the corresponding description in the above method embodiments, and will not be repeated here.

[0121] The acquisition, storage and application of user personal information that may be involved in the technical solutions disclosed herein shall comply with the provisions of relevant laws and regulations and shall not violate public order and good morals.

[0122] According to another aspect of an embodiment of the present disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the method in any embodiment of the present disclosure.

[0123] According to another aspect of an embodiment of the present disclosure, a system for allocating audit tasks is provided, including: a task pool for storing task data and task status of each audit task; a queue metadata database for storing queue data of each queue, wherein the queue data includes at least one of the number of tasks, auditor status, auditor business information and task number threshold; a task allocator, including the allocation device in any embodiment of the present disclosure or the electronic device in an embodiment of the present disclosure.

[0124] According to another aspect of an embodiment of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided. The computer instructions are used to enable a computer to execute the method in any embodiment of the present disclosure.

[0125] According to another aspect of an embodiment of the present disclosure, a computer program product is provided, including a computer program, which implements the method in any embodiment of the present disclosure when executed by a processor.

[0126] Figure 6A schematic block diagram of an example electronic device 600 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are provided as examples only and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0127] like Figure 6 As shown, the device 600 includes a computing unit 601, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 602 or a computer program loaded from a storage unit 608 into a random access memory (RAM) 603. Various programs and data required for the operation of the device 600 can also be stored in the RAM 603. The computing unit 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0128] Various components in device 600 are connected to I / O interface 605, including an input unit 606, such as a keyboard, mouse, etc.; an output unit 607, such as various types of displays, speakers, etc.; a storage unit 608, such as a magnetic disk, optical disk, etc.; and a communication unit 609, such as a network card, modem, wireless communication transceiver, etc. The communication unit 609 allows device 600 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0129] The computing unit 601 can be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units that run machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 601 performs the various methods and processes described above, such as the method for allocating audit tasks. For example, in some embodiments, the method for allocating audit tasks can be implemented as a computer software program that is tangibly contained in a machine-readable medium, such as a storage unit 608. In some embodiments, part or all of the computer program can be loaded and / or installed on the device 600 via the ROM 602 and / or the communication unit 609. When the computer program is loaded into the RAM 603 and executed by the computing unit 601, one or more steps of the method for allocating audit tasks described above can be performed. Alternatively, in other embodiments, the computing unit 601 can be configured to perform the method for allocating audit tasks by any other appropriate means (e.g., by means of firmware).

[0130] Various embodiments of the systems and techniques described herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0131] The program code for implementing the method of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device so that when the program code is executed by the processor or controller, the functions / operations specified in the flow chart and / or block diagram are implemented. The program code can be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0132] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in conjunction with an instruction execution system, device or equipment. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium can include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0133] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0134] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), and the Internet.

[0135] A computer system may include a client and a server. The client and server are generally remote from each other and typically interact through a communication network. The client-server relationship arises through computer programs running on the respective computers and having a client-server relationship with each other. The server may be a cloud server, a server in a distributed system, or a server integrated with a blockchain.

[0136] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in this disclosure can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved. This is not a limitation herein.

[0137] The above specific embodiments do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure shall be included within the scope of protection of this disclosure.

Claims

1. A method for assigning audit tasks, comprising: Detecting the task status of each audit task in the task pool, wherein the task status includes pending assignment, assigned, and deleted; In response to detecting that there is an audit task in the task pool with a target task status, triggering a task allocation process corresponding to the target task status, where the target task status is either to be allocated or deleted; In response to detecting that there is an audit task with a target task status in the task pool, triggering a task allocation process corresponding to the target task status includes: In the case of detecting that there are audit tasks to be assigned in the task pool, determining a first target queue from the multiple queues to be selected based on queue data of the multiple queues to be selected, wherein the queue data includes at least one of the number of tasks, auditor status, auditor business information, and a task number threshold; Allocate the audit task to be allocated to the first target queue, change the task status of the audit task to be allocated to allocated in the task pool, and update the task quantity of the first target queue; In the case where it is detected that there is a deleted audit task in the task pool, and the deleted audit task exists in a bound queue, the deleted audit task is deleted from the bound queue, and the task quantity of the bound queue is updated; Check the auditor status of multiple candidate queues in the queue metadata database; In response to detecting that there is a second target queue with a target auditor status in the queue metadata database, a task allocation process for the second target queue is triggered, wherein the target auditor status includes either online or offline; in the case that it is detected that there is a second target queue with an auditor status of offline, the audit tasks in the second target queue are allocated to the task pool, and the number of tasks of the second target queue is updated in the queue metadata database, and the task status of the audit tasks in the second target queue in the task pool is changed to pending allocation.

2. The allocation method according to claim 1, in response to detecting that there is an audit task with a target task status in the task pool, triggering a task allocation process corresponding to the target task status, further comprising: The queue data of multiple queues to be selected are obtained from a queue metadata database.

3. The distribution method according to claim 1, wherein: In response to detecting that a second target queue with a target auditor status exists in the queue metadata database, triggering a task allocation process for the second target queue, including: In a case where a second target queue with an auditor status of online is detected, a third target queue is determined from the plurality of queues to be selected based on queue data of the plurality of queues to be selected, wherein the queue data includes at least one of the number of tasks, the auditor status, the auditor's business information, and a task number threshold; At least one audit task in the third target queue is seconded to the second target queue, and the task quantities of the second target queue and the third target queue are updated in the queue metadata database.

4. The allocation method according to claim 1, further comprising: detecting, based on queue data of a plurality of queues to be selected in a queue metadata database, whether there is a fourth target queue that does not comply with a preset allocation policy, wherein the queue data includes at least one of a task quantity, an auditor status, an auditor business information, and a task quantity threshold; In response to detecting the existence of the fourth target queue, a task allocation process for the fourth target queue is triggered.

5. The distribution method according to claim 4, wherein: Triggering a task allocation process for the fourth target queue, including: Determine a fifth target queue from a plurality of queues to be selected, wherein, among the queues to be selected, the fourth target queue has the largest number of tasks, and the fifth target queue has the smallest number of tasks; At least one audit task in the fourth target queue is seconded to the fifth target queue, and the task quantities of the fourth target queue and the fifth target queue are updated in the queue metadata database.

6. A device for allocating audit tasks, comprising: The first detection module is used to detect the task status of each audit task in the task pool, wherein the task status includes to be assigned, assigned and deleted; a first triggering module configured to, in response to detecting that there is an audit task in the task pool with a target task status, trigger a task allocation process corresponding to the target task status, where the target task status is either to be allocated or deleted; The second detection module is used to detect the auditor status corresponding to multiple queues to be selected in the queue metadata database; a second triggering module configured to, in response to detecting the presence of a second target queue with a target auditor status in the queue metadata database, trigger a task allocation process for the second target queue, wherein the target auditor status includes either online or offline; in a case where it is detected that there is a second target queue with an auditor status of offline, allocate the audit tasks in the second target queue to the task pool, update the task quantity of the second target queue in the queue metadata database, and change the task status of the audit tasks in the second target queue to pending allocation in the task pool; Wherein, the first trigger module includes: a first target queue determining unit, configured to, upon detecting that there are audit tasks to be assigned in the task pool, determine a first target queue from a plurality of queues to be selected based on queue data of the plurality of queues to be selected, wherein the queue data includes at least one of the number of tasks, auditor status, auditor business information, and a task number threshold; and upon detecting that there are deleted audit tasks in the task pool, and upon detecting that there is a bound queue for the deleted audit task, deleting the deleted audit task from the bound queue and updating the number of tasks in the bound queue; The allocating unit is configured to allocate the audit task to be allocated to the first target queue, change the task status of the audit task to be allocated to allocated in the task pool, and update the task quantity of the first target queue.

7. The dispensing device according to claim 6, wherein the first trigger module further comprises: The queue data acquisition unit is used to acquire queue data of multiple queues to be selected from the queue metadata database.

8. The dispensing device according to claim 7, wherein The second trigger module includes: a second detection unit, configured to, upon detecting the presence of a second target queue whose auditor status is online, determine a third target queue from the plurality of queues to be selected based on queue data of the plurality of queues to be selected, wherein the queue data includes at least one of a task quantity, an auditor status, auditor business information, and a task quantity threshold; The first secondment unit is configured to secondment at least one audit task in the third target queue to the second target queue, and update the number of tasks of the second target queue and the third target queue in the queue metadata database.

9. The dispensing device according to claim 6, further comprising: a third detection module, configured to detect whether there is a fourth target queue that does not comply with the preset allocation policy based on queue data of a plurality of queues to be selected in the queue metadata database, wherein the queue data includes at least one of the number of tasks, auditor status, auditor business information, and a task number threshold; The third triggering module is configured to trigger a task allocation process for the fourth target queue in response to detecting the existence of the fourth target queue.

10. The dispensing device according to claim 9, wherein The third trigger module includes: a fifth target queue determining unit, configured to determine a fifth target queue from a plurality of queues to be selected, wherein, among the queues to be selected, the fourth target queue has the largest number of tasks and the fifth target queue has the smallest number of tasks; The second secondment unit is configured to second at least one audit task in the fourth target queue to the fifth target queue, and update the task quantities of the fourth target queue and the fifth target queue in the queue metadata database.

11. An electronic device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 5.

12. A system for allocating audit tasks, comprising: Task pool, used to store task data and task status of each audit task; A queue metadata database, configured to store queue data of each queue, wherein the queue data includes at least one of the number of tasks, auditor status, auditor business information, and a task number threshold; A task allocator comprising the allocating device according to any one of claims 6 to 10 or the electronic device according to claim 11.

13. A non-transitory computer-readable storage medium storing computer instructions, characterized in that: The computer instructions are used to enable a computer to execute the method according to any one of claims 1 to 5.

14. A computer program product comprising a computer program, which, when executed by a processor, implements the method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Loan approval task fair automatic order dispatching system based on task priority

    CN109064005A

  • Audit monitoring method and device, electronic equipment and storage medium

    CN109803176A