CN110532108B - Resume delivery task processing method, device, server and system - Google Patents

Resume delivery task processing method, device, server and system Download PDF

Info

Publication number
CN110532108B
CN110532108B CN201910753782.9A CN201910753782A CN110532108B CN 110532108 B CN110532108 B CN 110532108B CN 201910753782 A CN201910753782 A CN 201910753782A CN 110532108 B CN110532108 B CN 110532108B
Authority
CN
China
Prior art keywords
task
resume
delivery
queue
tasks
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.)
Active
Application number
CN201910753782.9A
Other languages
Chinese (zh)
Other versions
CN110532108A (en
Inventor
周鹏
侯宝胜
王征桂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Lago Network Technology Co ltd
Original Assignee
Beijing Lago Network Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Lago Network Technology Co ltd filed Critical Beijing Lago Network Technology Co ltd
Priority to CN201910753782.9A priority Critical patent/CN110532108B/en
Publication of CN110532108A publication Critical patent/CN110532108A/en
Application granted granted Critical
Publication of CN110532108B publication Critical patent/CN110532108B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/105Human resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a method for processing resume delivery tasks, which is suitable for being executed in a server, wherein the server is in communication connection with a data memory, a task library and a backup queue are arranged in the data memory, and a task queue is arranged in the server, and the method comprises the following steps: the received resume delivery tasks are submitted to a task queue after being backed up in a task library, and the resume delivery tasks comprise resume data, delay time, priority and task states; taking a preset number of resume delivery tasks with delay time exceeding the withdrawable time and the highest priority out of the task queue in a reverse order, and backing up the task states of the taken tasks in a backup queue; sequentially delivering orders of the taken resume delivery tasks, and synchronously updating task states in a backup queue in the delivery process; and if the retrieved resume delivery task is lost, acquiring the task state of the task before the loss from the backup queue, acquiring resume data of the task from the task library, and recovering the resume delivery task. The invention also discloses a corresponding resume delivery task processing device and a server.

Description

Resume delivery task processing method, device, server and system
Technical Field
The invention relates to the technical field of data processing, in particular to a method, a device, a server and a system for processing resume delivery tasks.
Background
With the rapid development of the internet technology, network application and recruitment become a main approach for job seekers to apply work and recruit employees by personnel units. The user submits the resume after editing the resume on the website, and the resume is processed by the server after being submitted. But sometimes hardware failure or unexpected factors of the server occur, which leads to server crash and system data loss. Alternatively, data loss may also occur during the generation of delivery orders for resume deliveries. Therefore, it is desirable to provide an effective data recovery mechanism to ensure data security.
Disclosure of Invention
In view of the above problems, the present invention provides a method, an apparatus, a server and a system for processing resume delivery tasks, so as to try to solve or at least solve the above existing problems.
According to one aspect of the invention, a method for processing resume delivery tasks is provided, which is suitable for being executed in a server, the server is connected with a data storage in a communication way, a task library and a backup queue are arranged in the data storage, and a task queue is arranged in the server, the method comprises the following steps: the received resume delivery tasks are backed up in a task library and then submitted to a task queue, wherein the resume delivery tasks comprise resume data, delay time, priority and task states; taking a preset number of resume delivery tasks with delay time exceeding the withdrawable time and the highest priority out of the task queue in a reverse order, and backing up the task states of the taken tasks in a backup queue; sequentially delivering orders to the taken resume delivery tasks, and synchronously updating task states in a backup queue in the delivery process; and if the resume delivery task taken out is lost, acquiring the task state of the task before the loss from the backup queue, acquiring resume data of the task from the task library, and recovering the resume delivery task.
Optionally, in the method for processing resume delivery tasks according to the present invention, the method further includes: and if the resume delivery task in the task queue is lost, acquiring resume data, delay time, priority and task state of the task from the task library, and recovering the resume delivery task.
Optionally, in the method for processing resume delivery tasks according to the present invention, the resume delivery task loss in the task queue includes loss of a single resume delivery task or loss of all resume delivery tasks due to a server failure.
Optionally, in the method for processing resume delivery tasks according to the present invention, the method further includes: receiving a resume withdrawal request of a resume submitted by a user, inquiring the current delay time of the resume from the task queue, and deleting the resume delivery task from the task library and the task queue if the delay time is less than the withdrawal time.
Optionally, in the method for processing resume delivery tasks according to the present invention, the task state includes at least one of: the system comprises a cancel state of the task being withdrawn, a waiting state of the task waiting to be delivered, an execution state of the task being delivered, a completion state of the task delivery success, and an exception state of the task delivery exception.
Optionally, in the method for processing resume delivery tasks according to the present invention, the method further includes: and if the resume delivery task is in the executing state before being lost, immediately carrying out order delivery on the resume delivery task after recovering the resume delivery task.
Optionally, in the method for processing resume delivery tasks according to the present invention, the priority of the resume delivery tasks is related to at least one of the following factors: delivery time, level of delivery user, resume integrity, matching degree of resume content and delivery position requirement, and demand degree of delivery position.
Optionally, in the method for processing resume delivery tasks according to the present invention, the data storage further includes an order library and a delivery library, and the step of delivering the order to the retrieved resume delivery tasks includes: generating a delivery order of the resume delivery task, and submitting the delivery order to an order library; and inquiring whether the delivery order exists in the order library, if so, determining that the delivery is successful, updating the delivery library successfully, and updating the corresponding task states in the task library and the backup queue to be the completion state.
Optionally, in the method for processing resume delivery tasks according to the present invention, after the task delivery succeeds, the method further includes: and storing the resume data of the resume delivery tasks and the position data of the delivered positions, and regularly deleting the resume delivery tasks in a finished state in the task library and the backup queue.
Optionally, in the method for processing resume delivery tasks according to the present invention, the delay time is a time from the server receiving the resume to the current time, and the delay time is counted to the withdrawable time at the longest.
Optionally, in the method for processing resume delivery tasks according to the present invention, the predetermined number is 500, the withdrawable time is 10s, the periodic deletion time of the task library is 3 days, and the periodic deletion time of the backup queue is 1h.
According to another aspect of the present invention, there is provided a resume delivery task processing apparatus adapted to reside in a server, the server being communicatively connected to a data store, wherein the data store has a task library and a backup queue, and the server has a task queue, the apparatus comprising: the task submitting module is suitable for submitting the received resume delivery tasks to a task queue after backing up in a task library, wherein the resume delivery tasks comprise resume data, delay time, priority and task state; the task taking-out module is suitable for taking out resume delivery tasks with preset number of delays exceeding withdrawable time and highest priority from the task queue in a reverse order and backing up the task states of the taken-out tasks in the backup queue; the task delivery module is suitable for sequentially delivering orders of the taken resume delivery tasks and synchronously updating task states in the backup queue in the delivery process; and the task recovery module is suitable for acquiring the task state of the task from the backup queue, acquiring resume data of the task from the task library and recovering the resume delivery task when the retrieved resume delivery task is lost.
According to another aspect of the present invention, there is provided a server comprising: one or more processors; a memory; and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs when executed by the processors implement the steps of the method for processing resume delivery tasks as described above.
According to yet another aspect of the present invention, there is provided a readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a server, implement the steps of the method of processing resume delivery tasks as described above.
According to another aspect of the present invention, there is provided a resume delivery task processing system, including: one or more clients adapted to submit resume delivery tasks; the server comprises a task queue and a service queue, wherein the task queue is suitable for processing received resume delivery tasks; and the data storage comprises a task library and a backup queue and is suitable for backing up resume delivery tasks.
According to the technical scheme of the invention, the server is provided with the task queue, the data storage is provided with the task library and the backup queue, and the resume tasks submitted by the user are backed up in the task library and then submitted to the task queue. And then taking the tasks which are irrevocable and have high priority out of the task queue to deliver the orders, and synchronously updating the task state in the backup queue. Thus, if a task is lost after dequeuing, the state is retrieved from the backup queue and the data is retrieved from the task repository. If the task is lost in the queue, data is directly obtained from the task library. Therefore, not only can the effective recovery of the task be realized, but also the atomicity of the task execution can be ensured. Furthermore, the invention also provides a revocable mechanism, and the tasks can be revoked within the revocable time (10 s) after being submitted into the task queue. The data memory also comprises an order library and a delivery library, the delivery order is generated after the task is out of the queue and is submitted to the order library, if the delivery order is inquired in the order library, the delivery success is indicated, and the delivery library is updated successfully.
The foregoing description is only an overview of the technical solutions of the present invention, and the embodiments of the present invention are described below in order to make the technical means of the present invention more clearly understood and to make the above and other objects, features, and advantages of the present invention more clearly understandable.
Drawings
To the accomplishment of the foregoing and related ends, certain illustrative aspects are described herein in connection with the following description and the annexed drawings, which are indicative of various ways in which the principles disclosed herein may be practiced, and all aspects and equivalents thereof are intended to be within the scope of the claimed subject matter. The above and other objects, features and advantages of the present disclosure will become more apparent from the following detailed description read in conjunction with the accompanying drawings. Throughout this disclosure, like reference numerals generally refer to like parts or elements.
FIG. 1 shows a block diagram of a resume delivery task processing system 100, according to one embodiment of the invention;
FIG. 2 illustrates a block diagram of a computing device 200, according to one embodiment of the invention;
FIG. 3 illustrates a flow diagram of a method 300 of processing resume delivery tasks, according to one embodiment of the invention; and
FIG. 4 shows a block diagram of a processing device 400 for resume delivery tasks, according to one embodiment of the invention.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
FIG. 1 shows a schematic diagram of a processing system 100 for resume delivery tasks, according to one embodiment of the invention. As shown in FIG. 1, system 100 includes one or more clients 110, servers 120, and data stores 130. The server 120 is respectively connected with the clients 110 and the data storage 130 in a communication manner, and is used for receiving and processing resume delivery tasks submitted by the clients 110, and backing up and storing part of data in the data storage 130, so as to obtain the backup data from the data storage 130 when the data is lost. It should be noted that the resume post task processing system 100 of FIG. 1 is merely exemplary, and in particular implementations, there may be different numbers of servers 120 and data stores 130 in the system 100, and the invention is not limited to the number of devices included in the system.
The client 110 may include a corresponding user terminal device such as a personal computer, a notebook computer, a wireless telephone, a Personal Digital Assistant (PDA), or other computer device and communication device. The terminal device may access the internet by a wired method, or may access the internet by a wireless method such as 3G, 4G, wiFi, personal hotspot, ieee802.11x, bluetooth, or the like, and communicate with the server 120 via the internet.
The server 120 may be an individual server, or a server cluster formed by a plurality of servers, or a cloud computing service center, and a plurality of servers used for forming the server cluster or the cloud computing service center may reside in a plurality of geographic locations. The server 120 may read and write data in the data storage 130 via the internet in a wired or wireless manner.
Data store 130 may be located outside of server 120 as a remote database, or may be located at multiple geographic locations as a distributed database, such as HBase, for example. The data storage 130 may also be a storage server, which may be a single server, a server cluster composed of several servers, or a cloud computing service center, and a plurality of servers constituting the server cluster or the cloud computing service center may reside in a plurality of geographic locations. In summary, the data storage 130 is used for storing data, but the invention is not limited to the specific configuration and deployment of the data storage 130.
There is a task library and a backup queue in data store 130 and a task queue in server 120. The client 110 submits the resume delivery task to the server 120, and after receiving the task, the server 120 backs up the task in the task library and submits the task to the task queue. And then taking out the tasks with high priority from the task queue in batch to deliver the order, and synchronously updating the corresponding task state in the backup queue. And if the task is lost after being out of the queue, acquiring the task state from the backup queue and acquiring resume data from the task library. And if the task is lost in the queue, directly acquiring the resume delivery task from the task library. Here, the task library backup ensures that the delivery resume data is not lost, the backup queue stores the task state, and the task execution state is not lost and the atomicity of task execution is ensured. And if the user applies for the resume withdrawal within the withdrawable time, deleting the task from the task library and the task queue.
According to one embodiment of the present invention, the data storage 130 may further include an order store and a delivery store, the delivery order is generated after the task is out of the queue and enters the order store, and if the delivery order can be queried in the order store, the delivery store is updated successfully. The mechanism ensures the smooth delivery of the tasks and avoids the condition of missing the list. It should be noted that the task library, the backup queue, the order library, and the delivery library may be located in the same data storage 130, or may be located in a plurality of different data storages, and the specific storage locations of these databases are not limited by the present invention.
According to an embodiment of the invention, the server 120 and the data storage 130 in the resume delivery task processing system 100 described above may each be implemented by a computing device 200 as described below. FIG. 2 shows a block diagram of a computing device 200, according to one embodiment of the invention.
In a basic configuration 202, computing device 200 typically includes system memory 206 and one or more processors 204. A memory bus 208 may be used for communication between the processor 204 and the system memory 206.
Depending on the desired configuration, the processor 104 may be any type of processing, including but not limited to: a microprocessor (μ P), a microcontroller (μ C), a digital information processor (DSP), or any combination thereof. The processor 204 may include one or more levels of cache, such as a level one cache 210 and a level two cache 212, a processor core 214, and registers 216. Example processor cores 214 may include Arithmetic Logic Units (ALUs), floating Point Units (FPUs), digital signal processing cores (DSP cores), or any combination thereof. The example memory controller 218 may be used with the processor 204, or in some implementations the memory controller 218 may be an internal part of the processor 204.
Depending on the desired configuration, system memory 206 may be any type of memory, including but not limited to: volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory, etc.), or any combination thereof. System memory 106 may include an operating system 220, one or more applications 222, and program data 224. In some implementations, the application 222 can be arranged to operate with the program data 124 on an operating system. Program data 124 includes instructions and in computing device 200 according to the present invention, program data 224 includes instructions for performing method 300 of processing resume delivery tasks.
Computing device 200 may also include an interface bus 240 that facilitates communication from various interface devices (e.g., output devices 242, peripheral interfaces 244, and communication devices 246) to the basic configuration 202 via the bus/interface controller 230. The example output device 242 includes a graphics processing unit 248 and an audio processing unit 250. They may be configured to facilitate communication with various external devices, such as a display or speakers, via one or more a/V ports 252. Example peripheral interfaces 244 can include a serial interface controller 254 and a parallel interface controller 256, which can be configured to facilitate communications with external devices such as input devices (e.g., keyboard, mouse, pen, voice input device, touch input device) or other peripherals (e.g., printer, scanner, etc.) via one or more I/O ports 258. An example communication device 246 may include a network controller 260, which may be arranged to facilitate communications with one or more other computing devices 262 over a network communication link via one or more communication ports 264.
The network communication link may be one example of a communication medium. Communication media may typically be embodied by computer readable instructions, data structures, program modules, and may include any information delivery media, such as carrier waves or other transport mechanisms, in a modulated data signal. A "modulated data signal" may be a signal that has one or more of its data set or its changes in such a manner as to encode information in the signal. By way of non-limiting example, communication media may include wired media such as a wired network or private-wired network, and various wireless media such as acoustic, radio Frequency (RF), microwave, infrared (IR), or other wireless media. The term computer readable media as used herein may include both storage media and communication media.
Computing device 200 may be implemented as a server, such as a file server, a database server, an application server, a WEB server, etc., or as part of a small-sized portable (or mobile) electronic device, such as a cellular telephone, a Personal Digital Assistant (PDA), a wireless WEB-watch device, an application specific device, or a hybrid device that include any of the above functions. Computing device 200 may also be implemented as a personal computer including both desktop and notebook computer configurations. In some embodiments, the computing device 200 is configured to perform a method 300 of processing resume delivery tasks in accordance with the present invention.
FIG. 3 shows a flowchart of a method 300 for processing resume delivery tasks, according to one embodiment of the invention. The method 300 is performed in a server, such as the server 120, to process resume delivery tasks submitted by clients.
As shown in fig. 3, the method begins at step S310. In step S310, the received resume delivery tasks are backed up in the task library and then submitted to the task queue, where the resume delivery tasks include resume data, delay time, priority, and task status.
The resume data is, for example, a resume of the user, and the resume includes basic information, personal ability, educational experience (academic calendar, school, etc.), work experience (including start and end time of each work experience, employment company, employment position, main work content, etc.), project experience, expected city, expected salary, etc. of the user. Each user has a unique user identification (user _ ID), which may be, for example, a user name, a user account name, or an identification ID automatically assigned by the system. Each user maintains a piece of resume data, a unique resume identifier (resume _ id) can be generated for each piece of resume data to identify the resume data, and an association relationship between the user identifier and the resume identifier is established. A plurality of job position data are generally distributed on the recruitment website, and the job position data may include information such as a job position name, a company to which the job position belongs, job position salary, a work city, academic requirements, work experience requirements and the like, so that a unique job position identifier (post _ id) can be generated for each job position data to identify the job position. A user can deliver a plurality of positions, and the corresponding resume delivery task can comprise the position identification delivered by the user.
Each resume delivery task has a corresponding identifier, so that the tasks can be conveniently and quickly searched or taken out. Considering that a resume of a user may have multiple delivery behaviors, a user identifier and a post identifier { user identifier, post identifier } of a delivered post may be adopted as identifiers of resume delivery tasks. Alternatively, resume identification and position identification { resume identification, position identification } may be used as the identification of the resume delivery task. In addition, similar to the order number in the commodity purchase, a unique delivery number can be generated for each delivery behavior of the user, and the delivery number is used as the identification of the resume delivery task. And the user identification, the resume identification and the post identification of the delivered post of the user can be uniquely determined according to the delivery number.
Resume delivery tasks may also include latency, priority, and task status.
In one implementation, the delay time may be a time from the current time after the server receives the resume, which is counted up to the revocable time. Preferably, the pullback time is 10s. That is, the server starts to time from 0 after receiving the resume, and stops timing when the number reaches 10s, and if the user initiates the resume withdraw request within the 10s, the resume delivery task can be withdrawn. Beyond 10s the task cannot be withdrawn any more.
In another implementation, the delay time may be a time from the current time after the user submitted the resume delivery task. Generally, a user clicks a resume delivery button on a job hunting interface to represent submission of a resume delivery task, at the moment, the resume delivery task can be provided with a delivery time stamp during delivery, and a server acquires a receiving time stamp during receiving when receiving the resume delivery task and subtracts the time stamp during delivery as the current delay time. Tasks may be withdrawn from the task queue within 10s after the delivery timestamp and may not be withdrawn after 10s.
The priority of the resume delivery task is related to at least one of the following factors: delivery time, level of delivery users, resume integrity, matching degree of resume content and delivery position requirements and demand degree of delivery positions. That is, one or more items may be arbitrarily selected to calculate the priority of the delivery task, such as selecting only the delivery time to calculate the priority. Wherein the earlier the delivery time, the higher the priority. The higher the user level is, the higher the priority is, the user level is represented by calculating the activity of the user according to the user's recent operation behavior (such as browsing, collecting, resume updating, delivery, etc.). The liveness of a user may be calculated in advance from information about the user stored in the data store.
The higher the resume integrity, the higher the matching of resume content with delivery position requirements, the higher the priority, the matching may include academic matching, work experience matching, expected salary matching, etc. According to one embodiment, keywords or key sentences related to the academic calendar and the work content in the job requirements can be extracted respectively, keywords or key sentences related to the academic calendar and the work content in the resume content are extracted, preliminary matching is conducted on the keywords or the key sentences, and the matching degree is calculated. The expected compensation matching degree can be calculated according to the proportion of the overlapping intervals of the numerical range. The demand degree of the delivery position generally refers to whether the position to be recruited is urgently recruited or not, and the higher the demand degree of the delivery position is, the higher the priority is.
According to one embodiment, a scoring rule of priority can be set for each individual item, and then the priorities of all the individual items are weighted and averaged to obtain the total priority. The specific scoring rules can be set by those skilled in the art according to the needs, and the present invention is not limited thereto. For example, the initial priority is 0, and the priority is increased by 1 every five minutes before the delivery time; a level 1 user would have priority added 1, a level 2 user would have priority added 2, and so on. And if the completeness of the resume is more than 90%, adding 3 to the priority, adding 2 to the priority when 80-90%, and so on. And if the matching degree is more than 90%, adding 3 to the priority, adding 2 to the priority when 80-90%, and so on. The demand degree of the delivery position is that the priority is increased by 3 when the delivery position is urgently needed in half a month, the priority is increased by 2 when the delivery position is urgently needed in one month, the priority is increased by 1 when the delivery position is urgently needed in three months, and the like.
The task state of the resume delivery task includes at least one of: the system comprises a cancel state of the task being withdrawn, a waiting state of the task waiting to be delivered, an execution state of the task being delivered, a completion state of the task delivery success, and an exception state of the task delivery exception. Generally, tasks are all in a cancelled state after being withdrawn from a task queue, the tasks are in a waiting state after being out of the queue but not yet delivered, delivery is carried out on the tasks after being out of the queue to be in an executing state, delivery success is in a completion state, and delivery abnormity or task loss belongs to an abnormal state.
Subsequently, in step S320, a predetermined number of resume delivery tasks with delay time exceeding the revocable time and highest priority are fetched from the task queue in reverse order, and the task status of the fetched tasks is backed up in the backup queue.
That is, a batch of tasks which are not revocable currently and have higher priority are taken out from the task queue according to the first-in first-out principle. If the priority is comprehensively evaluated according to a plurality of single items, the priority can be traversed from high to low, and a preset number (for example, 500) of resume delivery tasks are taken out. And if the priority is calculated according to one item, traversing according to the priority, stopping traversing when data exist in a certain priority, and taking out a predetermined number of resume delivery tasks in the priority. For example, when calculating the priority by submission time, resume delivery tasks within a five minute period may be traversed each time in a five minute period.
The state of the resume delivery task just taken out from the task queue is a waiting state, the state is backed up in the task queue, and one backup record may include the identifier of the resume delivery task and the corresponding task state, as described in table 1.
TABLE 1
Figure BDA0002168089580000101
Figure BDA0002168089580000111
Subsequently, in step S330, order delivery is performed on the retrieved resume delivery tasks in sequence, and the task status in the backup queue is synchronously updated during the delivery process.
According to one embodiment, after the delivery operation for the order is started, the state of the task in the backup queue can be updated to be in the execution state. When order delivery is performed, a delivery order for the resume delivery task may be generated and submitted to an order store. And then inquiring whether the delivery order exists in an order library, if so, determining that the delivery is successful, updating the delivery library successfully, and updating the corresponding task states in the task library and the backup queue to be in a completion state. If not, the delivery order is stored in the order library, the delivery library is updated successfully, and the corresponding task states in the task library and the backup queue are updated to be the completion state. Task exception status may of course also occur due to device or network exceptions. The status in the backup queue during order delivery may be as shown in table 2:
TABLE 2
Resume delivery task identifier Task state
Identification 1 Has been completed
Identification 2 In execution
Identification 3 While waiting
Identification 4 Abnormality (S)
…… ……
According to one embodiment, after the task is successfully delivered, resume data of the resume delivery task and position data of the delivered position can be stored, and the user and the enterprise are informed of the delivery position, wherein the informing mode comprises mail informing, software platform informing, weChat and short message informing and the like. In addition, the invention can also delete resume delivery tasks in a task library and a backup queue in a finished state at regular intervals. The regular deleting time of the task library is 3 days, namely the finished resume delivery tasks within 3 days before today are cleaned regularly. The regular deleting time of the backup queue is 1h, and the data in the backup queue is overdue after being defaulted for 1h.
Subsequently, in step S340, if the retrieved resume delivery task is lost, the task state of the task before the loss is obtained from the backup queue, resume data of the task is obtained from the task library, and the resume delivery task is recovered. The resume delivery tasks taken out are lost when the resume delivery tasks are not delivered or are lost in the delivery process. Resume delivery tasks have been taken out of the task queue, so the delay time and priority of the task are not required to be acquired.
According to one embodiment, if the resume delivery task is in the executing state before being lost, the order delivery is performed on the resume delivery task immediately after the resume delivery task is recovered.
According to another embodiment, if the resume delivery task in the task queue is lost, namely the task is lost without being dequeued, resume data, delay time, priority and task state of the task are obtained from the task library, and the resume delivery task is recovered. Here, the resume delivery task loss in the task queue includes loss of a single resume delivery task or loss of all resume delivery tasks due to a server failure. It should be noted that the delay time recovered from the task library is the delay time when the task is lost, and the delay time is recovered, which may be added with the time from the task loss to the time recovered, as the current actual delay time. If the summed current actual delay time exceeds the withdrawable time (10 s), then the resume delivery task is represented as having not been withdrawable.
According to some embodiments of the invention, the method 300 may further comprise the steps of: receiving a resume withdrawal request for a resume submitted by a user, inquiring the current delay time of the resume from the task queue, and deleting the resume delivery task from the task library and the task queue if the delay time is less than the withdrawal time. The resume revocation request may include the user identifier, the resume identifier, and the job identifier, and the corresponding resume delivery task identifier may be determined according to the identifiers, and the corresponding resume delivery task may be deleted according to the resume delivery task identifier.
FIG. 4 shows a block diagram of a resume delivery task processing device 400 according to an embodiment of the invention, where the device 400 may reside in a server, such as the server 120, where there is a task queue, communicatively coupled to a data store, where there is a task library and a backup queue. As shown in fig. 4, the apparatus 400 includes: a task submission module 410, a task retrieval module 420, a task delivery module 430, and a task recovery module 440.
The task submission module 410 submits the received resume delivery tasks, which include resume data, delay time, priority, and task status, to a task queue after backing up in a task library. The task submitting module 410 may perform processing corresponding to the processing described above in step S310, and the detailed description thereof is omitted.
The task fetching module 420 fetches a predetermined number of resume delivery tasks with delay time exceeding the revocable time and highest priority from the task queue in reverse order, and backs up the task states of the fetched tasks in a backup queue. The task extraction module 420 may perform processing corresponding to the processing described above in step S320, and the detailed description thereof will not be repeated here.
The task delivery module 430 sequentially delivers orders to the retrieved resume delivery tasks and synchronously updates the task state in the backup queue during the delivery process. In particular, the task delivery module 430 may generate a delivery order for the resume delivery task and submit the delivery order to an order store. And then inquiring whether the delivery order exists in an order library, if so, determining that the delivery is successful, updating the delivery library successfully, and updating the corresponding task states in the task library and the backup queue to be in a completion state. The task delivery module 430 may perform processing corresponding to the processing described above in step S330, and the detailed description thereof will not be repeated.
When the resume delivery task taken out is lost, the task recovery module 440 obtains the task state of the task from the backup queue, obtains resume data of the task from the task library, and recovers the resume delivery task. The task recovery module 440 may also obtain resume data, delay time, priority, and task state of the task from the task library when the resume delivery task in the task queue is lost, and recover the resume delivery task. Moreover, if the resume delivery task is in the executing state before being lost, the task recovery module 440 performs order delivery to the resume delivery task immediately after recovering the resume delivery task. The task recovery module 440 may perform processing corresponding to the processing described above in step S340, and the detailed description thereof will not be repeated here.
According to an embodiment of the present invention, the apparatus 400 may further include a resume revocation module (not shown in the figure), which may receive a resume revocation request submitted by a user for a resume, query a task queue for a current delay time of the resume, and delete the resume delivery task from the task library and the task queue if the delay time is less than the revocable time.
According to the technical scheme of the invention, task scheduling is carried out based on a priority ranking algorithm, so that the characteristic functions of resume delivery withdrawability, task backup and recovery are realized, and elastic capacity expansion, parallel scheduling and failure disaster tolerance are supported.
A7, the method of any one of A1-A6, wherein the priority of the resume delivery task is related to at least one of the following factors: delivery time, level of delivery user, resume integrity, matching degree of resume content and delivery position requirement, and demand degree of delivery position. The method A8 as in any one of A1-A7, wherein the data storage further comprises an order library and a delivery library, and the step of delivering the order of the retrieved resume delivery task comprises the following steps: generating a delivery order of the resume delivery task, and submitting the delivery order to an order library; and inquiring whether the delivery order exists in an order library, if so, determining that delivery is successful, updating the delivery library successfully, and updating the corresponding task states in the task library and the backup queue to be a completion state. The method A9 as described in A8, wherein after the task delivery is successful, further comprising the steps of: and saving the position data and the resume data of the resume delivery task, and regularly deleting the resume delivery tasks in a finished state in the task library and the backup queue. A10, the method as in any of A1-A9, wherein the latency time is a time from the current time after the server receives the resume, and is timed up to the revocable time. The method as in A10, wherein the predetermined number is 500, the revocable time is 10s, the periodic deletion time of the task library is 3 days, and the periodic deletion time of the backup queue is 1h.
The various techniques described herein may be implemented in connection with hardware or software or, alternatively, with a combination of both. Thus, the methods and apparatus of the present invention, or certain aspects or portions thereof, may take the form of program code (i.e., instructions) embodied in tangible media, such as removable hard drives, U.S. disks, floppy disks, CD-ROMs, or any other machine-readable storage medium, wherein, when the program is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the invention.
In the case of program code execution on programmable computers, the computing device will generally include a processor, a storage medium readable by the processor (including volatile and non-volatile memory and/or storage elements), at least one input device, and at least one output device. Wherein the memory is configured to store program code; the processor is configured to execute the method for processing resume delivery tasks of the invention according to the instructions in the program code stored in the memory.
By way of example, and not limitation, readable media includes readable storage media and communication media. Readable storage media store information such as computer readable instructions, data structures, program modules or other data. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. Combinations of any of the above are also included within the scope of readable media.
In the description provided herein, algorithms and displays are not inherently related to any particular computer, virtual system, or other apparatus. Various general purpose systems may also be used with examples of this invention. The required structure for constructing such a system will be apparent from the description above. Moreover, the present invention is not directed to any particular programming language. It is appreciated that a variety of programming languages may be used to implement the teachings of the present invention as described herein, and any descriptions of specific languages are provided above to disclose the best mode of the invention.
In the description provided herein, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Similarly, it should be appreciated that in the foregoing description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. However, the disclosed method should not be interpreted as reflecting an intention that: that the invention as claimed requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of this invention.
Those skilled in the art will appreciate that the modules or units or components of the devices in the examples disclosed herein may be arranged in a device as described in this embodiment or alternatively may be located in one or more devices different from the devices in this example. The modules in the foregoing examples may be combined into one module or may be further divided into multiple sub-modules.
Those skilled in the art will appreciate that the modules in the devices in an embodiment may be adaptively changed and arranged in one or more devices different from the embodiment. The modules or units or components of the embodiments may be combined into one module or unit or component, and furthermore they may be divided into a plurality of sub-modules or sub-units or sub-components. All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the processes or elements of any method or apparatus so disclosed, may be combined in any combination, except combinations where at least some of such features and/or processes or elements are mutually exclusive. Each feature disclosed in this specification (including any accompanying claims, abstract and drawings) may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise.
Furthermore, those skilled in the art will appreciate that while some embodiments described herein include some features included in other embodiments, rather than other features, combinations of features of different embodiments are meant to be within the scope of the invention and form different embodiments. For example, in the following claims, any of the claimed embodiments may be used in any combination.
Furthermore, some of the described embodiments are described herein as a method or combination of method elements that can be performed by a processor of a computer system or by other means of performing the described functions. A processor having the necessary instructions for carrying out the method or method elements thus forms a means for carrying out the method or method elements. Further, the elements of the apparatus embodiments described herein are examples of the following apparatus: the means for performing the functions performed by the elements for the purpose of carrying out the invention.
As used herein, unless otherwise specified the use of the ordinal adjectives "first", "second", "third", etc., to describe a common object, merely indicate that different instances of like objects are being referred to, and are not intended to imply that the objects so described must be in a given sequence, either temporally, spatially, in ranking, or in any other manner.
While the invention has been described with respect to a limited number of embodiments, those skilled in the art, having benefit of this description, will appreciate that other embodiments can be devised which do not depart from the scope of the invention as described herein. Furthermore, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter. Accordingly, many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the appended claims. The present invention has been disclosed in an illustrative rather than a restrictive sense with respect to the scope of the invention, as defined in the appended claims.

