CN107948317B - Debugging method and device of distributed service, storage medium and computer equipment - Google Patents

Debugging method and device of distributed service, storage medium and computer equipment Download PDF

Info

Publication number
CN107948317B
CN107948317B CN201711433640.1A CN201711433640A CN107948317B CN 107948317 B CN107948317 B CN 107948317B CN 201711433640 A CN201711433640 A CN 201711433640A CN 107948317 B CN107948317 B CN 107948317B
Authority
CN
China
Prior art keywords
information
debugging
identification information
service
service node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711433640.1A
Other languages
Chinese (zh)
Other versions
CN107948317A (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.)
Kingdee Software China Co Ltd
Original Assignee
Kingdee Software China 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 Kingdee Software China Co Ltd filed Critical Kingdee Software China Co Ltd
Priority to CN201711433640.1A priority Critical patent/CN107948317B/en
Publication of CN107948317A publication Critical patent/CN107948317A/en
Application granted granted Critical
Publication of CN107948317B publication Critical patent/CN107948317B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention relates to a debugging method, a debugging device, a storage medium and computer equipment of distributed services, wherein the method comprises the following steps: inquiring breakpoint information, and interrupting a calling thread according to the breakpoint information; sending an information forwarding request carrying current stack frame information and identification information to a proxy server, wherein the information forwarding request is used for indicating the proxy server to forward the current stack frame information and the identification information to a debugging client; and receiving a debugging command generated by the debugging client forwarded by the proxy server according to the current stack frame information and the identification information, and generating a debugging result according to the debugging command. The invention not only can provide debugging efficiency, but also can reduce the potential safety hazard of the server.

Description

