CN112181915A - Method, device, terminal and storage medium for executing service - Google Patents

Method, device, terminal and storage medium for executing service Download PDF

Info

Publication number
CN112181915A
CN112181915A CN201910595847.1A CN201910595847A CN112181915A CN 112181915 A CN112181915 A CN 112181915A CN 201910595847 A CN201910595847 A CN 201910595847A CN 112181915 A CN112181915 A CN 112181915A
Authority
CN
China
Prior art keywords
mark
server
execution progress
service execution
service
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.)
Granted
Application number
CN201910595847.1A
Other languages
Chinese (zh)
Other versions
CN112181915B (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.)
Chengdu Huawei Technology Co Ltd
Original Assignee
Chengdu Huawei 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 Chengdu Huawei Technology Co Ltd filed Critical Chengdu Huawei Technology Co Ltd
Priority to CN201910595847.1A priority Critical patent/CN112181915B/en
Publication of CN112181915A publication Critical patent/CN112181915A/en
Application granted granted Critical
Publication of CN112181915B publication Critical patent/CN112181915B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1734Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1805Append-only file systems, e.g. using logs or journals to store data
    • G06F16/1815Journaling file systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

The disclosure relates to a method, a device, a terminal and a storage medium for executing a service, and belongs to the technical field of internet. The method comprises the following steps: instructing the server to execute the target service through RDMA atomic operation; after the server is determined to finish executing the target service, determining at least one detection time point for acquiring a service execution progress mark from the server according to a preset detection time point determination rule; and when any detection time point is reached, acquiring a service execution progress mark from the server through RDMA atomic operation, determining the time length of the service execution progress mark which is not updated, and if the time length of the service execution progress mark which is not updated is greater than a preset time length threshold value, carrying out carry updating on the service execution progress mark through the RDMA atomic operation. By adopting the method and the device, even if the terminal with the operation fault exists, other terminals with the mark updating sequence indication in the later sequence can continuously update the service execution progress mark.

Description