Claims (13)

1. A method for processing resume delivery tasks, adapted to be executed in a server, the server being communicatively connected to a data storage, the data storage having a task library and a backup queue, the server having a task queue, the method comprising the steps of:
the method comprises the steps that a received resume delivery task is submitted to a task queue after being backed up in a task library, wherein the resume delivery task comprises resume data, delay time, priority and a task state;
taking a preset number of resume delivery tasks with delay time exceeding the withdrawable time and the highest priority out of the task queue in a reverse order, and backing up the task states of the taken tasks in a backup queue;
sequentially delivering orders to the taken resume delivery tasks, and synchronously updating task states in a backup queue in the delivery process; and
if the resume delivery task taken out is lost, acquiring the task state of the task before the loss from the backup queue, acquiring resume data of the task from the task library, and recovering the resume delivery task, wherein the resume delivery task loss in the task queue comprises the loss of a single resume delivery task or the loss of all resume delivery tasks caused by server failure;
and if the resume delivery task in the task queue is lost, acquiring resume data, delay time, priority and task state of the task from the task library, and recovering the resume delivery task.
2. The method of claim 1, further comprising the steps of:
receiving a resume withdrawal request submitted by a user for a resume, inquiring the current delay time of the resume from the task queue, and deleting the resume delivery task from the task library and the task queue if the delay time is less than the withdrawal time.
3. The method of claim 1 or 2, wherein the task state comprises at least one of:
a cancelled status that a task is withdrawn, a waiting status that a task is waiting to be delivered, an executing status that a task is being delivered, a completion status that a task delivery is successful, and an exception status that a task delivery is abnormal.
4. The method of claim 3, further comprising the steps of:
and if the resume delivery task is in the executing state before being lost, immediately carrying out order delivery on the resume delivery task after recovering the resume delivery task.
5. The method of claim 1 or 2, wherein the priority of the resume delivery task is related to at least one of the following factors:
delivery time, level of delivery user, resume integrity, matching degree of resume content and delivery position requirement, and demand degree of delivery position.
6. The method of claim 1 or 2, wherein the data store further includes an order repository and a delivery repository therein, the step of order delivering the retrieved resume delivery tasks comprising:
generating a delivery order of the resume delivery task, and submitting the delivery order to an order library;
and inquiring whether the delivery order exists in an order library, if so, determining that delivery is successful, updating the delivery library successfully, and updating the corresponding task states in the task library and the backup queue to be a completion state.
7. The method of claim 6, wherein after a successful delivery of a task, further comprising the steps of:
and saving the position data and the resume data of the resume delivery task, and regularly deleting the resume delivery task in a finished state in the task library and the backup queue.
8. A method as claimed in claim 1 or 2, wherein the delay time is the time from the current time after the server receives the resume, up to the revocable time.
9. The method of claim 8, wherein the predetermined number is 500, the revocable time is 10s, the periodic deletion time of the task library is 3 days, and the periodic deletion time of the backup queue is 1h.
10. A resume delivery task processing apparatus adapted to reside in a server, the server communicatively coupled to a data store, the data store having a task library and a backup queue, the server having a task queue, the apparatus comprising:
the task submitting module is suitable for submitting the received resume delivery tasks to a task queue after backing up in a task library, wherein the resume delivery tasks comprise resume data, delay time, priority and task state;
the task taking-out module is suitable for taking out a preset number of resume delivery tasks with delay time exceeding the withdrawable time and the highest priority from the task queue in a reverse order, and backing up the task states of the taken-out tasks in a backup queue;
the task delivery module is suitable for sequentially delivering orders of the taken resume delivery tasks and synchronously updating task states in the backup queue in the delivery process; and
and the task recovery module is suitable for acquiring the task state of the task from the backup queue if the taken resume delivery task is lost, acquiring resume data of the task from the task library and recovering the resume delivery task, and is also suitable for acquiring the resume data, delay time, priority and task state of the task from the task library and recovering the resume delivery task if the resume delivery task in the task queue is lost, wherein the resume delivery task loss in the task queue comprises the loss of a single resume delivery task or the loss of all resume delivery tasks caused by server failure.
11. A server, comprising:
at least one processor; and
a memory storing program instructions configured for execution by the at least one processor, the program instructions comprising instructions for performing the method of any of claims 1-9.
12. A readable storage medium storing program instructions that, when read and executed by a computing device, cause the server to perform the method of any of claims 1-9.
13. A system for processing resume delivery tasks, comprising:
one or more clients adapted to submit resume delivery tasks;
the server of claim 11, including a task queue in the server, the server adapted to process received resume delivery tasks; and
and the data storage comprises a task library and a backup queue and is suitable for backing up the resume delivery tasks.
CN201910753782.9A 2019-08-15 2019-08-15 Resume delivery task processing method, device, server and system Active CN110532108B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910753782.9A CN110532108B (en) 2019-08-15 2019-08-15 Resume delivery task processing method, device, server and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910753782.9A CN110532108B (en) 2019-08-15 2019-08-15 Resume delivery task processing method, device, server and system