Debugging method and device of distributed service, storage medium and computer equipment
Technical Field
The present invention relates to the field of debugging technologies, and in particular, to a method and an apparatus for debugging a distributed service, a storage medium, and a computer device.
Background
Distributed services refer to services provided by data and programs distributed to a plurality of servers, wherein one server is called a service node, and a plurality of services can be contained in one service node. One type of service may be distributed over multiple service nodes, with one node also allowing multiple service instances of the same type to run.
In the conventional technology, when a service node in a distributed service is debugged, a service end usually opens a debugging port, and a debugging client is interactively debugged with the debugging client through a debug protocol.
Disclosure of Invention
Therefore, it is necessary to provide a debugging method, an apparatus, a storage medium, and a computer device for distributed services to improve debugging efficiency and reduce potential safety hazards.
A method of debugging a distributed service, the method comprising:
inquiring breakpoint information, and interrupting a calling thread according to the breakpoint information;
sending an information forwarding request carrying current stack frame information and identification information to a proxy server, wherein the information forwarding request is used for indicating the proxy server to forward the current stack frame information and the identification information to a debugging client;
and receiving a debugging command generated by the debugging client forwarded by the proxy server according to the current stack frame information and the identification information, and generating a debugging result according to the debugging command.
In one embodiment, the step of querying the breakpoint information and interrupting the call thread according to the breakpoint information further includes:
and acquiring breakpoint information from the proxy server, and storing the breakpoint information to the local.
In one embodiment, the step of querying the breakpoint information and interrupting the call thread according to the breakpoint information further includes:
receiving a service calling request sent by a proxy server, and inquiring current service logic corresponding to the service calling request;
and executing a calling thread according to the current business logic.
In one embodiment, the step of sending the information forwarding request carrying the current stack frame information and the identification information to the proxy server further includes:
acquiring a local lock;
applying for a remote lock from a proxy server and monitoring the remote lock;
and when the remote lock is monitored to be released, releasing the local lock and recovering the calling thread.
A debugging apparatus of a distributed service, the apparatus comprising:
the breakpoint information query module is used for querying breakpoint information and interrupting a calling thread according to the breakpoint information;
an information forwarding request sending module, configured to send an information forwarding request carrying current stack frame information and identification information to a proxy server, where the information forwarding request is used to instruct the proxy server to forward the current stack frame information and the identification information to a debugging client;
and the debugging command receiving module is used for receiving a debugging command which is transmitted by the proxy server and generated by the debugging client according to the current stack frame information and the identification information, and generating a debugging result according to the debugging command.
A computer-readable storage medium, having stored thereon a computer program which, when executed by a processor, causes the processor to carry out the steps of the above-mentioned debugging method of a distributed service.
A computer device comprising a memory and a processor, the memory having stored therein a computer program which, when executed by the processor, causes the processor to perform the steps of the above-described method of debugging a distributed service.
According to the debugging method, the debugging device, the storage medium and the computer equipment for the distributed service, each service node only needs to communicate with the proxy server, and receives the debugging command of the debugging client and forwards the debugging result through the proxy server, so that a debugging port does not need to be provided for the debugging client, and potential safety hazards during debugging are reduced. Meanwhile, during debugging, the debugging client only needs to communicate with the proxy server and does not need to establish communication connection with nodes participating in debugging one by one, so that the interactive flow during debugging is simplified, and the debugging efficiency of the debugging client is improved.
A method of debugging a distributed service, the method comprising:
when the service node interrupts a calling thread according to breakpoint information, receiving an information forwarding request which is sent by the service node and carries current stack frame information and identification information, and sending the current stack frame information and the identification information to a debugging client according to the information forwarding request;
receiving a debugging command which is sent by a debugging client and generated according to the current stack frame information and the identification information, wherein the debugging command carries the identification information;
and forwarding the debugging command to the service node corresponding to the identification information, wherein the debugging command is used for indicating the service node to generate a debugging result.
In one embodiment, the step of receiving an information forwarding request carrying current stack frame information and identification information sent by a service node, and sending the current stack frame information and the identification information to a debugging client according to the information forwarding request includes:
receiving a service calling request sent by a debugging client, wherein the service calling request carries a service type corresponding to the service calling request;
inquiring a registry according to the service type to obtain identification information corresponding to the service calling request;
and sending the service calling request to a service node corresponding to the identification information, wherein the service calling request is used for indicating the service node to call a service instance corresponding to the identification information to execute a calling thread.
In one embodiment, the step of receiving an information forwarding request carrying current stack frame information and identification information sent by a service node, and sending the current stack frame information and the identification information to a debugging client according to the information forwarding request further includes:
receiving breakpoint information sent by a debugging client;
receiving a breakpoint information acquisition request which is sent by a service node and carries identification information, and sending the breakpoint information to the service node corresponding to the identification information.
In one embodiment, the step of receiving an information forwarding request carrying current stack frame information and identification information sent by a service node, and sending the current stack frame information and the identification information to a debugging client according to the information forwarding request further includes:
after a service node acquires a local lock, creating a remote lock corresponding to the local lock;
the step of forwarding the debug command to the service node corresponding to the identification information, where the step of the debug command being used to instruct the service node to generate a debug result includes:
receiving a recovery command sent by a debugging client, wherein the recovery command carries identification information;
and releasing the remote lock corresponding to the identification information according to the recovery command.
A debugging apparatus of a distributed service, the apparatus comprising:
the system comprises an information forwarding request receiving module, a debugging client and a debugging client, wherein the information forwarding request receiving module is used for receiving an information forwarding request which is sent by a service node and carries current stack frame information and identification information when the service node interrupts a calling thread according to breakpoint information, and sending the current stack frame information and the identification information to the debugging client according to the information forwarding request;
a debugging command receiving module, configured to receive a debugging command sent by a debugging client and generated according to the current stack frame information and the identification information, where the debugging command carries the identification information;
and the debugging command forwarding module is used for forwarding the debugging command to the service node corresponding to the identification information, wherein the debugging command is used for indicating the service node to generate a debugging result.
A computer-readable storage medium having stored thereon a computer program which, when executed by a processor, causes the processor to perform the steps of debugging the above-described distributed service.
A computer device comprising a memory and a processor, the memory having stored therein a computer program which, when executed by the processor, causes the processor to perform the steps of debugging the above-mentioned distributed service.
According to the debugging method, the debugging device, the storage medium and the computer equipment for the distributed service, each service node only needs to communicate with the proxy server, and receives the debugging command of the debugging client and forwards the debugging result through the proxy server, so that a debugging port does not need to be provided for the debugging client, and potential safety hazards during debugging are reduced. Meanwhile, during debugging, the debugging client only needs to communicate with the proxy server and does not need to establish communication connection with nodes participating in debugging one by one, so that the interactive flow during debugging is simplified, and the debugging efficiency of the debugging client is improved.
Drawings
FIG. 1 is a diagram of an application environment for a method for debugging a distributed service in one embodiment;
FIG. 2 is a flow diagram that illustrates a method for debugging a distributed service in one embodiment;
FIG. 3 is a flow diagram that illustrates a method for debugging a distributed service in one embodiment;
FIG. 4 is a flowchart illustrating steps subsequent to step S220 of FIG. 1, in accordance with one embodiment;
FIG. 5 is a diagram illustrating an exemplary configuration of a debugging apparatus for a distributed service;
FIG. 6 is a schematic structural diagram of a debugging apparatus for a distributed service in another embodiment;
FIG. 7 is a flow diagram of a method for debugging a distributed service in yet another embodiment;
FIG. 8 is a flowchart illustrating steps prior to step S710 of FIG. 7, in accordance with one embodiment;
FIG. 9 is a flowchart illustrating steps prior to step S710 of FIG. 7 in accordance with another embodiment;
FIG. 10 is a flowchart illustrating steps before step S710 of FIG. 7 in accordance with yet another embodiment;
FIG. 11 is a diagram showing the configuration of a debugging apparatus for a distributed service in one embodiment;
FIG. 12 is a diagram illustrating an internal structure of a computer device according to an embodiment.
Detailed Description
In order to make the aforementioned objects, features and advantages of the present invention comprehensible, embodiments accompanied with figures are described in detail below. In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein, but rather should be construed as broadly as the present invention is capable of modification in various respects, all without departing from the spirit and scope of the present invention.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. The terminology used in the description of the invention herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention.
Fig. 1 is a diagram of an application environment for debugging a distributed service provided in an embodiment, as shown in fig. 1, in the application environment, a debugging client 110, a proxy server 120, and a service node 130 are included, and the service node 130 includes a plurality of distributed service nodes, each of which may run a plurality of service instances, where a service instance refers to a running service program. In this embodiment, the debug client 110 communicates with the proxy server 120 via HTTPS protocol, and the proxy server 120 communicates with the service node 130 via RPC protocol.
In an embodiment, as shown in fig. 2, a debugging method for a distributed service is provided, which is described by taking an example that the method is applied to one of the service nodes 130 in fig. 1, and includes:
step S210, inquiring breakpoint information, and interrupting the calling thread according to the breakpoint information.
Specifically, the breakpoint includes an interface breakpoint and a script breakpoint, the breakpoint information corresponding to the interface breakpoint includes a service type and a service method, and the breakpoint information corresponding to the script breakpoint includes a script file name and a line number. An invocation thread refers to a thread when a service instance on a service node performs a service invocation.
In one embodiment, after the debugging client sets the breakpoint information, the breakpoint information is sent to the proxy server, and the proxy server stores the breakpoint information after receiving the breakpoint information. When the service instance is run by the service node, the service node can request the proxy server to inquire breakpoint information, judge whether the currently called interface or the executed script is matched with the breakpoint information according to the inquired breakpoint information, and interrupt the calling thread at the breakpoint if the currently called interface or the executed script is matched with the breakpoint information.
In one embodiment, the debugging client must perform identity authentication before setting the breakpoint information, and the breakpoint setting can be performed after the identity authentication is passed. Specifically, the debugging client performs identity authentication, which includes the following steps: and receiving an identity authentication instruction, matching account information and password information contained in the identity authentication instruction with preset account information and password information, and passing the identity authentication when the matching is successful.
Step S220, an information forwarding request carrying current stack frame information and identification information is sent to the proxy server, where the information forwarding request is used to instruct the proxy server to forward the current stack frame information and identification information to the debugging client.
Specifically, the stack frame information refers to environment information when the program runs to the breakpoint, such as variables and execution threads in the current program. The identification information comprises service node identification information and service instance identification information, the service node identification information is used for uniquely identifying the current service node, the service instance identification information is used for uniquely identifying the current service instance, the current service instance refers to the service instance corresponding to the breakpoint, and the current service node refers to the service node running the current service instance.
In this embodiment, after the call thread is interrupted, the service node sends the current stack frame information and the identification information to the proxy server, and the proxy server receives the stack frame information and the identification information and then sends the stack frame information and the identification information to the debugging client.
Step S230, receiving a debugging command generated by the debugging client forwarded by the proxy server according to the current stack frame information and the identification information, and generating a debugging result according to the debugging command.
Specifically, after receiving current stack frame information and identification information, a debugging client judges whether debugging is needed according to the stack frame information, when debugging is needed, a debugging command is generated according to the stack frame information and the identification information, the debugging command carries the identification information, the identification information also comprises service node identification information and service instance identification information, after receiving the debugging command by a proxy server, the debugging command is sent to a corresponding service node according to the identification information carried in the debugging command, the service node sends the debugging command to a service instance corresponding to the identification information after receiving the debugging command, and a debugging result is generated after the service instance executes debugging.
In one embodiment, the service node returns the debugging result to the proxy server on the service instance after generating the debugging result, and the proxy server sends the debugging result to the debugging client.
If the debugging command sent by the debugging client is 'view a certain variable', the proxy server forwards the debugging name to the service node, the service node sends the debugging name to the corresponding service instance, and after the service instance analyzes the variable value, the service node returns the variable value to the proxy server, and the proxy server forwards the variable value to the debugging client.
According to the debugging method of the distributed service, each service node only needs to communicate with the proxy server, and receives the debugging command of the debugging client and forwards the debugging result through the proxy server, so that a debugging port does not need to be provided for the debugging client, and potential safety hazards during debugging are reduced. Meanwhile, during debugging, the debugging client only needs to communicate with the proxy server and does not need to establish communication connection with nodes participating in debugging one by one, so that the interactive flow during debugging is simplified, and the debugging efficiency of the debugging client is improved.
In one embodiment, the step of querying the breakpoint information and interrupting the call thread according to the breakpoint information further includes: and acquiring breakpoint information from the proxy server, and storing the breakpoint information to the local. Specifically, in this embodiment, after receiving the service invocation request, the service node automatically obtains the breakpoint information from the proxy server, and stores the breakpoint information to the local. After the breakpoint information is stored locally, the service node can directly inquire the breakpoint information from the local, and does not need to inquire the breakpoint information from the proxy server, so that the debugging efficiency is further improved.
In one embodiment, as shown in fig. 3, the step of querying the breakpoint information and interrupting the calling thread according to the breakpoint information further includes:
step S240, receiving the service call request sent by the proxy server, querying a current service logic corresponding to the service call request, and executing a call thread according to the current service logic.
Specifically, the business logic refers to the rules and procedures that one entity unit should have in order to provide services to another entity unit. Taking online shopping trousers as an example, the business logic comprises: search for "pants" -find desirable pants-place order-must register account number-settle-pay-receive. It should be noted that, according to different service requirements and system data, the service logic is different, for example, when an account must be logged in to make an order successfully, amazon does not need.
In this embodiment, a debugging client generates a service invocation request according to different service requirements, and sends the service invocation request to a proxy server, where the service invocation request carries service information called by the service of this time, where the service information includes a service type and a method corresponding to the service type, the proxy server, after receiving the service invocation request, queries a pre-stored registry of the proxy server, where the registry stores information such as the service type, a service node identifier corresponding to the service type, and a service instance identifier, and the like, and after querying the service type matching the service invocation request, the proxy server locates a service instance based on a load balancing policy, forwards the service invocation request to a service node corresponding to the service instance, and after receiving the service invocation request, the service node runs the service instance and simultaneously queries a current service logic corresponding to the service invocation request, and calling other service instances to execute calling threads according to the current business logic.
In an embodiment, as shown in fig. 4, the step of sending an information forwarding request carrying the current stack frame information and the identification information to the proxy server further includes:
step S410, local lock is obtained.
Step S420, apply for the remote lock to the proxy server, and monitor the remote lock.
And step S430, when the remote lock is released, releasing the local lock and recovering the calling thread.
Specifically, the local lock is used to lock the calling thread, and ensure that the current code or variable cannot be modified after the calling thread is interrupted. A remote lock is a lock held by a proxy server that is the same lock object as a local lock on a service node.
In this embodiment, after the call thread is interrupted, the service node may attempt to obtain the local lock locally, and after obtaining the local lock, the proxy server may apply for the remote lock, and the proxy server creates the remote lock according to the application of the service node, where a lock object of the remote lock is the same as a lock object of the local lock.
In one embodiment, if the service node does not apply for a remote lock after timeout, the local lock is released.
In one embodiment, the local lock is a lock obtained from localRegistry, where the lock is a renentrntlock inside the java development kit.
In one embodiment, as shown in fig. 5, a debugging apparatus 500 for providing a distributed service includes:
a breakpoint information query module 502, configured to query breakpoint information and interrupt a call thread according to the breakpoint information;
an information forwarding request sending module 504, configured to send an information forwarding request carrying current stack frame information and identification information to the proxy server, where the information forwarding request is used to instruct the proxy server to forward the current stack frame information and the identification information to the debugging client;
and a debug command receiving module 506, configured to receive a debug command generated by the debug client forwarded by the proxy server according to the current stack frame information and the identification information, and generate a debug result according to the debug command.
According to the debugging device for the distributed service, each service node only needs to communicate with the proxy server, and receives the debugging command of the debugging client and forwards the debugging result through the proxy server, so that a debugging port does not need to be provided for the debugging client, and potential safety hazards during debugging are reduced. Meanwhile, during debugging, the debugging client only needs to communicate with the proxy server and does not need to establish communication connection with nodes participating in debugging one by one, so that the interactive flow during debugging is simplified, and the debugging efficiency of the debugging client is improved.
In one embodiment, the apparatus further includes a storage module, configured to obtain the breakpoint information from the proxy server, and store the breakpoint information locally.
In one embodiment, the above apparatus further comprises: and the calling thread execution module is used for receiving the service calling request sent by the proxy server, inquiring the current service logic corresponding to the service calling request and executing the calling thread according to the current service logic.
In one embodiment, as shown in fig. 6, the above apparatus further comprises:
a local lock acquisition module 510, configured to acquire a local lock;
a monitoring module 512, configured to apply for a remote lock from the proxy server and monitor the remote lock;
and a local lock release module 514, configured to release the local lock and resume the calling thread when it is monitored that the remote lock is released.
In one embodiment, there is provided a computer device comprising a memory and a processor, the memory having stored therein a computer program that, when executed by the processor, causes the processor to perform the steps of: inquiring breakpoint information, and interrupting a calling thread according to the breakpoint information; sending an information forwarding request carrying current stack frame information and identification information to a proxy server, wherein the information forwarding request is used for indicating the proxy server to forward the current stack frame information and the identification information to a debugging client; and receiving a debugging command generated by the debugging client forwarded by the proxy server according to the current stack frame information and the identification information, and generating a debugging result according to the debugging command.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of querying for breakpoint information, and interrupting the calling thread based on the breakpoint information, is preceded by the steps of: and acquiring breakpoint information from the proxy server, and storing the breakpoint information to the local.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of querying for breakpoint information, and interrupting the calling thread based on the breakpoint information, is preceded by the steps of: receiving a service calling request sent by a proxy server, and inquiring current service logic corresponding to the service calling request; and executing the calling thread according to the current business logic.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the following steps after the step of sending an information forwarding request carrying the current stack frame information and the identification information to the proxy server: acquiring a local lock; applying for a remote lock from the proxy server and monitoring the remote lock; when it is monitored that the remote lock is released, the local lock is released and the calling thread is resumed.
In one embodiment, a computer readable storage medium is provided, having a computer program stored thereon, which, when executed by a processor, causes the processor to perform the steps of: inquiring breakpoint information, and interrupting a calling thread according to the breakpoint information; sending an information forwarding request carrying current stack frame information and identification information to a proxy server, wherein the information forwarding request is used for indicating the proxy server to forward the current stack frame information and the identification information to a debugging client; and receiving a debugging command generated by the debugging client forwarded by the proxy server according to the current stack frame information and the identification information, and generating a debugging result according to the debugging command.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of querying for breakpoint information, and interrupting the calling thread based on the breakpoint information, is preceded by the steps of: and acquiring breakpoint information from the proxy server, and storing the breakpoint information to the local.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of querying for breakpoint information, and interrupting the calling thread based on the breakpoint information, is preceded by the steps of: receiving a service calling request sent by a proxy server, and inquiring current service logic corresponding to the service calling request; and executing the calling thread according to the current business logic.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the following steps after the step of sending an information forwarding request carrying the current stack frame information and the identification information to the proxy server: acquiring a local lock; applying for a remote lock from the proxy server and monitoring the remote lock; when it is monitored that the remote lock is released, the local lock is released and the calling thread is resumed.
In an embodiment, as shown in fig. 7, a debugging method for a distributed service is provided, which is described by taking the method as an example for being applied to the proxy server 120 in fig. 1, and includes:
step S710, when the service node interrupts the call thread according to the breakpoint information, receives an information forwarding request carrying current stack frame information and identification information sent by the service node, and sends the current stack frame information and the identification information to the debugging client according to the information forwarding request.
Specifically, the breakpoint includes an interface breakpoint and a script breakpoint, the breakpoint information corresponding to the interface breakpoint includes a service type and a service method, and the breakpoint information corresponding to the script breakpoint includes a script file name and a line number. An invoking thread refers to a thread when a service instance on a service node executes a current transaction. The stack frame information refers to environment information when the program runs to the breakpoint, such as variables and execution threads in the current program. The identification information comprises service node identification information and service instance identification information, the service node identification information is used for uniquely identifying the current service node, the service instance identification information is used for uniquely identifying the current service instance, the current service instance refers to the service instance corresponding to the breakpoint, and the current service node refers to the service node running the current service instance.
In one embodiment, after the debugging client sets the breakpoint information, the breakpoint information is sent to the proxy server, and the proxy server stores the breakpoint information after receiving the breakpoint information. When the service instance is run by the service node, the service node can request the proxy server to inquire breakpoint information, judge whether the currently called interface or the executed script is matched with the breakpoint information according to the inquired breakpoint information, and interrupt the calling thread at the breakpoint if the currently called interface or the executed script is matched with the breakpoint information.
Further, after the call thread is interrupted, the service node sends an information forwarding request carrying current stack frame information and identification information to the proxy server, and after receiving the information forwarding request, the proxy server sends the current stack frame information and the current identification information to the debugging client.
Step S720, receiving a debugging command generated according to the current stack frame information and the identification information, where the debugging command carries the identification information.
Specifically, after receiving current stack frame information and identification information, the debugging client determines whether debugging is needed according to the stack frame information, generates a debugging command according to the stack frame information and the identification information when debugging is needed, and carries the identification information in the debugging command, where the identification information also includes service node identification information and service instance identification information.
Step S730, the debugging command is forwarded to the service node corresponding to the identification information, and the debugging command is used to instruct the service node to generate a debugging result.
Specifically, after receiving the debugging command, the proxy server sends the debugging name to the corresponding service node according to the identification information carried in the debugging command, and after receiving the debugging command, the service node sends the debugging command to the service instance corresponding to the debugging command and generates a debugging result after the service instance executes debugging.
In one embodiment, the service node returns the debugging result to the proxy server after generating the debugging result, and the proxy server sends the debugging result to the debugging client.
If the debugging command sent by the debugging client is 'view a certain variable', the proxy server forwards the debugging name to the service node, the service node sends the debugging name to the corresponding service instance, and after the service instance analyzes the variable value, the service node returns the variable value to the proxy server, and the proxy server forwards the variable value to the debugging client.
According to the debugging method of the distributed service, each service node only needs to communicate with the proxy server, and receives the debugging command of the debugging client and forwards the debugging result through the proxy server, so that a debugging port does not need to be provided for the debugging client, and potential safety hazards during debugging are reduced. Meanwhile, during debugging, the debugging client only needs to communicate with the proxy server and does not need to establish communication connection with nodes participating in debugging one by one, so that the interactive flow during debugging is simplified, and the debugging efficiency of the debugging client is improved.
In an embodiment, as shown in fig. 8, before receiving an information forwarding request with current stack frame information and identification information sent by a service node, the step of sending the current stack frame information and the identification information to a debugging client according to the information forwarding request includes:
step S810, receiving a service invocation request sent by the debugging client, where the service invocation request carries a service type corresponding to the service invocation request.
Step S820, querying the registry according to the service type to obtain the identification information corresponding to the service invocation request.
Specifically, the service type refers to a service interface class of the service, such as: kd.fi.gl.VoucherService.
In this embodiment, a debugging client generates a service invocation request according to different service requirements, and sends the service invocation request to a proxy server, where the service invocation request carries service information invoked by the service of this time, the service information includes a service type and a method corresponding to the service type, the proxy server, after receiving the service invocation request, queries a pre-stored registry of the proxy server, where the registry stores information such as the service type, a service node identifier corresponding to the service type, and a service instance identifier, and after querying the service type matching the service invocation request, the proxy server locates a service instance based on a load balancing policy, and obtains the identifier information of the service instance and identifier information of a service node corresponding to the service instance.
Step S830, a service calling request is sent to the service node corresponding to the identification information, and the service calling request is used for indicating the service node to call the service instance corresponding to the identification information to execute a calling thread.
Specifically, the proxy server forwards the service invocation request to a service node corresponding to the service instance, the service node receives the service invocation request, queries a current service logic corresponding to the service invocation request, and invokes a corresponding service instance according to the current service logic to execute an invocation thread, wherein the service logic refers to rules and flows that one entity unit should have in order to provide services to another entity unit.
In an embodiment, as shown in fig. 9, before receiving an information forwarding request with current stack frame information and identification information sent by a service node, the step of sending the current stack frame information and the identification information to a debugging client according to the information forwarding request further includes:
step S910, receiving breakpoint information sent by the debugging client.
Step S920, receiving a breakpoint information acquisition request carrying identification information sent by a service node, and sending the breakpoint information to the service node corresponding to the identification information.
In this embodiment, after receiving a service call request, a service node calls a corresponding service instance to execute a call thread and sends a request to a proxy server to obtain breakpoint information, and the breakpoint information obtaining request carries service node identification information of the service node itself, the proxy server receives the breakpoint information obtaining request and sends the breakpoint information to a service node corresponding to the service node identification information, and the service node stores the received breakpoint information to the local. After the breakpoint information is stored locally, the service node can directly inquire the breakpoint information from the local, and does not need to inquire the breakpoint information from the proxy server, so that the debugging efficiency is further improved.
In an embodiment, as shown in fig. 10, before receiving an information forwarding request with current stack frame information and identification information sent by a service node, the step of sending the current stack frame information and the identification information to a debugging client according to the information forwarding request further includes:
step S1010, after the service node acquires the local lock, a remote lock corresponding to the local lock is created.
Specifically, the local lock is used to lock the calling thread, and ensure that the current code or variable cannot be modified after the calling thread is interrupted. A remote lock is a lock held by a proxy server that is the same lock object as a local lock on a service node.
In this embodiment, after the call thread is interrupted, the service node may attempt to obtain the local lock locally, and after obtaining the local lock, the proxy server may apply for the remote lock, and the proxy server creates the remote lock according to the application of the service node, where a lock object of the remote lock is the same as a lock object of the local lock.
In one embodiment, if the service node does not apply for a remote lock after timeout, the local lock is released.
In one embodiment, the local lock is a lock obtained from localRegistry, where the lock is a renentrntlock inside the java development kit.
Forwarding the debugging command to the service node corresponding to the identification information, wherein the step of the debugging command for indicating the service node to generate the debugging result comprises the following steps:
step S1020, receiving a recovery command sent by the debug client, and releasing the remote lock according to the recovery command.
Specifically, after receiving the debugging result forwarded by the proxy server, the debugging client may send a recovery command to the proxy server, where the recovery command carries identification information, where the identification information includes service node identification information and service instance identification information, and after receiving the debugging command, the proxy server releases the remote lock, which is the same as the lock object corresponding to the identification information.
Further, after monitoring that the remote lock is released, the service node releases the local lock corresponding to the remote lock and continues to execute the calling thread.
In this embodiment, the debugging server forms a distributed lock together with the local lock of the server node by creating the remote lock, so that the variable meeting code at the breakpoint cannot be modified by the calling thread during debugging, and the consistency of data is ensured.
In one embodiment, as shown in fig. 11, a debugging apparatus 1100 for providing a distributed service includes:
an information forwarding request receiving module 1102, configured to receive an information forwarding request carrying current stack frame information and identification information sent by a service node when the service node interrupts a call thread according to breakpoint information, and send the current stack frame information and the identification information to a debugging client according to the information forwarding request;
a debugging command receiving module 1104, configured to receive a debugging command, which is sent by a debugging client and generated according to current stack frame information and identification information, where the debugging command carries the identification information;
and a debug command forwarding module 1106 configured to forward the debug command to the service node corresponding to the identification information, where the debug command is used to instruct the service node to generate a debug result.
According to the debugging device for the distributed service, each service node only needs to communicate with the proxy server, and receives the debugging command of the debugging client and forwards the debugging result through the proxy server, so that a debugging port does not need to be provided for the debugging client, and potential safety hazards during debugging are reduced. Meanwhile, during debugging, the debugging client only needs to communicate with the proxy server and does not need to establish communication connection with nodes participating in debugging one by one, so that the interactive flow during debugging is simplified, and the debugging efficiency of the debugging client is improved.
In one embodiment, the above apparatus further comprises: the service calling request receiving module is used for receiving a service calling request sent by the debugging client, and the service calling request carries a service type corresponding to the service calling request; the identification information acquisition module is used for inquiring the registry according to the service type to obtain identification information corresponding to the service calling request; and the service calling request sending module is used for sending the service calling request to the service node corresponding to the identification information, and the service calling request is used for indicating the service node to call the service instance corresponding to the identification information to execute the calling thread.
In one embodiment, the above apparatus further comprises: the breakpoint information receiving module is used for receiving breakpoint information sent by the debugging client; and the breakpoint information acquisition request receiving module is used for receiving a breakpoint information acquisition request which is sent by the service node and carries the identification information, and sending the breakpoint information to the service node corresponding to the identification information.
In one embodiment, the above apparatus further comprises: the remote lock creating module is used for creating a remote lock corresponding to the local lock after the service node acquires the local lock; the recovery command receiving module is used for receiving a recovery command sent by the debugging client, and the recovery command carries identification information; and the remote lock releasing module is used for releasing the remote lock corresponding to the identification information according to the recovery command.
In one embodiment, there is provided a computer device comprising a memory and a processor, the memory having stored therein a computer program that, when executed by the processor, causes the processor to perform the steps of: when the service node interrupts the calling thread according to the breakpoint information, receiving an information forwarding request which is sent by the service node and carries current stack frame information and identification information, and sending the current stack frame information and the identification information to a debugging client according to the information forwarding request; receiving a debugging command which is sent by a debugging client and generated according to the current stack frame information and the identification information, wherein the debugging command carries the identification information; and forwarding the debugging command to the service node corresponding to the identification information, wherein the debugging command is used for indicating the service node to generate a debugging result.
In an embodiment, when executed by a processor, the computer program causes the processor to execute an information forwarding request carrying current stack frame information and identification information sent by a receiving service node, and before the step of sending the current stack frame information and the identification information to a debugging client according to the information forwarding request, further execute the following steps: receiving a service calling request sent by a debugging client, wherein the service calling request carries a service type corresponding to the service calling request; inquiring a registry according to the service type to obtain identification information corresponding to the service calling request; and sending the service calling request to a service node corresponding to the identification information, wherein the service calling request is used for indicating the service node to call a service instance corresponding to the identification information to execute a calling thread.
In an embodiment, when executed by a processor, the computer program causes the processor to execute an information forwarding request carrying current stack frame information and identification information sent by a receiving service node, and before the step of sending the current stack frame information and the identification information to a debugging client according to the information forwarding request, further execute the following steps: receiving breakpoint information sent by a debugging client; and receiving a breakpoint information acquisition request which is sent by the service node and carries identification information, and sending the breakpoint information to the service node corresponding to the identification information.
In an embodiment, when executed by a processor, the computer program causes the processor to execute an information forwarding request carrying current stack frame information and identification information sent by a receiving service node, and after the step of sending the current stack frame information and the identification information to a debugging client according to the information forwarding request, further execute the following steps: after the service node acquires the local lock, a remote lock corresponding to the local lock is created; when being executed by the processor, the computer program enables the processor to execute the step of forwarding a debugging command to the service node corresponding to the identification information, wherein the step of instructing the service node to generate a debugging result by the debugging command is further followed by the step of: receiving a recovery command sent by a debugging client, wherein the recovery command carries identification information; and releasing the remote lock corresponding to the identification information according to the recovery command.
In one embodiment, a computer readable storage medium is provided, having a computer program stored thereon, which, when executed by a processor, causes the processor to perform the steps of: when the service node interrupts the calling thread according to the breakpoint information, receiving an information forwarding request which is sent by the service node and carries current stack frame information and identification information, and sending the current stack frame information and the identification information to a debugging client according to the information forwarding request; receiving a debugging command which is sent by a debugging client and generated according to the current stack frame information and the identification information, wherein the debugging command carries the identification information; and forwarding the debugging command to the service node corresponding to the identification information, wherein the debugging command is used for indicating the service node to generate a debugging result.
In an embodiment, when executed by a processor, the computer program causes the processor to execute an information forwarding request carrying current stack frame information and identification information sent by a receiving service node, and before the step of sending the current stack frame information and the identification information to a debugging client according to the information forwarding request, further execute the following steps: receiving a service calling request sent by a debugging client, wherein the service calling request carries a service type corresponding to the service calling request; inquiring a registry according to the service type to obtain identification information corresponding to the service calling request; and sending the service calling request to a service node corresponding to the identification information, wherein the service calling request is used for indicating the service node to call a service instance corresponding to the identification information to execute a calling thread.
In an embodiment, when executed by a processor, the computer program causes the processor to execute an information forwarding request carrying current stack frame information and identification information sent by a receiving service node, and before the step of sending the current stack frame information and the identification information to a debugging client according to the information forwarding request, further execute the following steps: receiving breakpoint information sent by a debugging client; and receiving a breakpoint information acquisition request which is sent by the service node and carries identification information, and sending the breakpoint information to the service node corresponding to the identification information.
In an embodiment, when executed by a processor, the computer program causes the processor to execute an information forwarding request carrying current stack frame information and identification information sent by a receiving service node, and after the step of sending the current stack frame information and the identification information to a debugging client according to the information forwarding request, further execute the following steps: after the service node acquires the local lock, a remote lock corresponding to the local lock is created; when being executed by the processor, the computer program enables the processor to execute the step of forwarding a debugging command to the service node corresponding to the identification information, wherein the step of instructing the service node to generate a debugging result by the debugging command is further followed by the step of: receiving a recovery command sent by a debugging client, wherein the recovery command carries identification information; and releasing the remote lock corresponding to the identification information according to the recovery command.
FIG. 12 is a diagram illustrating the internal structure of a computer device that may be used as a debug client or proxy server in one embodiment. The computer device is connected with the processor, the nonvolatile storage medium, the internal memory and the network interface through a system connection bus. Wherein the non-volatile storage medium of the computer device may store an operating system and computer readable instructions that, when executed, may cause the processor to perform a method of debugging a distributed service. The processor of the computer device is used for providing calculation and control capability and supporting the operation of the whole computer device. The internal memory may have stored therein computer readable instructions that, when executed by the processor, cause the processor to perform a method of debugging a distributed service. The network interface of the computer device is used for performing network communication, such as receiving voice data packets, sending stop control instructions, and the like.
Those skilled in the art will appreciate that the architecture shown in fig. 12 is merely a block diagram of some of the structures associated with the disclosed aspects and is not intended to limit the computing devices to which the disclosed aspects apply, as particular computing devices may include more or less components than those shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, the debugging apparatus for distributed services provided in the present application may be implemented in the form of a computer program, where the computer program may run on a computer device as shown in fig. 12, and a nonvolatile storage medium of the computer device may store various program modules constituting the debugging apparatus for distributed services, such as the breakpoint information query module 502, the information forwarding request sending module 504, and the debugging command receiving module 506 in fig. 5. Each program module includes computer readable instructions for causing the computer device to execute the steps in the method for debugging a distributed service according to the embodiments of the present application described in this specification, for example, the computer device may query breakpoint information through a breakpoint information query module 502 in a debugging apparatus of a distributed service as shown in fig. 5, and interrupt a call thread according to the breakpoint information; an information forwarding request sending module 504 sends an information forwarding request carrying current stack frame information and identification information to the proxy server; the debugging command receiving module 506 receives the debugging command generated by the debugging client forwarded by the proxy server according to the current stack frame information and the identification information, and generates a debugging result according to the debugging command.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by a computer program, which can be stored in a non-volatile computer-readable storage medium, and can include the processes of the embodiments of the methods described above when the computer program is executed. The storage medium may be a magnetic disk, an optical disk, a Read-only memory (ROM), or the like.
The technical features of the embodiments described above may be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the embodiments described above are not described, but should be considered as being within the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present invention, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the inventive concept, which falls within the scope of the present invention. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (12)