Method, device, terminal and storage medium for executing service
Technical Field
The present disclosure relates to the field of internet technologies, and in particular, to a method, an apparatus, a terminal, and a storage medium for executing a service.
Background
In a Remote Direct data Access (RDMA) network, multiple terminals may simultaneously cause a server to perform the same service, e.g., write log data in the same log in the server.
And the server determines the execution condition of the target service through the service execution progress mark. Before a plurality of terminals commonly request the server to execute the target service, each terminal sends an acquisition request for acquiring the mark updating sequence identifier corresponding to the target service to the server, and the mark updating sequence identifier is used when the service execution progress mark in the server is updated subsequently. There is a counter in the server, and the counter value of the counter is incremented by 1 each time the server receives an acquisition request. And the server responds to the acquisition request sent by each terminal, takes the current count value of the counter as a mark updating sequence identifier distributed to the current terminal, and sends a message carrying the mark updating sequence identifier to the current terminal. And then, the current terminal sends a service execution request corresponding to the target service to the server, and the server responds to the service execution request sent by the current terminal, executes the target service and sends a service execution completion message to the current terminal after the target service is completely executed. And then, the current terminal needs to send a mark updating request carrying a mark updating sequence identifier acquired in advance to the server, and the server updates the service execution progress mark according to the sequence indicated by the mark updating sequence identifier. In practical application, the process that the terminal sends the acquisition request for acquiring the mark updating sequence identifier to the server and the server sends the message carrying the mark updating sequence identifier to the corresponding terminal needs to consume a longer time, and instead, the process that the server actually executes the target service in response to the service execution request needs to consume a shorter time. This situation is unacceptable.
In order to solve the above problems, the related art proposes the following. And the terminal acquires the current count value of a counter in the bottom layer of the server through RDMA atomic operation provided by the RDMA network under the condition that the high layer of the server does not sense the current count value, and determines the current value of the counter as a mark updating sequence identifier. The terminal can still instruct the server to execute the target service through RDMA atomic operation. The terminal directly carries out RDMA atomic operation on the bottom layer of the server without the processing of the high layer of the server, so the execution efficiency of the RDMA atomic operation is high, the terminal can further quickly obtain the mark updating sequence mark and indicate the server to execute the target service, and the service execution progress mark in the bottom layer of the server can be updated according to the sequence indicated by the obtained mark updating sequence mark. For example, the terminal A, B, C has all instructed and determined that the server has executed the target service, and the flag update sequence flags allocated by the terminal A, B, C are sequentially 1, 2, and 3, then the terminal a updates the service execution progress flag first, and updates the service execution progress flag from the initial value 1 to 2. Only when the terminal B acquires that the current service execution progress mark is 2 after the terminal a finishes updating the service execution progress mark, the terminal B can update the service execution progress mark and update the service execution progress mark to 3. Only when the terminal C obtains that the current service execution progress mark is 3 after the terminal a and the terminal B finish updating the service execution progress mark, the terminal C can update the service execution progress mark and update the service execution progress mark to 4. If the terminal in the front of the sequence indicated by the flag updating sequence identifier does not update the service execution progress flag, the terminal in the back of the sequence indicated by the flag updating sequence identifier waits for the service execution progress flag to be updated.
In carrying out the present disclosure, the inventors found that at least the following problems exist:
the high-level server needs to check the current business execution progress mark at some moments, and determines the execution condition of the target business through the current business execution progress mark. When any terminal which indicates the server to execute the target service has an operation fault, other terminals cannot sense the fault, and therefore even if other terminals with the later sequence indicated by the mark updating sequence identifier indicate and determine that the server executes the target service, other terminals with the later sequence indicated by the mark updating sequence identifier cannot update the service execution progress mark, and the execution condition of the target service determined by the server high layer through the current service execution progress mark is not consistent with the actual execution condition.
Disclosure of Invention
In order to overcome the problems in the related art, the present disclosure provides the following technical solutions:
according to a first aspect of the embodiments of the present disclosure, there is provided a method of executing a service, the method including:
instructing the server to perform a target service by a remote direct data access, RDMA, atomic operation;
after the target service is determined to be executed by the server, determining at least one detection time point for acquiring a service execution progress mark from the server according to a preset detection time point determination rule;
and when any detection time point is reached, acquiring the service execution progress mark from the server through RDMA atomic operation, determining the time length of the service execution progress mark which is not updated, and carrying out carry updating on the service execution progress mark through RDMA atomic operation if the time length of the service execution progress mark which is not updated is greater than or equal to a preset time length threshold.
By the method provided by the embodiment of the disclosure, when any terminal indicating the server to execute the target service has an operation fault, other terminals can acquire the service execution progress mark from the server, determine the time length of the service execution progress mark which is not updated, and if the time length of the service execution progress mark which is not updated is greater than the preset time length threshold, it indicates that the terminal indicating the server to execute the target service has the operation fault, and then other terminals can automatically update the service execution progress mark. Therefore, even if a terminal with operation failure exists, other terminals with the later sequence indicated by the mark updating sequence identification can continuously update the service execution progress mark. When the server high level determines the execution condition of the target service through the current service execution progress mark, the determined execution condition of the target service can be consistent with the actual execution condition.
In one possible implementation, the target service is a service that writes log data in a target log, and the instructing the server to execute the target service through an RDMA atomic operation includes:
acquiring a data writing position corresponding to the target log from a server through RDMA atomic operation, and indicating the server to write log data in the data writing position;
after the target service is determined to be executed by the server, determining at least one detection time point for acquiring a service execution progress mark from the server according to a preset detection time point determination rule, including:
after the server is determined to write the log data in the data writing position, determining at least one detection time point for acquiring a writing position mark from the server according to a preset detection time point determination rule;
when any detection time point is reached, the service execution progress mark is obtained from the server through RDMA atomic operation, the time length of the service execution progress mark which is not updated is determined, if the time length of the service execution progress mark which is not updated is greater than or equal to a preset time length threshold value, the service execution progress mark is carried out carry updating through the RDMA atomic operation, and the method comprises the following steps:
and when any detection time point is reached, acquiring the writing position mark from the server through RDMA atomic operation, determining the time length of the acquired writing position mark which is not updated, and if the time length of the acquired writing position mark which is not updated is greater than or equal to a preset time length threshold value, carrying out carry updating on the writing position mark through the RDMA atomic operation.
In one possible implementation manner, the performing carry update on the service execution progress flag through an RDMA atomic operation includes:
through RDMA atomic operation, the server is instructed to compare a current service execution progress mark with a service execution progress mark of which the non-updated time length is greater than or equal to a preset time length threshold value;
if the current service execution progress mark is matched with the service execution progress mark of which the non-updated duration is greater than or equal to a preset duration threshold, instructing the server to increase the current service execution progress mark by a first preset value through RDMA atomic operation;
and if the current service execution progress mark is not matched with the service execution progress mark of which the non-updated duration is greater than or equal to the preset duration threshold, indicating the server to keep the current service execution progress mark unchanged through RDMA atomic operation.
By the mode, even if a plurality of terminals find that carry updating needs to be carried out on the service execution progress mark at the same time, the carry updating is carried out on the progress mark only once, and the situation that different terminals carry updating on the service execution progress mark for many times is avoided.
In one possible implementation, before instructing the server to execute the target service, the method further includes:
and acquiring a mark updating sequence identifier from the server through RDMA atomic operation.
In a possible implementation manner, after determining that the server has completed executing the target service, determining, according to a preset detection time point determination rule, at least one detection time point at which a service execution progress flag is obtained from the server, includes:
after the target service is determined to be executed by the server, acquiring a service execution progress mark from the server;
determining a difference value between the service execution progress mark and the mark updating sequence mark;
and determining at least one detection time point for acquiring the service execution progress mark from the server according to the difference.
By the method, the times that the terminal acquires the service execution progress mark from the server can be reduced, the working pressure of the server is relieved, and the operating efficiency of the server is improved.
In a possible implementation manner, after obtaining the service execution progress flag from the server, the method further includes:
comparing the service execution progress mark with the mark updating sequence mark;
and if the service execution progress mark is smaller than the mark updating sequence mark by a preset difference value, indicating the server to increase the service execution progress mark by a second preset numerical value.
In a possible implementation manner, after obtaining the service execution progress flag from the server, the method further includes:
and if the service execution progress mark is larger than or equal to the mark updating sequence mark, switching to a step of executing RDMA atomic operation to instruct the server to execute the target service.
Some target terminals which are found not to indicate the server to carry out carry updating on the service execution progress mark beyond the preset time length threshold value do not necessarily have operation faults. The target terminal may be that the processor is busy at the time when the server should be instructed to carry out carry updating on the service execution progress mark, and no time is instructed to carry updating on the service execution progress mark by the server. When the processor of the target terminal is in an idle time, the target terminal acquires a service execution progress mark from the server, compares the acquired service execution progress mark with a mark updating sequence mark acquired in advance, and because the service execution progress mark is automatically indicated by other terminals and the server carries out carry updating on the service execution progress mark, the service execution progress mark acquired by the target terminal is larger than or equal to the mark updating sequence mark acquired in advance. The target terminal cannot successfully update the service execution progress mark, at this time, the target terminal may obtain the mark update sequence mark from the server again, instruct the server to execute the target service again, and repeatedly execute all the processes in the embodiment of the present disclosure until the server can be successfully instructed to execute the target service and the service execution progress mark is successfully updated.
In a possible implementation manner, the preset time threshold is a preset multiple of the time required by the server to execute the target service once.
According to a second aspect of the embodiments of the present disclosure, there is provided an apparatus for performing a service, the apparatus including:
an execution module to instruct the server to execute a target service via a remote direct data access RDMA atomic operation;
the determining module is used for determining at least one detection time point for acquiring a service execution progress mark from the server according to a preset detection time point determining rule after the server is determined to finish executing the target service;
and the updating module is used for acquiring the service execution progress mark from the server through RDMA atomic operation when any detection time point is reached, determining the time length of the service execution progress mark which is not updated, and carrying out carry updating on the service execution progress mark through RDMA atomic operation if the time length of the service execution progress mark which is not updated is greater than or equal to a preset time length threshold.
In a possible implementation manner, the target service is a service for writing log data in a target log;
the execution module is used for acquiring a data writing position corresponding to the target log from a server through RDMA atomic operation, and indicating the server to write log data in the data writing position;
the determining module is configured to determine, according to a preset detection time point determining rule, at least one detection time point at which a writing position flag is obtained from the server after it is determined that the server writes the log data in the data writing position;
the updating module is used for acquiring the writing position mark from the server through RDMA atomic operation when any detection time point is reached, determining the duration of the acquired writing position mark which is not updated, and if the duration of the non-updating is larger than or equal to a preset duration threshold, carrying out carry updating on the writing position mark through RDMA atomic operation.
In one possible implementation manner, the update module is configured to:
through RDMA atomic operation, the server is instructed to compare a current service execution progress mark with a service execution progress mark of which the non-updated time length is greater than or equal to a preset time length threshold value;
if the current service execution progress mark is matched with the service execution progress mark of which the non-updated duration is greater than or equal to a preset duration threshold, instructing the server to increase the current service execution progress mark by a first preset value through RDMA atomic operation;
and if the current service execution progress mark is not matched with the service execution progress mark of which the non-updated duration is greater than or equal to the preset duration threshold, indicating the server to keep the current service execution progress mark unchanged through RDMA atomic operation.
In one possible implementation, the apparatus further includes:
and the acquisition module is used for acquiring the mark updating sequence identifier from the server through RDMA atomic operation.
In one possible implementation manner, the determining module is configured to:
after the target service is determined to be executed by the server, acquiring a service execution progress mark from the server;
determining a difference value between the service execution progress mark and the mark updating sequence mark;
and determining at least one detection time point for acquiring the service execution progress mark from the server according to the difference.
In one possible implementation, the apparatus further includes:
the comparison module is used for comparing the service execution progress mark with the mark updating sequence mark;
and the indicating module is used for indicating the server to increase the service execution progress mark by a second preset value when the service execution progress mark is smaller than the mark updating sequence mark by a preset difference value.
In a possible implementation manner, the execution module is further configured to:
and if the service execution progress mark is larger than or equal to the mark updating sequence mark, switching to a step of executing RDMA atomic operation to instruct the server to execute the target service.
In a possible implementation manner, the preset time threshold is a preset multiple of the time required by the server to execute the target service once.
According to a third aspect of embodiments of the present disclosure, there is provided a terminal comprising a processor and a transceiver, wherein:
the processor is used for instructing the server to execute a target service through a remote direct data access (RDMA) atomic operation;
the processor is used for determining at least one detection time point for acquiring a service execution progress mark from the server according to a preset detection time point determination rule after the server is determined to finish executing the target service;
the processor is configured to control the transceiver to obtain the service execution progress marker from the server through an RDMA atomic operation whenever any detection time point is reached, determine a duration for which the service execution progress marker is not updated, and control the transceiver to carry out carry updating on the service execution progress marker through the RDMA atomic operation if the duration for which the service execution progress marker is not updated is greater than or equal to a preset duration threshold.
In one possible implementation, the processor is configured to:
through RDMA atomic operation, controlling the transceiver to acquire a data writing position corresponding to the target log from a server, and instructing the server to write log data in the data writing position;
after the server is determined to write the log data in the data writing position, determining at least one detection time point for acquiring a writing position mark from the server according to a preset detection time point determination rule;
and controlling the transceiver to acquire the writing position mark from the server through RDMA atomic operation every time when any detection time point is reached, determining the time length of the acquired writing position mark which is not updated, and controlling the transceiver to carry out carry updating on the writing position mark through RDMA atomic operation if the time length of the acquired writing position mark which is not updated is greater than or equal to a preset time length threshold.
In one possible implementation, the processor is configured to:
through RDMA atomic operation, the server is instructed to compare a current service execution progress mark with a service execution progress mark of which the non-updated time length is greater than or equal to a preset time length threshold value;
if the current service execution progress mark is matched with the service execution progress mark of which the non-updated duration is greater than or equal to a preset duration threshold, instructing the server to increase the current service execution progress mark by a first preset value through RDMA atomic operation;
and if the current service execution progress mark is not matched with the service execution progress mark of which the non-updated duration is greater than or equal to the preset duration threshold, indicating the server to keep the current service execution progress mark unchanged through RDMA atomic operation.
In one possible implementation, the processor is configured to:
and controlling the transceiver to acquire a mark updating sequence identifier from the server through RDMA atomic operation.
In one possible implementation, the processor is configured to:
after the target service is determined to be executed by the server, controlling the transceiver to acquire a service execution progress mark from the server;
determining a difference value between the service execution progress mark and the mark updating sequence mark;
and determining at least one detection time point for acquiring the service execution progress mark from the server according to the difference.
In one possible implementation, the processor is configured to:
comparing the service execution progress mark with the mark updating sequence mark;
and if the service execution progress mark is matched with the mark updating sequence mark, indicating the server to increase the service execution progress mark by a second preset numerical value.
In one possible implementation, the processor is configured to:
and if the service execution progress mark is larger than the mark updating sequence mark, switching to a step of executing RDMA atomic operation and indicating the server to execute the target service.
In a possible implementation manner, the preset time threshold is a preset multiple of the time required by the server to execute the target service once.
According to a fourth aspect of embodiments of the present disclosure, there is provided a computer-readable storage medium comprising instructions that, when run on a terminal, cause the terminal to perform the method of the first aspect of embodiments of the present disclosure.
According to a fifth aspect of embodiments of the present disclosure, there is provided a computer program product comprising instructions which, when run on a terminal, cause the terminal to perform the method of the first aspect of embodiments of the present disclosure.
The technical scheme provided by the embodiment of the disclosure can have the following beneficial effects:
by the method provided by the embodiment of the disclosure, when any terminal indicating the server to execute the target service has an operation fault, other terminals can acquire the service execution progress mark from the server, determine the time length of the service execution progress mark which is not updated, and if the time length of the service execution progress mark which is not updated is greater than the preset time length threshold, it indicates that the terminal indicating the server to execute the target service has the operation fault, and then other terminals can automatically update the service execution progress mark. Therefore, even if a terminal with operation failure exists, other terminals with the later sequence indicated by the mark updating sequence identification can continuously update the service execution progress mark. When the server high level determines the execution condition of the target service through the current service execution progress mark, the determined execution condition of the target service can be consistent with the actual execution condition.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and together with the description, serve to explain the principles of the disclosure. In the drawings:
FIG. 1 is a block diagram illustrating a system for performing a service in accordance with an exemplary embodiment;
FIG. 2 is a flow diagram illustrating a method of performing a service in accordance with an exemplary embodiment;
FIG. 3 is a schematic diagram illustrating the structure of a counter according to an exemplary embodiment;
FIG. 4 is a diagram illustrating an RDMA atomic operation, in accordance with an illustrative embodiment;
FIG. 5 is a diagram illustrating an RDMA atomic operation, according to an illustrative embodiment;
FIG. 6 is a diagram illustrating an RDMA atomic operation, in accordance with an illustrative embodiment;
FIG. 7 is a diagram illustrating an RDMA atomic operation in accordance with an illustrative embodiment;
FIG. 8 is a flow diagram illustrating a method of performing a service in accordance with an exemplary embodiment;
fig. 9 is a schematic diagram illustrating an architecture of an apparatus for performing a service according to an example embodiment;
fig. 10 is a block diagram of a terminal according to an example embodiment.
With the foregoing drawings in mind, certain embodiments of the disclosure have been shown and described in more detail below. These drawings and written description are not intended to limit the scope of the disclosed concepts in any way, but rather to illustrate the concepts of the disclosure to those skilled in the art by reference to specific embodiments.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the exemplary embodiments below are not intended to represent all implementations consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present disclosure, as detailed in the appended claims.
The embodiment of the disclosure provides a method for executing a service, which can be implemented by a terminal and implemented by matching a plurality of other terminals and a server. The terminal can be a mobile phone, a desktop computer, a notebook computer, etc. Fig. 1 is a schematic structural diagram of a system for executing a service according to an embodiment of the present disclosure. The system may include a terminal, a plurality of other terminals, and a server. The devices belong to RDMA network devices, and the terminals can directly operate data in the memory of the bottom layer of the server through RDMA atomic operation (the RDMA atomic operation is a unilateral operation) without perception of the high layer of the server.
The high-level server needs to check the current business execution progress mark at some moments, and determines the execution condition of the target business through the current business execution progress mark. When any terminal indicating the server to execute the target service has an operation fault, the terminals except the terminal cannot sense the fault. If the terminal with the later sequence indicated by the mark updating sequence identifier indicates and determines that the server completes the execution of the target service, the terminal with the later sequence indicated by the mark updating sequence identifier needs to update the service execution progress mark urgently, so that when the server determines the execution condition of the target service through the current service execution progress mark, the determined execution condition of the target service is consistent with the actual execution condition.
An exemplary embodiment of the present disclosure provides a method for executing a service, and as shown in fig. 2, a processing flow of the method may include the following steps:
step S210, instructing the server to execute the target service through RDMA atomic operation.
In implementation, the terminal can instruct the bottom server layer to execute the target service through an RDMA atomic operation, and the high server layer does not sense the operation in the process of executing the target service. The target service may be a service for writing log data in the target log, or may be other executable transactions.
Before the terminal needs the server to execute the target service, the terminal can acquire the mark updating sequence identifier from the server through RDMA atomic operation, and after the mark updating sequence identifier is taken, the terminal can instruct the server to execute the target service. If a plurality of terminals simultaneously need the server to execute the target service, the plurality of terminals may sequentially acquire the tag update sequence identifier from the server through RDMA atomic operation, and after the tag update sequence identifier is received, the plurality of terminals may simultaneously instruct the server to execute the target service, for example, the plurality of terminals include the terminal A, B, C, after the terminal A, B, C sequentially acquires the tag update sequence identifiers 1, 2, and 3, the plurality of terminals may simultaneously instruct the server to execute the target service, and the server may concurrently execute the target service instructed by the plurality of terminals.
Step S220, after determining that the server has finished executing the target service, determining at least one detection time point for obtaining the service execution progress marker from the server according to a preset detection time point determination rule.
In the implementation, the terminal instructs the server to execute the target service, after the target service is determined to be executed by the server, the terminal needs to query the service execution progress mark in the server, and if the queried service execution progress mark is the same as the mark update sequence identifier obtained by the terminal, the terminal can carry out carry update on the service execution progress mark. In the above process, the terminal needs to query the service execution progress mark in the server, the terminal may determine a detection time point for subsequently acquiring the service execution progress mark from the server according to a preset detection time point determination rule, and when the detection time point is reached, the terminal may query the service execution progress mark in the server once. The detection time point may be one or more.
After the terminal determines that the server finishes executing the target service, the terminal can query the service execution progress mark in the server, and determine a detection time point for querying the service execution progress mark in the server next time based on the queried service execution progress mark. When the determined detection time point is reached, the terminal can query the service execution progress mark in the server again, and based on the queried service execution progress mark, the detection time point of the service execution progress mark in the server is determined again. The terminal may repeatedly execute the above operations until the queried service execution progress marker is the same as the marker update sequence identifier obtained by the terminal, which indicates that the terminal may carry out carry update on the service execution progress marker, and the terminal may stop continuously querying the service execution progress marker in the server.
And step S230, when any detection time point is reached, acquiring a service execution progress mark from the server through RDMA atomic operation, determining the time length of the service execution progress mark which is not updated, and if the time length of the service execution progress mark which is not updated is greater than or equal to a preset time length threshold value, carrying out carry updating on the service execution progress mark through RDMA atomic operation.
In implementation, the terminal may determine at least one detection time point for obtaining the service execution progress indicator from the server according to a preset detection time point determination rule, and the terminal may obtain the service execution progress indicator from the server through an RDMA atomic operation whenever any detection time point is reached. Where the RDMA atomic operation may be an RDMA Read operation. The service execution progress flag may be a count value in a counter, and may be represented by a sequence generator, an Identity (ID) generator, a logic clock, a count value of a distributed lock, and the like, in addition to the service execution progress flag being represented by the count value of the counter.
Terminal deviceAfter querying the service execution progress mark in the server each time, the service execution progress mark may be stored, and the corresponding detection time point may be recorded. After the terminal queries the service execution progress mark in the server again, the currently queried service execution progress mark may be compared with the previously queried service execution progress mark, and if the currently queried service execution progress mark is consistent with the previously queried service execution progress mark, it indicates that the currently queried service execution progress mark has not been updated for a period of time, and the terminal may determine a difference between a detection time point of the service execution progress mark which is not updated by the first query and a detection time point of the service execution progress mark which is not updated by the current query, as a duration for which the service execution progress mark is not updated. The terminal can judge whether the time length of the service execution progress mark which is not updated is greater than or equal to a preset time length threshold value, if the time length of the service execution progress mark which is not updated is greater than or equal to the preset time length threshold value, it is indicated that one other terminal in the plurality of terminals has an operation fault in the process of indicating the server to execute the target service, and at the moment, the terminal which detects the fault can automatically carry out carry updating on the service execution progress mark through RDMA atomic operation. Wherein the RDMA atomic operation may be RDMA CAS (N)p,Np+1) operation, NpAnd Np+1 is a parameter that the operation requires to be passed in.
Optionally, the server with the preset time threshold as a preset multiple needs to execute the target service once.
In implementation, the time length required for the server to execute the target service once is set to T, which may also be referred to as a lease time, and the preset time length threshold may be a preset multiple of T. The preset multiple may be set to 2, and the preset duration threshold may be 2T, that is, 2 lease times. The preset time length threshold value can be set according to actual requirements, or the multiple can be set.
Optionally, before instructing the server to execute the target service, the method provided by the embodiment of the present disclosure may further include: and acquiring a mark updating sequence identifier from the server through an RDMA atomic operation.
In an implementation, when the target transaction is a transaction that writes log data in the target log, the flag update sequence identifier may be the same value as the data write location, i.e., at what data write location the log data is written, in what sequence the transaction execution progress flag is updated.
Optionally, when the target service is a service for writing log data in the target log, the method provided by the embodiment of the present disclosure may include: acquiring a data writing position corresponding to a target log from a server through RDMA atomic operation, and indicating the server to write log data in the data writing position; after determining that the server writes log data in the data writing position, determining at least one detection time point for acquiring a writing position mark from the server according to a preset detection time point determination rule; and when any detection time point is reached, acquiring a writing position mark from the server through RDMA atomic operation, determining the time length of the acquired writing position mark which is not updated, and if the time length of the acquired writing position mark which is not updated is greater than a preset time length threshold value, carrying out carry updating on the writing position mark through the RDMA atomic operation.
In implementation, as shown in fig. 3, a Counter may be set in the server, and the Counter may be referred to as a Counter, and the Counter may include two parts, a first part is Nprocessing and a second part is Nincoming. The total data size of the count value of the counter may be 64 bits, Nprocessing may account for 32 bits, and Nincoming may account for 32 bits. The Nprocessing count may represent the sequence number currently being processed (also referred to as a write location tag), and the Nincoding count may represent the number that the next terminal to obtain the tag update sequence identifier from the server can take (also referred to as a data write location). Of course, the total data amount of the count value of the counter may also be set to other values, and the embodiment of the present disclosure is not limited thereto.
The system for executing the service may include a terminal and a Server, where the terminal may also be referred to as a Client side and the Server may also be referred to as a Server side. As shown in fig. 4, the Client and the Server are disposed in the RDMA network, the Client and the Server are respectively installed with an RDMA driver, and the Server is also installed with a Memory (Memory), which is an operation object of RDMA atomic operation. In practical application, a plurality of Client terminals and a plurality of Server terminals may be arranged in an RDMA network, in the embodiment of the present disclosure, the working mechanisms of one Client terminal and one Server terminal are taken as an example for description, and the working mechanisms of other Client terminals and other Server terminals are similar to them, and a description thereof is not repeated.
The Client side can instruct the Server side to execute a specific operation through RDMA atomic operation. In the disclosed embodiments, 3 RDMA atomic operations are primarily involved, including RDMA Fetch-and-Add (N)i) Operation, which may be denoted as RDMA FAA (N)i) (ii) a RDMA Read operation, which may be denoted RDMA Read; RDMA Fetch-and-Add (N)p) Operation, denoted RDMA FAA (N)p)。
When the Client needs to write log data into the Server, as shown in fig. 5, the Client can pass through RDMA FAA (N)i) The count value of the Nincoming in the Server end is obtained, and meanwhile, the count value of the Nincoming in the Server end can be added with 1. As shown in fig. 6, when the detection time point is reached, the Client may obtain the Nprocessing count value and the Nincoming count value in the Server via RDMA Read. As shown in fig. 7, when the count value of Nprocessing queried by the Client is the same as the count value of nincoding acquired by the Client, it indicates that the Client can carry out carry update on Nprocessing in the Server, and at this time, the Client can perform carry update on Nprocessing in the Server through RDMA FAA (N)p) The count value of Nprocessing in the Server end is obtained, and meanwhile, the count value of Nprocessing in the Server end can be increased by 1. When the count value of the Nprocessing queried by the Client is smaller than the count value of the nincoding acquired by the Client by N (N is greater than or equal to 1), the Client may record the count value of the Nprocessing queried currently. When the detection time point is reached again, the Client terminal can query the Nprocessing count value again, and if the queried Nprocessing count value is not updated compared with the queried Nprocessing count value, and the updating time length is greater than the preset time length threshold value, the RDMA CAS (N-RDMA CAS) is passed through (N is a maximum allowable resource locator)p,Np+1) operation, automatically executing on the serviceThe progress mark carries out carry updating.
Optionally, the step of carrying out carry update on the service execution progress flag through an RDMA atomic operation may include: through RDMA atomic operation, indicating a server to compare a current service execution progress mark with a service execution progress mark of which the non-updated time length is greater than a preset time length threshold value; if the current service execution progress mark is matched with the service execution progress mark of which the non-updated duration is greater than the preset duration threshold, indicating the server to increase the current service execution progress mark by a first preset value through RDMA atomic operation; and if the current service execution progress mark is not matched with the service execution progress mark of which the time length without updating is greater than the preset time length threshold, indicating the server to keep the current service execution progress mark unchanged through RDMA atomic operation.
In implementation, the terminal may pass through RDMA CAS (N)p,NpAnd +1), automatically carrying out carry updating on the service execution progress mark. Wherein N ispAnd Np+1 is the parameter that the operation needs to be passed in, NpFor the service requiring carry updating, Np+1 is the service execution progress mark after carry updating, and N can be setp+1 set to the ratio NpA value greater than 1. Thus, the terminal can pass through RDMA CAS (N)p,Np+1) operation, instructing the server to compare the current business execution progress mark with NpIf the current service execution progress flag and NpIf the indication is valid, the current service execution progress mark can be replaced by Np+1。
If the terminal finds that the service execution progress marker needs to be carried out carry updating while other terminals find that the service execution progress marker needs to be carried out carry updating through the method provided by the embodiment of the disclosure, the server may receive the indication of carrying out carry updating on the service execution progress marker twice or more. At this time, the server performs carry updating on the service execution progress mark according to the indication of performing carry updating on the service execution progress mark received at the first time. On-pair serviceAfter the execution progress mark carries out carry updating, if an indication for carrying out carry updating on the service execution progress mark is received later, a parameter N carried in the indicationpThe server compares the current business execution progress mark with the server, so that the description indication is invalid, and the server keeps the current business execution progress mark unchanged.
By the mode, even if a plurality of terminals find that carry updating needs to be carried out on the service execution progress mark at the same time, the carry updating is carried out on the progress mark only once, and the situation that different terminals carry updating on the service execution progress mark for many times is avoided.
Optionally, after determining that the server has completed executing the target service, according to a preset detection time point determination rule, the step of determining at least one detection time point for obtaining the service execution progress marker from the server may include: after the server is determined to finish executing the target service, acquiring a service execution progress mark from the server; determining a difference value between the service execution progress mark and the mark updating sequence mark; and determining at least one detection time point for acquiring the service execution progress mark from the server according to the difference.
In implementation, the terminal may determine at least one detection time point for obtaining the service execution progress indicator from the server, where a time interval of each time point is the same and is a preset value. Or, after determining that the server has completed executing the target service, the terminal may obtain a service execution progress marker from the server, determine a difference between the service execution progress marker and the marker update sequence identifier, and determine at least one detection time point at which the service execution progress marker is obtained from the server according to the difference.
After the server is determined to finish the target service, the terminal can timely acquire a service execution progress mark from the server for determining the number of the sequence numbers currently being processed, and meanwhile, the terminal can also determine a mark update sequence identifier acquired in advance for determining the number of the sequence numbers taken by the terminal. When the sequence number currently being processed is matched with the sequence number taken by the server, the server is indicated by the server to carry out carry updating on the service execution progress mark. If the sequence number currently being processed is different from the sequence number taken by the terminal, the terminal can wait for a period of time more and obtain the service execution progress mark from the server again. In practical application, the terminal may determine a difference between the service execution progress marker and the marker update sequence identifier, and determine a detection time point for obtaining the service execution progress marker from the server according to the difference.
For example, if the service execution progress flag is 1, the flag update sequence flag is 3, and the difference between them is 2, it indicates that two terminals in front need to instruct the server to carry out carry update on the service execution progress flag, and it turns to the current terminal to instruct the server to carry out carry update on the service execution progress flag. Assuming that the time length required by the server to execute the target service once is T, the current terminal may wait for the determined difference multiple T to obtain the service execution progress mark from the server again, that is, wait for 2T to obtain the service execution progress mark from the server again. In this way, when the terminal acquires the service execution progress mark from the server again, the acquired service execution progress mark should be the same as or closer to the mark update sequence identifier acquired in advance. The detection time point determined based on the difference may be taken as a first detection time point, a time point obtained by adding T to the first detection time point may be taken as a second detection time point, and a time point obtained by adding T to the second detection time point may be taken as a third detection time point. By analogy, when the first detection time point is determined, the time point obtained by adding T once to the first detection time point is used as one detection time point, and finally a plurality of detection time points can be obtained.
Or, the terminal may determine the first detection time point, obtain the service execution progress marker from the server after the first detection time point is reached, determine a difference between the service execution progress marker and the marker update sequence identifier, and determine the second detection time point at which the service execution progress marker is obtained from the server according to the difference. The terminal can repeatedly execute the steps of obtaining the service execution progress mark from the server when the determined detection time point is reached, determining the difference value between the service execution progress mark and the mark updating sequence mark, determining the detection time point of obtaining the service execution progress mark from the server according to the difference value, and stopping repeatedly executing the steps until the service execution progress mark obtained by the terminal is the same as the mark updating sequence mark obtained in advance by the terminal.
By the method, the times that the terminal acquires the service execution progress mark from the server can be reduced, the working pressure of the server is relieved, and the operating efficiency of the server is improved.
Optionally, after obtaining the service execution progress mark from the server, the method provided by the embodiment of the present disclosure may further include: comparing the service execution progress mark with the mark updating sequence mark; and if the service execution progress mark is matched with the mark updating sequence mark, indicating the server to increase the service execution progress mark by a second preset value.
In implementation, each time any detection time point is reached, the terminal may obtain a service execution progress marker from the server, compare the obtained service execution progress marker with a marker update sequence marker obtained in advance, indicate that the terminal indicates that the server updates the service execution progress marker by carrying out a carry in turn if the service execution progress marker is the same as the marker update sequence marker, and at this time, the terminal may indicate that the server increases the service execution progress marker by a second preset value (e.g., 1).
Optionally, after obtaining the service execution progress mark from the server, the method provided by the embodiment of the present disclosure may further include: and if the service execution progress mark is larger than or equal to the mark updating sequence mark, switching to the step of executing the RDMA atomic operation and indicating the server to execute the target service.
In implementation, some target terminals which are found not to indicate the server to carry out carry updating on the service execution progress flag beyond the preset time threshold do not necessarily have to be the operation fault. The target terminal may be that the processor is busy at the time when the server should be instructed to carry out carry updating on the service execution progress mark, and no time is instructed to carry updating on the service execution progress mark by the server. When the processor of the target terminal is in an idle time, the target terminal acquires a service execution progress mark from the server, compares the acquired service execution progress mark with a mark updating sequence mark acquired in advance, and because the service execution progress mark is automatically indicated by other terminals and the server carries out carry updating on the service execution progress mark, the service execution progress mark acquired by the target terminal is larger than or equal to the mark updating sequence mark acquired in advance. The target terminal cannot successfully update the service execution progress mark, at this time, the target terminal may obtain the mark update sequence mark from the server again, instruct the server to execute the target service again, and repeatedly execute all the processes in the embodiment of the present disclosure until the server can be successfully instructed to execute the target service and the service execution progress mark is successfully updated.
In an application scenario, when the target service is a service for writing log data in a target log, as shown in fig. 8, there are 3 terminals that need to write log data in the target log at the same time, and the 3 terminals include Client 1, Client 2, and Client 3. Before each Client writes log data, the server needs to acquire a data writing position from the server, so that different clients can respectively acquire different data writing positions, and the different clients can parallelly instruct the server to write the log data. In fig. 8, the Client and the Server interact with each other, as shown by the sequence numbers in parentheses in the connecting line in fig. 8, the sequence numbers from small to large indicate the sequence of the interactions, and the Client and the Server interact 7 times as shown by the sequence numbers, which includes:
(1) client 1 over RDMA FAA (N)i) Operation, obtaining current N to serveriValue 1, data write location 1 is obtained.
(2) Client 2 over RDMA FAA (N)i) Operation, obtaining current N to serveriValue 2, get data write location 2.
(3) Client3 over RDMA FAA (N)i) Operation, obtaining current N to serveriValue 3, get data write location 3.
N is acquired by Client 1, Client 2, and Client3iAnd after the data writing position, the server can be instructed to write the log data in the acquired data writing position in parallel.
(4) After Client 1 instructs the server to write the log data, Client 1 may go through RDMA FAA (N)p) Operation release NpRelease of NpAlso called commit operation, N in serverpIn this case 2, NiIn this case 3.
(5) Releasing N by Client 1pLater, if the log data needs to be written again, it can go through RDMA FAA (N) againi) Operation, obtaining current N to serveriValue 4, data write location 4 is obtained.
(6) Each Client, after determining that the server writes log data, is ready to perform a commit operation. At this time, each Client that determines that the server writes log data obtains the current N from the serverpTo determine whether it is time for the current Client to perform a commit operation. If any of the clients (e.g., Client3 in FIG. 8) finds after 2T, NpIf no update is performed, the Client can determine that there is an operation failure of the target Client (e.g., Client 2 in fig. 8). At this time, Client3 may go through RDMA CAS (N)p,Np+1) operation, N in the serverpPlus 1. Optionally, the Client3 may also send a message indicating that the Client 2 has an operational failure to the server, indicating that the server Client 2 has an operational failure. At this time, Np in the server is 3, NiIs 4.
(7) After Client3 determines that the server writes log data, it may go through RDMA FAA (N)p) Operation release NpN in the serverpIn this case 4, NiThis time 4.
By the method provided by the embodiment of the disclosure, the mark update sequence identifier can be quickly acquired from the server through the RDMA atomic operation, and the problem that the state cannot be sensed because the RDMA atomic operation is a unilateral operation can be avoided. The method provided by the embodiment of the disclosure can be applied to a distributed shared log system, a distributed transaction system and the like. In the embodiment of the present disclosure, the service execution progress flag and the flag update sequence flag may be represented by a counter, and in addition, the service execution progress flag and the flag update sequence flag may be represented by a sequence generator, an object ID generator, a logic clock, a distributed lock, and the like, which is not limited to this embodiment of the present disclosure.
By the method provided by the embodiment of the disclosure, when any terminal indicating the server to execute the target service has an operation fault, other terminals can acquire the service execution progress mark from the server, determine the time length of the service execution progress mark which is not updated, and if the time length of the service execution progress mark which is not updated is greater than the preset time length threshold, it indicates that the terminal indicating the server to execute the target service has the operation fault, and then other terminals can automatically update the service execution progress mark. Therefore, even if a terminal with operation failure exists, other terminals with the later sequence indicated by the mark updating sequence identification can continuously update the service execution progress mark. When the server high level determines the execution condition of the target service through the current service execution progress mark, the determined execution condition of the target service can be consistent with the actual execution condition.
Yet another exemplary embodiment of the present disclosure provides an apparatus for performing a service, as shown in fig. 9, the apparatus including:
an execution module 910, configured to instruct the server to execute a target service through a remote direct data access RDMA atomic operation;
a determining module 920, configured to determine, according to a preset detection time point determining rule, at least one detection time point for obtaining a service execution progress marker from the server after it is determined that the server has finished executing the target service;
an updating module 930, configured to, each time any detection time point is reached, obtain the service execution progress marker from the server through an RDMA atomic operation, determine a duration for which the service execution progress marker is not updated, and update the service execution progress marker by carrying through the RDMA atomic operation if the duration for which the service execution progress marker is not updated is greater than or equal to a preset duration threshold.
Optionally, the target service is a service for writing log data in a target log;
the execution module 910 is configured to obtain, by an RDMA atomic operation, a data writing position corresponding to the target log from a server, and instruct the server to write log data in the data writing position;
the determining module 920 is configured to determine, according to a preset detection time point determining rule, at least one detection time point for obtaining a writing position flag from the server after it is determined that the server writes the log data in the data writing position;
the updating module 930 is configured to, each time when any detection time point is reached, acquire the writing position flag from the server through an RDMA atomic operation, determine a duration that the acquired writing position flag is not updated, and perform carry update on the writing position flag through the RDMA atomic operation if the duration that the writing position flag is not updated is greater than or equal to a preset duration threshold.
Optionally, the updating module 930 is configured to:
through RDMA atomic operation, the server is instructed to compare a current service execution progress mark with a service execution progress mark of which the non-updated time length is greater than or equal to a preset time length threshold value;
if the current service execution progress mark is matched with the service execution progress mark of which the non-updated duration is greater than or equal to a preset duration threshold, instructing the server to increase the current service execution progress mark by a first preset value through RDMA atomic operation;
and if the current service execution progress mark is not matched with the service execution progress mark of which the non-updated duration is greater than or equal to the preset duration threshold, indicating the server to keep the current service execution progress mark unchanged through RDMA atomic operation.
Optionally, the apparatus further comprises:
and the acquisition module is used for acquiring the mark updating sequence identifier from the server through RDMA atomic operation.
Optionally, the determining module 920 is configured to:
after the target service is determined to be executed by the server, acquiring a service execution progress mark from the server;
determining a difference value between the service execution progress mark and the mark updating sequence mark;
and determining at least one detection time point for acquiring the service execution progress mark from the server according to the difference.
Optionally, the apparatus further comprises:
the comparison module is used for comparing the service execution progress mark with the mark updating sequence mark;
and the indicating module is used for indicating the server to increase the service execution progress mark by a second preset value when the service execution progress mark is smaller than the mark updating sequence mark by a preset difference value.
Optionally, the executing module 910 is further configured to:
and if the service execution progress mark is larger than or equal to the mark updating sequence mark, switching to a step of executing RDMA atomic operation to instruct the server to execute the target service.
Optionally, the preset time length threshold is a preset multiple of the time length required by the server to execute the target service once.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
By the device provided by the embodiment of the disclosure, when any terminal indicating the server to execute the target service has an operation fault, other terminals can acquire the service execution progress mark from the server, determine the time length of the service execution progress mark which is not updated, and if the time length of the service execution progress mark which is not updated is greater than the preset time length threshold, it indicates that the terminal indicating the server to execute the target service has the operation fault, and then other terminals can automatically update the service execution progress mark. Therefore, even if a terminal with operation failure exists, other terminals with the later sequence indicated by the mark updating sequence identification can continuously update the service execution progress mark. When the server high level determines the execution condition of the target service through the current service execution progress mark, the determined execution condition of the target service can be consistent with the actual execution condition.
It should be noted that: in the device for executing a service provided in the foregoing embodiment, when executing a service, only the division of the functional modules is illustrated, and in practical applications, the function distribution may be completed by different functional modules according to needs, that is, the internal structure of the terminal is divided into different functional modules, so as to complete all or part of the functions described above. In addition, the apparatus for executing a service and the method for executing a service provided in the foregoing embodiments belong to the same concept, and specific implementation processes thereof are detailed in the method embodiments and will not be described herein again.
Fig. 10 shows a schematic structural diagram of a terminal 1800 according to an exemplary embodiment of the present disclosure. The terminal 1800 may be: a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III, motion video Experts compression standard Audio Layer 3), an MP4 player (Moving Picture Experts Group Audio Layer IV, motion video Experts compression standard Audio Layer 4), a notebook computer, or a desktop computer. The terminal 1800 may also be referred to by other names such as user equipment, portable terminal, laptop terminal, desktop terminal, and the like.
Generally, the terminal 1800 includes: a processor 1801 and a memory 1802.
The processor 1801 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and so on. The processor 1801 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), and a PLA (Programmable Logic Array). The processor 1801 may also include a main processor and a coprocessor, where the main processor is a processor for Processing data in an awake state, and is also called a Central Processing Unit (CPU); a coprocessor is a low power processor for processing data in a standby state. In some embodiments, the processor 1801 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing content required to be displayed on the display screen. In some embodiments, the processor 1801 may further include an AI (Artificial Intelligence) processor for processing computing operations related to machine learning.
Memory 1802 may include one or more computer-readable storage media, which may be non-transitory. Memory 1802 may also include high speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In some embodiments, a non-transitory computer readable storage medium in memory 1802 is used to store at least one instruction for execution by processor 1801 to implement a method of performing a service as provided by a method embodiment herein.
In some embodiments, the terminal 1800 may further optionally include: a peripheral interface 1803 and at least one peripheral. The processor 1801, memory 1802, and peripheral interface 1803 may be connected by a bus or signal line. Each peripheral device may be connected to the peripheral device interface 1803 by a bus, signal line, or circuit board. Specifically, the peripheral device includes: at least one of radio frequency circuitry 1804, touch screen display 1805, camera 1806, audio circuitry 1807, positioning components 1808, and power supply 1809.
The peripheral interface 1803 may be used to connect at least one peripheral associated with I/O (Input/Output) to the processor 1801 and the memory 1802. In some embodiments, the processor 1801, memory 1802, and peripheral interface 1803 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 1801, the memory 1802, and the peripheral device interface 1803 may be implemented on separate chips or circuit boards, which is not limited in this embodiment.
The Radio Frequency circuit 1804 is used for receiving and transmitting RF (Radio Frequency) signals, also called electromagnetic signals. The radio frequency circuitry 1804 communicates with communication networks and other communication devices via electromagnetic signals. The rf circuit 1804 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals into electrical signals. Optionally, the radio frequency circuitry 1804 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a subscriber identity module card, and so forth. The radio frequency circuitry 1804 may communicate with other terminals via at least one wireless communication protocol. The wireless communication protocols include, but are not limited to: the world wide web, metropolitan area networks, intranets, generations of mobile communication networks (2G, 3G, 4G, and 5G), Wireless local area networks, and/or WiFi (Wireless Fidelity) networks. In some embodiments, the rf circuit 1804 may also include NFC (Near Field Communication) related circuits, which are not limited in this application.
The display screen 1805 is used to display a UI (User Interface). The UI may include graphics, text, icons, video, and any combination thereof. When the display screen 1805 is a touch display screen, the display screen 1805 also has the ability to capture touch signals on or over the surface of the display screen 1805. The touch signal may be input to the processor 1801 as a control signal for processing. At this point, the display 1805 may also be used to provide virtual buttons and/or a virtual keyboard, also referred to as soft buttons and/or a soft keyboard. In some embodiments, the display 1805 may be one, providing a front panel of the terminal 1800; in other embodiments, the number of the display screens 1805 may be at least two, and each of the display screens is disposed on a different surface of the terminal 1800 or is in a foldable design; in still other embodiments, the display 1805 may be a flexible display disposed on a curved surface or on a folded surface of the terminal 1800. Even more, the display 1805 may be arranged in a non-rectangular irregular figure, i.e. a shaped screen. The Display 1805 may be made of LCD (Liquid Crystal Display), OLED (Organic Light-Emitting Diode), or the like.
The camera assembly 1806 is used to capture images or video. Optionally, the camera assembly 1806 includes a front camera and a rear camera. Generally, a front camera is disposed at a front panel of the terminal, and a rear camera is disposed at a rear surface of the terminal. In some embodiments, the number of the rear cameras is at least two, and each rear camera is any one of a main camera, a depth-of-field camera, a wide-angle camera and a telephoto camera, so that the main camera and the depth-of-field camera are fused to realize a background blurring function, and the main camera and the wide-angle camera are fused to realize panoramic shooting and VR (Virtual Reality) shooting functions or other fusion shooting functions. In some embodiments, camera assembly 1806 may also include a flash. The flash lamp can be a monochrome temperature flash lamp or a bicolor temperature flash lamp. The double-color-temperature flash lamp is a combination of a warm-light flash lamp and a cold-light flash lamp, and can be used for light compensation at different color temperatures.
The audio circuitry 1807 may include a microphone and a speaker. The microphone is used for collecting sound waves of a user and the environment, converting the sound waves into electric signals, and inputting the electric signals to the processor 1801 for processing or inputting the electric signals to the radio frequency circuit 1804 to achieve voice communication. The microphones may be provided in a plurality, respectively, at different positions of the terminal 1800 for the purpose of stereo sound collection or noise reduction. The microphone may also be an array microphone or an omni-directional pick-up microphone. The speaker is used to convert electrical signals from the processor 1801 or the radio frequency circuitry 1804 to sound waves. The loudspeaker can be a traditional film loudspeaker or a piezoelectric ceramic loudspeaker. When the speaker is a piezoelectric ceramic speaker, the speaker can be used for purposes such as converting an electric signal into a sound wave audible to a human being, or converting an electric signal into a sound wave inaudible to a human being to measure a distance. In some embodiments, audio circuitry 1807 may also include a headphone jack.
The positioning component 1808 is utilized to locate a current geographic position of the terminal 1800 for navigation or LBS (Location Based Service). The Positioning component 1808 may be a Positioning component based on a Global Positioning System (GPS) in the united states, a beidou System in china, or a galileo System in russia.
The power supply 1809 is used to power various components within the terminal 1800. The power supply 1809 may be ac, dc, disposable or rechargeable. When the power supply 1809 includes a rechargeable battery, the rechargeable battery may be a wired rechargeable battery or a wireless rechargeable battery. The wired rechargeable battery is a battery charged through a wired line, and the wireless rechargeable battery is a battery charged through a wireless coil. The rechargeable battery may also be used to support fast charge technology.
In some embodiments, the terminal 1800 also includes one or more sensors 1810. The one or more sensors 1810 include, but are not limited to: acceleration sensor 1811, gyro sensor 1812, pressure sensor 1813, fingerprint sensor 1814, optical sensor 1815, and proximity sensor 1816.
The acceleration sensor 1811 may detect the magnitude of acceleration on three coordinate axes of a coordinate system established with the terminal 1800. For example, the acceleration sensor 1811 may be used to detect components of gravitational acceleration in three coordinate axes. The processor 1801 may control the touch display 1805 to display the user interface in a landscape view or a portrait view according to the gravitational acceleration signal collected by the acceleration sensor 1811. The acceleration sensor 1811 may also be used for acquisition of motion data of a game or a user.
The gyro sensor 1812 may detect a body direction and a rotation angle of the terminal 1800, and the gyro sensor 1812 may cooperate with the acceleration sensor 1811 to collect a 3D motion of the user on the terminal 1800. The processor 1801 may implement the following functions according to the data collected by the gyro sensor 1812: motion sensing (such as changing the UI according to a user's tilting operation), image stabilization at the time of photographing, game control, and inertial navigation.
The pressure sensors 1813 may be disposed on a side bezel of the terminal 1800 and/or on a lower layer of the touch display 1805. When the pressure sensor 1813 is disposed on a side frame of the terminal 1800, a user's grip signal on the terminal 1800 can be detected, and the processor 1801 performs left-right hand recognition or shortcut operation according to the grip signal collected by the pressure sensor 1813. When the pressure sensor 1813 is disposed at the lower layer of the touch display screen 1805, the processor 1801 controls the operability control on the UI interface according to the pressure operation of the user on the touch display screen 1805. The operability control comprises at least one of a button control, a scroll bar control, an icon control and a menu control.
The fingerprint sensor 1814 is used to collect the fingerprint of the user, and the processor 1801 identifies the user according to the fingerprint collected by the fingerprint sensor 1814, or the fingerprint sensor 1814 identifies the user according to the collected fingerprint. Upon recognizing that the user's identity is a trusted identity, the processor 1801 authorizes the user to perform relevant sensitive operations, including unlocking a screen, viewing encrypted information, downloading software, paying, and changing settings, etc. The fingerprint sensor 1814 may be disposed on the front, back, or side of the terminal 1800. When a physical key or vendor Logo is provided on the terminal 1800, the fingerprint sensor 1814 may be integrated with the physical key or vendor Logo.
The optical sensor 1815 is used to collect the ambient light intensity. In one embodiment, the processor 1801 may control the display brightness of the touch display 1805 based on the ambient light intensity collected by the optical sensor 1815. Specifically, when the ambient light intensity is high, the display brightness of the touch display screen 1805 is increased; when the ambient light intensity is low, the display brightness of the touch display 1805 is turned down. In another embodiment, the processor 1801 may also dynamically adjust the shooting parameters of the camera assembly 1806 according to the intensity of the ambient light collected by the optical sensor 1815.
A proximity sensor 1816, also known as a distance sensor, is typically provided on the front panel of the terminal 1800. The proximity sensor 1816 is used to collect the distance between the user and the front surface of the terminal 1800. In one embodiment, when the proximity sensor 1816 detects that the distance between the user and the front surface of the terminal 1800 gradually decreases, the processor 1801 controls the touch display 1805 to switch from the bright screen state to the dark screen state; when the proximity sensor 1816 detects that the distance between the user and the front surface of the terminal 1800 becomes gradually larger, the processor 1801 controls the touch display 1805 to switch from the breath screen state to the bright screen state.
Those skilled in the art will appreciate that the configuration shown in fig. 10 is not intended to be limiting of terminal 1800 and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components may be used.
It will be understood that the present disclosure is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims (26)

1. A method of performing a service, the method comprising:
instructing the server to perform a target service by a remote direct data access, RDMA, atomic operation;
after the target service is determined to be executed by the server, determining at least one detection time point for acquiring a service execution progress mark from the server according to a preset detection time point determination rule;
and when any detection time point is reached, acquiring the service execution progress mark from the server through RDMA atomic operation, determining the time length of the service execution progress mark which is not updated, and carrying out carry updating on the service execution progress mark through RDMA atomic operation if the time length of the service execution progress mark which is not updated is greater than or equal to a preset time length threshold.
2. The method of claim 1, wherein the target transaction is a transaction that writes log data in a target log, and wherein instructing the server to execute the target transaction via an RDMA atomic operation comprises:
acquiring a data writing position corresponding to the target log from a server through RDMA atomic operation, and indicating the server to write log data in the data writing position;
after the target service is determined to be executed by the server, determining at least one detection time point for acquiring a service execution progress mark from the server according to a preset detection time point determination rule, including:
after the server is determined to write the log data in the data writing position, determining at least one detection time point for acquiring a writing position mark from the server according to a preset detection time point determination rule;
when any detection time point is reached, the service execution progress mark is obtained from the server through RDMA atomic operation, the time length of the service execution progress mark which is not updated is determined, if the time length of the service execution progress mark which is not updated is greater than or equal to a preset time length threshold value, the service execution progress mark is carried out carry updating through the RDMA atomic operation, and the method comprises the following steps:
and when any detection time point is reached, acquiring the writing position mark from the server through RDMA atomic operation, determining the time length of the acquired writing position mark which is not updated, and if the time length of the acquired writing position mark which is not updated is greater than or equal to a preset time length threshold value, carrying out carry updating on the writing position mark through the RDMA atomic operation.
3. The method of claim 1, wherein said carry updating the traffic execution progress marker by an RDMA atomic operation comprises:
through RDMA atomic operation, the server is instructed to compare a current service execution progress mark with a service execution progress mark of which the non-updated time length is greater than or equal to a preset time length threshold value;
if the current service execution progress mark is matched with the service execution progress mark of which the non-updated duration is greater than or equal to a preset duration threshold, instructing the server to increase the current service execution progress mark by a first preset value through RDMA atomic operation;
and if the current service execution progress mark is not matched with the service execution progress mark of which the non-updated duration is greater than or equal to the preset duration threshold, indicating the server to keep the current service execution progress mark unchanged through RDMA atomic operation.
4. The method of claim 1, wherein prior to instructing the server to execute the target service, the method further comprises:
and acquiring a mark updating sequence identifier from the server through RDMA atomic operation.
5. The method according to claim 4, wherein the determining, according to a preset detection time point determination rule, at least one detection time point for obtaining a service execution progress flag from the server after determining that the server has executed the target service, comprises:
after the target service is determined to be executed by the server, acquiring a service execution progress mark from the server;
determining a difference value between the service execution progress mark and the mark updating sequence mark;
and determining at least one detection time point for acquiring the service execution progress mark from the server according to the difference.
6. The method according to claim 4, wherein after obtaining the service execution progress flag from the server, the method further comprises:
comparing the service execution progress mark with the mark updating sequence mark;
and if the service execution progress mark is matched with the mark updating sequence mark, indicating the server to increase the service execution progress mark by a second preset numerical value.
7. The method according to claim 4, wherein after obtaining the service execution progress flag from the server, the method further comprises:
and if the service execution progress mark is larger than the mark updating sequence mark, switching to a step of executing RDMA atomic operation and indicating the server to execute the target service.
8. The method according to any of claims 1-7, wherein the preset duration threshold is a preset multiple of the duration required by the server to execute the target service once.
9. An apparatus for performing a service, the apparatus comprising:
an execution module to instruct the server to execute a target service via a remote direct data access RDMA atomic operation;
the determining module is used for determining at least one detection time point for acquiring a service execution progress mark from the server according to a preset detection time point determining rule after the server is determined to finish executing the target service;
and the updating module is used for acquiring the service execution progress mark from the server through RDMA atomic operation when any detection time point is reached, determining the time length of the service execution progress mark which is not updated, and carrying out carry updating on the service execution progress mark through RDMA atomic operation if the time length of the service execution progress mark which is not updated is greater than or equal to a preset time length threshold.
10. The apparatus of claim 9, wherein the target transaction is a transaction that writes log data in a target log;
the execution module is used for acquiring a data writing position corresponding to the target log from a server through RDMA atomic operation, and indicating the server to write log data in the data writing position;
the determining module is configured to determine, according to a preset detection time point determining rule, at least one detection time point at which a writing position flag is obtained from the server after it is determined that the server writes the log data in the data writing position;
the updating module is used for acquiring the writing position mark from the server through RDMA atomic operation when any detection time point is reached, determining the duration of the acquired writing position mark which is not updated, and if the duration of the non-updating is larger than or equal to a preset duration threshold, carrying out carry updating on the writing position mark through RDMA atomic operation.
11. The apparatus of claim 9, wherein the update module is configured to:
through RDMA atomic operation, the server is instructed to compare a current service execution progress mark with a service execution progress mark of which the non-updated time length is greater than or equal to a preset time length threshold value;
if the current service execution progress mark is matched with the service execution progress mark of which the non-updated duration is greater than or equal to a preset duration threshold, instructing the server to increase the current service execution progress mark by a first preset value through RDMA atomic operation;
and if the current service execution progress mark is not matched with the service execution progress mark of which the non-updated duration is greater than or equal to the preset duration threshold, indicating the server to keep the current service execution progress mark unchanged through RDMA atomic operation.
12. The apparatus of claim 9, further comprising:
and the acquisition module is used for acquiring the mark updating sequence identifier from the server through RDMA atomic operation.
13. The apparatus of claim 12, wherein the determining module is configured to:
after the target service is determined to be executed by the server, acquiring a service execution progress mark from the server;
determining a difference value between the service execution progress mark and the mark updating sequence mark;
and determining at least one detection time point for acquiring the service execution progress mark from the server according to the difference.
14. The apparatus of claim 12, further comprising:
the comparison module is used for comparing the service execution progress mark with the mark updating sequence mark;
and the indicating module is used for indicating the server to increase the service execution progress mark by a second preset numerical value when the service execution progress mark is matched with the mark updating sequence mark.
15. The apparatus of claim 12, wherein the execution module is further configured to:
and if the service execution progress mark is larger than the mark updating sequence mark, switching to a step of executing RDMA atomic operation and indicating the server to execute the target service.
16. The apparatus according to any of claims 9-15, wherein the preset duration threshold is a preset multiple of the duration required by the server to execute the target service once.
17. A terminal, characterized in that the terminal comprises a processor and a transceiver, wherein:
the processor is used for instructing the server to execute a target service through a remote direct data access (RDMA) atomic operation;
the processor is used for determining at least one detection time point for acquiring a service execution progress mark from the server according to a preset detection time point determination rule after the server is determined to finish executing the target service;
the processor is configured to control the transceiver to obtain the service execution progress marker from the server through an RDMA atomic operation whenever any detection time point is reached, determine a duration for which the service execution progress marker is not updated, and control the transceiver to carry out carry updating on the service execution progress marker through the RDMA atomic operation if the duration for which the service execution progress marker is not updated is greater than or equal to a preset duration threshold.
18. The terminal of claim 17, wherein the processor is configured to:
through RDMA atomic operation, controlling the transceiver to acquire a data writing position corresponding to the target log from a server, and instructing the server to write log data in the data writing position;
after the server is determined to write the log data in the data writing position, determining at least one detection time point for acquiring a writing position mark from the server according to a preset detection time point determination rule;
and controlling the transceiver to acquire the writing position mark from the server through RDMA atomic operation every time when any detection time point is reached, determining the time length of the acquired writing position mark which is not updated, and controlling the transceiver to carry out carry updating on the writing position mark through RDMA atomic operation if the time length of the acquired writing position mark which is not updated is greater than or equal to a preset time length threshold.
19. The terminal of claim 17, wherein the processor is configured to:
through RDMA atomic operation, the server is instructed to compare a current service execution progress mark with a service execution progress mark of which the non-updated time length is greater than or equal to a preset time length threshold value;
if the current service execution progress mark is matched with the service execution progress mark of which the non-updated duration is greater than or equal to a preset duration threshold, instructing the server to increase the current service execution progress mark by a first preset value through RDMA atomic operation;
and if the current service execution progress mark is not matched with the service execution progress mark of which the non-updated duration is greater than or equal to the preset duration threshold, indicating the server to keep the current service execution progress mark unchanged through RDMA atomic operation.
20. The terminal of claim 17, wherein the processor is configured to:
and controlling the transceiver to acquire a mark updating sequence identifier from the server through RDMA atomic operation.
21. The terminal of claim 20, wherein the processor is configured to:
after the target service is determined to be executed by the server, controlling the transceiver to acquire a service execution progress mark from the server;
determining a difference value between the service execution progress mark and the mark updating sequence mark;
and determining at least one detection time point for acquiring the service execution progress mark from the server according to the difference.
22. The terminal of claim 20, wherein the processor is configured to:
comparing the service execution progress mark with the mark updating sequence mark;
and if the service execution progress mark is matched with the mark updating sequence mark, indicating the server to increase the service execution progress mark by a second preset numerical value.
23. The terminal of claim 20, wherein the processor is configured to:
and if the service execution progress mark is larger than the mark updating sequence mark, switching to a step of executing RDMA atomic operation and indicating the server to execute the target service.
24. The terminal according to any of claims 17-23, wherein the preset duration threshold is a preset multiple of the duration required by the server to execute the target service once.
25. A computer-readable storage medium comprising instructions that, when executed on a terminal, cause the terminal to perform the method of any of claims 1-8.
26. A computer program product comprising instructions for causing a terminal to perform the method of any of claims 1-8 when the computer program product is run on the terminal.
CN201910595847.1A 2019-07-03 2019-07-03 Method, device, terminal and storage medium for executing service Active CN112181915B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910595847.1A CN112181915B (en) 2019-07-03 2019-07-03 Method, device, terminal and storage medium for executing service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910595847.1A CN112181915B (en) 2019-07-03 2019-07-03 Method, device, terminal and storage medium for executing service

Publications (2)

Publication Number Publication Date
CN112181915A true CN112181915A (en) 2021-01-05
CN112181915B CN112181915B (en) 2023-12-08

Family

ID=73915897

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910595847.1A Active CN112181915B (en) 2019-07-03 2019-07-03 Method, device, terminal and storage medium for executing service

Country Status (1)

Country Link
CN (1) CN112181915B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116708120A (en) * 2023-04-12 2023-09-05 友帮信互联网技术(北京)有限公司 Service method and device for time online sharing service
CN117056056A (en) * 2023-10-10 2023-11-14 腾讯科技(深圳)有限公司 Task execution method and device, storage medium and electronic equipment

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8131814B1 (en) * 2008-07-11 2012-03-06 Hewlett-Packard Development Company, L.P. Dynamic pinning remote direct memory access
CN103699473A (en) * 2013-12-13 2014-04-02 乐视网信息技术(北京)股份有限公司 Indicating method and device for task progress
US9367398B1 (en) * 2014-03-28 2016-06-14 Emc Corporation Backing up journal data to a memory of another node
US20170075856A1 (en) * 2015-09-12 2017-03-16 Microsoft Technology Licensing, Llc Distributed lock-free rdma-based memory allocation and de-allocation
CN106844108A (en) * 2016-12-29 2017-06-13 成都华为技术有限公司 A kind of date storage method, server and storage system
CN107391156A (en) * 2017-07-31 2017-11-24 成都华为技术有限公司 Method, management node and service node for distributed system transmission services
US10002649B1 (en) * 2017-02-23 2018-06-19 Sandisk Technologies Llc Preliminary ready indication for memory operations on non-volatile memory
CN108491526A (en) * 2018-03-28 2018-09-04 腾讯科技(深圳)有限公司 Daily record data processing method, device, electronic equipment and storage medium
CN108874426A (en) * 2018-06-28 2018-11-23 武汉斗鱼网络科技有限公司 Application program updating method and device and readable storage medium
CN109660584A (en) * 2017-10-12 2019-04-19 阿里巴巴集团控股有限公司 A kind of method and communication means and communication system of client and the long connection of server foundation
CN109861843A (en) * 2018-11-28 2019-06-07 阿里巴巴集团控股有限公司 Complete acquisition confirmation method, device and the equipment of journal file

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8131814B1 (en) * 2008-07-11 2012-03-06 Hewlett-Packard Development Company, L.P. Dynamic pinning remote direct memory access
CN103699473A (en) * 2013-12-13 2014-04-02 乐视网信息技术(北京)股份有限公司 Indicating method and device for task progress
US9367398B1 (en) * 2014-03-28 2016-06-14 Emc Corporation Backing up journal data to a memory of another node
US20170075856A1 (en) * 2015-09-12 2017-03-16 Microsoft Technology Licensing, Llc Distributed lock-free rdma-based memory allocation and de-allocation
CN106844108A (en) * 2016-12-29 2017-06-13 成都华为技术有限公司 A kind of date storage method, server and storage system
US10002649B1 (en) * 2017-02-23 2018-06-19 Sandisk Technologies Llc Preliminary ready indication for memory operations on non-volatile memory
CN107391156A (en) * 2017-07-31 2017-11-24 成都华为技术有限公司 Method, management node and service node for distributed system transmission services
CN109660584A (en) * 2017-10-12 2019-04-19 阿里巴巴集团控股有限公司 A kind of method and communication means and communication system of client and the long connection of server foundation
CN108491526A (en) * 2018-03-28 2018-09-04 腾讯科技(深圳)有限公司 Daily record data processing method, device, electronic equipment and storage medium
CN108874426A (en) * 2018-06-28 2018-11-23 武汉斗鱼网络科技有限公司 Application program updating method and device and readable storage medium
CN109861843A (en) * 2018-11-28 2019-06-07 阿里巴巴集团控股有限公司 Complete acquisition confirmation method, device and the equipment of journal file

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
MASOUD HEMMATPOUR等: "Communicating efficiently on cluster-based remote direct memory access (RDMA) over infiniband protocol" *
叶剑飞;李烨;: "基于Socket通信的生产管理跟踪系统" *
肖江文;廖幼文;: "C/S结构下客户端软件自动升级的方法研究" *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116708120A (en) * 2023-04-12 2023-09-05 友帮信互联网技术(北京)有限公司 Service method and device for time online sharing service
CN116708120B (en) * 2023-04-12 2024-02-23 友帮信互联网技术(北京)有限公司 Service method and device for time online sharing service
CN117056056A (en) * 2023-10-10 2023-11-14 腾讯科技(深圳)有限公司 Task execution method and device, storage medium and electronic equipment

Also Published As

Publication number Publication date
CN112181915B (en) 2023-12-08

Similar Documents

Publication Publication Date Title
CN110308956B (en) Application interface display method and device and mobile terminal
CN108762881B (en) Interface drawing method and device, terminal and storage medium
CN110839128B (en) Photographing behavior detection method and device and storage medium
CN111510482B (en) Method and device for determining failed network request and computer storage medium
CN110659127A (en) Method, device and system for processing task
CN110288689B (en) Method and device for rendering electronic map
CN108897659B (en) Method, device and storage medium for modifying log level
CN110058935B (en) Log level adjusting method, device and system and readable storage medium
CN111127509A (en) Target tracking method, device and computer readable storage medium
CN111159604A (en) Picture resource loading method and device
CN111400002B (en) Application process and processor core binding method and terminal
CN110677713B (en) Video image processing method and device and storage medium
CN109783176B (en) Page switching method and device
CN111192072A (en) User grouping method and device and storage medium
CN111897465B (en) Popup display method, device, equipment and storage medium
CN112181915B (en) Method, device, terminal and storage medium for executing service
CN111813322A (en) Method, device and equipment for creating storage pool and storage medium
CN111881423A (en) Method, device and system for limiting function use authorization
CN111008083A (en) Page communication method and device, electronic equipment and storage medium
CN111580892A (en) Method, device, terminal and storage medium for calling service component
CN114785766A (en) Control method of intelligent equipment, terminal and server
CN114140105A (en) Resource transfer method, device, equipment and computer readable storage medium
CN112015612B (en) Method and device for acquiring stuck information
CN110851435B (en) Data storage method and device
CN113935427A (en) Training task execution method and 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