Publications (2)

Publication Number Publication Date
CN110532108A CN110532108A (en) 2019-12-03
CN110532108B true CN110532108B (en) 2022-10-11

Family

ID=68663400

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910753782.9A Active CN110532108B (en) 2019-08-15 2019-08-15 Resume delivery task processing method, device, server and system

Country Status (1)

Country Link
CN (1) CN110532108B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113283877A (en) * 2021-06-15 2021-08-20 北京网聘咨询有限公司 Resume delivery method, device, equipment and medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03262230A (en) * 1990-03-13 1991-11-21 Hitachi Ltd Composite mail delivering system
JPH07230400A (en) * 1994-02-17 1995-08-29 Hitachi Ltd Backup structure for information management system and restoring method using the structure
US8370395B1 (en) * 2004-10-15 2013-02-05 Amazon Technologies, Inc. Providing a reliable distributed queuing service
CN106302148A (en) * 2016-08-17 2017-01-04 深圳市金证科技股份有限公司 Backup Data transmission method based on LBM and system
CN108415759A (en) * 2017-02-09 2018-08-17 阿里巴巴集团控股有限公司 Processing method, device and the electronic equipment of message

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6862622B2 (en) * 1998-07-10 2005-03-01 Van Drebbel Mariner Llc Transmission control protocol/internet protocol (TCP/IP) packet-centric wireless point to multi-point (PTMP) transmission system architecture
JP2005031915A (en) * 2003-07-10 2005-02-03 Toshiba Corp Task transaction managing device, method, and program
US7757148B2 (en) * 2006-05-25 2010-07-13 Motorola, Inc. Method to suspend automatic repeat request (ARQ) reset
US7669081B2 (en) * 2006-09-27 2010-02-23 Raytheon Company Systems and methods for scheduling, processing, and monitoring tasks
CN105653250A (en) * 2014-11-14 2016-06-08 中国科学院沈阳计算技术研究所有限公司 Task control system for three dimensional simulation system
CN104506619B (en) * 2014-12-22 2018-06-05 华为技术有限公司 A kind of data backup, restoration methods and its device, server
CN106547613B (en) * 2016-10-20 2020-04-03 西北工业大学 Scheduling and fault recovery method for task processing flow
CN106920070A (en) * 2017-02-13 2017-07-04 济南浪潮高新科技投资发展有限公司 A kind of resume collection method, apparatus and system
CN107943567B (en) * 2017-10-20 2021-12-28 北京知道未来信息技术有限公司 High-reliability task scheduling method and system based on AMQP protocol
CN108334545B (en) * 2017-12-27 2021-09-03 微梦创科网络科技(中国)有限公司 Method and device for realizing asynchronous service

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03262230A (en) * 1990-03-13 1991-11-21 Hitachi Ltd Composite mail delivering system
JPH07230400A (en) * 1994-02-17 1995-08-29 Hitachi Ltd Backup structure for information management system and restoring method using the structure
US8370395B1 (en) * 2004-10-15 2013-02-05 Amazon Technologies, Inc. Providing a reliable distributed queuing service
CN106302148A (en) * 2016-08-17 2017-01-04 深圳市金证科技股份有限公司 Backup Data transmission method based on LBM and system
CN108415759A (en) * 2017-02-09 2018-08-17 阿里巴巴集团控股有限公司 Processing method, device and the electronic equipment of message