1. A method of debugging a distributed service, the method comprising:
inquiring breakpoint information, judging whether a currently called interface or an executed script is matched with the inquired breakpoint information, and if so, interrupting a calling thread at the breakpoint;
sending an information forwarding request carrying current stack frame information and identification information to a proxy server, wherein the information forwarding request is used for indicating the proxy server to forward the current stack frame information and the identification information to a debugging client; the identification information comprises service node identification information and service instance identification information, the service node identification information is used for uniquely identifying the current service node, and the service instance identification information is used for uniquely identifying the current service instance;
and receiving a debugging command generated by the debugging client forwarded by the proxy server according to the current stack frame information and the identification information, and generating a debugging result according to the debugging command.
2. The method according to claim 1, wherein the step of querying breakpoint information and interrupting a calling thread according to the breakpoint information further comprises:
and acquiring breakpoint information from the proxy server, and storing the breakpoint information to the local.
3. The method according to claim 1, wherein the step of querying breakpoint information and interrupting a calling thread according to the breakpoint information further comprises:
receiving a service calling request sent by a proxy server, and inquiring current service logic corresponding to the service calling request;
and executing a calling thread according to the current business logic.
4. The method according to claim 1, wherein the step of sending an information forwarding request carrying the current stack frame information and the identification information to the proxy server further comprises:
acquiring a local lock;
applying for a remote lock from the proxy server and monitoring the remote lock;
and when the remote lock is monitored to be released, releasing the local lock and recovering the calling thread.
5. A method of debugging a distributed service, the method comprising:
when the service node judges that a currently called interface or an executed script is matched with the inquired breakpoint information and interrupts a calling thread at the breakpoint, receiving an information forwarding request which is sent by the service node and carries current stack frame information and identification information, and sending the current stack frame information and the identification information to a debugging client according to the information forwarding request;
receiving a debugging command which is sent by a debugging client and generated according to the current stack frame information and the identification information, wherein the debugging command carries the identification information; the identification information comprises service node identification information and service instance identification information, the service node identification information is used for uniquely identifying the current service node, and the service instance identification information is used for uniquely identifying the current service instance;
and forwarding the debugging command to the service node corresponding to the identification information, wherein the debugging command is used for indicating the service node to generate a debugging result.
6. The method according to claim 5, wherein the step of receiving an information forwarding request with current stack frame information and identification information sent by a service node, and sending the current stack frame information and the identification information to a debugging client according to the information forwarding request includes:
receiving a service calling request sent by a debugging client, wherein the service calling request carries a service type corresponding to the service calling request;
inquiring a registry according to the service type to obtain identification information corresponding to the service calling request;
and sending the service calling request to a service node corresponding to the identification information, wherein the service calling request is used for indicating the service node to call a service instance corresponding to the identification information to execute a calling thread.
7. The method according to claim 5, wherein the step of receiving an information forwarding request with current stack frame information and identification information sent by a service node, and sending the current stack frame information and the identification information to a debugging client according to the information forwarding request further includes:
receiving breakpoint information sent by a debugging client;
receiving a breakpoint information acquisition request which is sent by a service node and carries identification information, and sending the breakpoint information to the service node corresponding to the identification information.
8. The method according to claim 5, wherein the step of receiving an information forwarding request with current stack frame information and identification information sent by a service node, and sending the current stack frame information and the identification information to a debugging client according to the information forwarding request further includes:
after a service node acquires a local lock, creating a remote lock corresponding to the local lock;
the step of forwarding the debug command to the service node corresponding to the identification information, where the step of the debug command being used to instruct the service node to generate a debug result includes:
receiving a recovery command sent by a debugging client, wherein the recovery command carries identification information;
and releasing the remote lock corresponding to the identification information according to the recovery command.
9. An apparatus for debugging a distributed service, the apparatus comprising:
the breakpoint information query module is used for querying breakpoint information, judging whether the currently called interface or the executed script is matched with the queried breakpoint information, and if so, interrupting a calling thread at the breakpoint;
an information forwarding request sending module, configured to send an information forwarding request carrying current stack frame information and identification information to a proxy server, where the information forwarding request is used to instruct the proxy server to forward the current stack frame information and the identification information to a debugging client; the identification information comprises service node identification information and service instance identification information, the service node identification information is used for uniquely identifying the current service node, and the service instance identification information is used for uniquely identifying the current service instance;
and the debugging command receiving module is used for receiving a debugging command which is transmitted by the proxy server and generated by the debugging client according to the current stack frame information and the identification information, and generating a debugging result according to the debugging command.
10. An apparatus for debugging a distributed service, the apparatus comprising:
the system comprises an information forwarding request receiving module, a debugging client and a service node, wherein the information forwarding request receiving module is used for receiving an information forwarding request which is sent by the service node and carries current stack frame information and identification information when the service node judges that a currently called interface or an executed script is matched with inquired breakpoint information and interrupts a calling thread at a breakpoint, and sending the current stack frame information and the identification information to the debugging client according to the information forwarding request;
a debugging command receiving module, configured to receive a debugging command sent by a debugging client and generated according to the current stack frame information and the identification information, where the debugging command carries the identification information; the identification information comprises service node identification information and service instance identification information, the service node identification information is used for uniquely identifying the current service node, and the service instance identification information is used for uniquely identifying the current service instance;
and the debugging command forwarding module is used for forwarding the debugging command to the service node corresponding to the identification information, wherein the debugging command is used for indicating the service node to generate a debugging result.
11. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out a method of debugging a distributed service according to any one of claims 1 to 8.
12. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements a method of debugging a distributed service according to any of claims 1 to 8 when executing the computer program.
CN201711433640.1A 2017-12-26 2017-12-26 Debugging method and device of distributed service, storage medium and computer equipment Active CN107948317B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711433640.1A CN107948317B (en) 2017-12-26 2017-12-26 Debugging method and device of distributed service, storage medium and computer equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711433640.1A CN107948317B (en) 2017-12-26 2017-12-26 Debugging method and device of distributed service, storage medium and computer equipment

Publications (2)

Publication Number Publication Date
CN107948317A CN107948317A (en) 2018-04-20
CN107948317B true CN107948317B (en) 2021-01-22

Family

ID=61939232

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711433640.1A Active CN107948317B (en) 2017-12-26 2017-12-26 Debugging method and device of distributed service, storage medium and computer equipment

Country Status (1)

Country Link
CN (1) CN107948317B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108900482B (en) * 2018-06-13 2021-04-16 平安科技(深圳)有限公司 Script execution method, server management system, and storage medium
CN110704295B (en) * 2018-07-10 2023-04-11 阿里巴巴集团控股有限公司 Data calling method, device, equipment and system
CN109144420B (en) * 2018-08-22 2021-07-13 深圳忆联信息系统有限公司 Multi-particle self-adaptive initialization method and device, computer equipment and storage medium
CN109669737B (en) * 2018-12-19 2023-04-18 百度在线网络技术(北京)有限公司 Application processing method, device, equipment and medium
CN110018956B (en) * 2019-01-28 2022-05-13 创新先进技术有限公司 Application debugging method and related device
CN110046189A (en) * 2019-03-28 2019-07-23 阿里巴巴集团控股有限公司 Data transmission method and its device
CN110032426A (en) * 2019-04-10 2019-07-19 浙江讯盟科技有限公司 A kind of method that can be debugged in real time online, system and storage medium
CN111176986B (en) * 2019-12-16 2023-12-29 金蝶软件(中国)有限公司 Thread script debugging method and device, computer equipment and storage medium
CN113127326A (en) * 2019-12-30 2021-07-16 中科星图股份有限公司 Remote debugging method and system based on jdwp
CN112235417B (en) 2020-11-09 2022-06-10 北京百度网讯科技有限公司 Method and device for sending debugging instruction

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101630285A (en) * 2009-08-07 2010-01-20 华南理工大学 Software performance testing method applied in embedded system
CN101316196B (en) * 2007-05-28 2010-12-08 华为技术有限公司 Method and apparatus for implementing simulation test of service on distributed platform
CN102694866A (en) * 2012-06-01 2012-09-26 北京首钢自动化信息技术有限公司 Service request broker system in distributed network environment
US8898643B2 (en) * 2012-06-19 2014-11-25 Sap Se Application trace replay and simulation systems and methods
US8990775B2 (en) * 2010-11-10 2015-03-24 International Business Machines Corporation Collaborative software debugging in a distributed system with dynamically displayed chat sessions

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8856742B2 (en) * 2010-06-11 2014-10-07 International Business Machines Corporation Distributed debugging

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101316196B (en) * 2007-05-28 2010-12-08 华为技术有限公司 Method and apparatus for implementing simulation test of service on distributed platform
CN101630285A (en) * 2009-08-07 2010-01-20 华南理工大学 Software performance testing method applied in embedded system
US8990775B2 (en) * 2010-11-10 2015-03-24 International Business Machines Corporation Collaborative software debugging in a distributed system with dynamically displayed chat sessions
CN102694866A (en) * 2012-06-01 2012-09-26 北京首钢自动化信息技术有限公司 Service request broker system in distributed network environment
US8898643B2 (en) * 2012-06-19 2014-11-25 Sap Se Application trace replay and simulation systems and methods