Also Published As

Publication number Publication date
CN110532108A (en) 2019-12-03

Similar Documents

Publication Publication Date Title
US8935225B2 (en) Persistent data storage techniques
US7895602B2 (en) System and article of manufacture for duplicate message elimination during recovery when multiple threads are delivering messages from a message store to a destination queue
CN1783132B (en) Synchronization of runtime and application state via batching of workflow transactions
CN104094228A (en) Systems and methods for supporting transaction recovery based on a strict ordering of two-phase commit calls
CN102955792A (en) Method for implementing transaction processing for real-time full-text search engine
US20140052488A1 (en) Contextual task management and notifications
CN113377289A (en) Cache management method, system, computing device and readable storage medium
CN113568716A (en) Transaction processing method and device, electronic equipment and storage medium
CN110532108B (en) Resume delivery task processing method, device, server and system
CN113342863A (en) Business document processing method and device, computer equipment and storage medium
US9652766B1 (en) Managing data stored in memory locations having size limitations
US10409651B2 (en) Incremental workflow execution
CN110765144B (en) Distributed heterogeneous database data processing method and device
US10810184B1 (en) Systems for consistent modification of stored values
US9727621B2 (en) Systems and methods for servicing database events
CN112783436A (en) Synchronized object placement for information lifecycle management
JP2009098844A (en) Process management system
JP6657725B2 (en) Database system, replication control device, replication method, and program
JP2012113517A (en) Data automatic update system and data automatic update method
CN117785900A (en) Data updating method, device, computer equipment and storage medium
JP2017091213A (en) Database update processing system, and database update processing method
JP6047472B2 (en) Database management method and database management system
US10319006B2 (en) System and method for database queries
JP2017054207A (en) Database control program, database control method, and database control device
CN114968977A (en) Idempotent problem processing method, idempotent problem processing device, electronic equipment and storage medium

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
GR01 Patent grant
GR01 Patent grant