Also Published As

Publication number Publication date
CN107948317A (en) 2018-04-20

Similar Documents

Publication Publication Date Title
CN107948317B (en) Debugging method and device of distributed service, storage medium and computer equipment
CN108124003B (en) Network management equipment connection processing method, device and system
WO2017097123A1 (en) Access request conversion method and device
CN111835789B (en) Service authentication method, device, equipment, system and storage medium
JP6190949B2 (en) Automatic configuration of access to virtual infrastructure manager by virtual network function manager
RU2683630C2 (en) Method for update of nsd network service descriptor and device
US11563649B2 (en) NF service consumer restart detection using direct signaling between NFs
CN108924210A (en) Service request processing method, device, server and storage medium
US20190158626A1 (en) Method, apparatus and computer readable storage medium for processing service
US10924326B2 (en) Method and system for clustered real-time correlation of trace data fragments describing distributed transaction executions
CN113312165B (en) Task processing method and device
CN105282128A (en) Bidirectional calling method and system based on long connection
CN110971702A (en) Service calling method and device, computer equipment and storage medium
CN113821335A (en) Data processing method, device and storage medium
WO2015117415A1 (en) Method for realizing operation on network logic entity, client and proxy end
CN110995829B (en) Instance calling method and device and computer storage medium
US20180248744A1 (en) Automatic recovery in remote management services
CN113342503B (en) Real-time progress feedback method, device, equipment and storage medium
WO2024103943A1 (en) Service processing method and apparatus, storage medium, and device
CN113609047A (en) Data adapter and data adaptation method
CN114726789A (en) Method, device, equipment and medium for traffic management and traffic management policy configuration
CN117194064A (en) Remote calling method and device
CN112565225A (en) Method and device for data transmission, electronic equipment and readable storage medium
CN111031123A (en) Spark task submission method, system, client and server
US8838765B2 (en) Modifying computer management request

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