Specific embodiment
This specification embodiment provides a kind of data transmission method, communication part, apparatus and system.
In order to make those skilled in the art more fully understand the technical solution in this specification, below in conjunction with this explanation
Attached drawing in book embodiment is clearly and completely described the technical solution in this specification embodiment, it is clear that described
Embodiment be only this specification a part of the embodiment, instead of all the embodiments.The embodiment of base in this manual,
Every other embodiment obtained by those of ordinary skill in the art without making creative efforts, all should belong to
The range of this specification protection.
It is deployed with the server-side platform of multiple application programs, when the application program on platform is all what same language was write
When application program, the communication between is more convenient.For example, the application program on the platform is all answering of writing of Java language
When with program, it can be communicated based on the Java RPC frame increased income between two application programs.But when application program is respectively
When the application program write using a variety of computer languages, then cannot directly it be carried out just between the application program of two different languages
Prompt communication.
A kind of method communicated between application program that realizing different language is to utilize protocol massages.That is, one is applied
The data that program issues are converted to the format of protocol massages, then protocol massages are sent to another application program, another application journey
After sequence receives protocol massages, the content in message is read, and be converted to the identifiable computer language of the application program.Traditional
Message format has 8583 messages, XML message, JSON message etc..It needs to convert communication data due to traditional message, lead to
Interrogate inefficiency.
Another kind realizes that the method communicated between Java and C language application is to program to realize communication using socket.Because
Socket is the programming interface based on TCP, and TCP is the 4th layer of computer network osi model, and there is no the barriers across language
Hinder.But the development difficulty of socket programming is larger.
Based on this, a kind of communications protocol message and the group using the communications protocol message are provided in this specification embodiment
Part, communication protocol message and component based on offer provide the new data transmission method of one kind, component, apparatus and system.Tool
Body, the communication protocol message uses the heading of variable-length, not only can store very crucial agreement category, may be used also
So that the diversification of message format.Meanwhile heading length information and message body length information are encapsulated in heading, it can
To improve communication efficiency.And the component of the communications protocol message is used, it solves using directly using agreement bring complexity
Property, communication between application program can be made only to need a general component, not only avoid and mutually converted using message
Bring inefficiency problem can also avoid programming bring complexity using socket, reduce the cost of later maintenance.Tool
In a kind of one embodiment of data transmission method of the method that this specification of body provides, it can be applied to across language
Data communication, sender sends the communication packet of predetermined format when data communication, and the communication packet is based on including following logical
Interrogate what message protocol generated:
Communication packet includes: heading and message body;
The heading includes: heading length information, message body length information and heading content;
The length of the heading content is variable, and stores scheduled protocol attribute and attribute value;
The heading content includes: the type and message information of message.
Described above can manage in the data communication across language, may include not homologous ray across Language Communication, or
The implement scene of different language used in the different business side accessed in person's same system.For example, being answered in some internets
In, the service system of some platforms may relate to the business sides such as Third-party payment, banking system, businessman, these business Fang Jun
Access service system, then this programme can be applied in service system, solve or improve the number of the business side using different language
According to message transmissions efficiency.Certainly, language described here is commonly referred to as computer compilation/high-level language, such as currently popular:
Java, C, C# etc..
A kind of a kind of specific embodiment of communication packet of this specification introduced below.Fig. 1 is one kind that this specification provides
The composition schematic diagram of the embodiment of communication packet.It is specific as shown in Figure 1, the communication packet may include: heading and
Message body.The heading may include: heading length information, message body length information and heading content.
The heading length information can be used to indicate that the total bytes of the heading.The heading is long
Degree information can occupy 4 bytes.For example, the heading length information of a message can occupy 4 bytes, the heading
Length information can be " 0100 ", then, which can indicate that the total bytes of heading are 8 words
Section.
The message body length information can be used to indicate that the total bytes of the message body.The message body length information
4 bytes can be occupied.
The length of the heading content can be variable.The heading content may include: message type and
Message information.
In one embodiment, the type of message can be any one in following: heartbeat message, service request
Message/service response message, service announcements message, connection request message/connection reply message, endpoint registration request message/end
Point registration response message, CMD command message/CMD command response message, endpoint report message.Different type of messages can answer
For different business scenarios.
The heartbeat message can be the report that whether can be used or whether detection endpoint survives for detecting TCP channel
Text.The heartbeat message does not include business datum.
Service request message/service response the message, can be intended to indicate that between business end and carry out RPC
The message of (Remote Procedure Call, remote procedure call) request and response.
The service announcements message, can be the message for feedback traffic processing result.
Connection request message/connection reply the message, can be for the use when two business ends establish channel
Message.For example, it may be the TCP long established when business end starts with associated endpoint is linked, alternatively, can be an industry
The short connection that business endpoint and other business ends are established.
Endpoint registration request message/endpoint registration the response message, can be the message for register endpoint.For example,
Message used in one endpoint of registration when can be an application program launching.
The CMD command message/CMD command response message can be the message of the attribute in dynamic control endpoint.It is described
CMD command message/CMD command response message can be the form of instruction.For example, Current limited Control instruction etc..
The endpoint reports message, can be the message for reporting each business end information.
In one embodiment, the message information may include it is following one of at least: version information, message body
Format, service codes, tracking ID, answer code, systematic name, terminal point information, client address, server-side address, service attribute letter
Breath.
The version information can be character string.For example, it may be 1.0.0 etc..
The message physique formula, can be used to indicate that the unprocessed form of message body in message.
The service codes can be used to indicate that the Service name of call request.
The tracking ID can be used for unique identification one request.The tracking ID can call link for positioning.
The answer code can be the result code requested corresponding to one.
The systematic name can be the title of an endpoint.For example, it may be the title of an application program.
The terminal point information can be used for one endpoint of unique identification.The terminal point information can be used for sentencing when service registration
Whether disconnected is unique endpoint.
The client address can be used to indicate that the address for initiating request
The server-side address can be used to indicate that the address of server-side.
The business attribute information may include the attribute information of one or more business.For example, when may include time-out
Between etc..
In communication protocol message provided by the above embodiment, using the heading of variable-length, message format can be made
Diversification, protocol massages can by different language application be parsed, avoid message format from needing to convert bring efficiency
Low problem.Meanwhile heading length information and message body length information are encapsulated in heading, it can allow using the agreement
The application of message, which is more clearly differentiated in heading content and message body, to be held.
On the other hand this specification also provides a kind of communication part using communication packet agreement in this specification.Described
Communication part includes computer executable instructions and the commanded storage medium of storage, and can combine necessary implementation hardware
Realize logical process.Fig. 2 is the composition schematic diagram of this communication part using communication packet agreement for illustrating to provide.Reference Fig. 2,
The communication part may include: registration center's module 220, real-time monitoring module 240, management module 260 and at least two industry
Business endpoint 280.
The business end 280 can be used for assembling protocol massages.The business end 280 can be also used for establishing chain
It connects, by the link of the foundation, the RPC that may be implemented between two business ends 280 is called.The business end 280 can
With a corresponding application program.The corresponding application program of the business end 280 can be using C language, Java language etc..It is different
The corresponding application program of business end 280 can use identical or different computer language.
The business end 280 can be with sending endpoint data to the real-time monitoring module 240.The end-point data can
To include endpoint service business diary.The end-point data can be communications protocol message.
Registration center's module 220 can be used for endpoint registration and endpoint service maintenance.Specifically, it can establish institute
State business end.By registration center's module 220, unified maintenance can be carried out to the business end 280.
The real-time monitoring module 240 can be used for receiving the end-point data of the business end 280.The real-time prison
Control module 240 can be also used for that the received end-point data is processed, cleaned and/or shown.
The management module 260 can be used for the endpoint status information according to the real-time monitoring module 240, Ke Yixiang
The business end 280 sends command instruction.The command instruction can be used for adjusting the number of endpoint of the business end 280
According to.For example, the command instruction can be change thread pool and queue size, link time-out time is changed, server-side current limliting refers to
Enable etc..The business end 280 can be made to reach optimum state by the command instruction.
The instruction of the above-mentioned realization assembly function can store in a variety of computer readable storage mediums.It is described
Computer readable storage medium may include the physical unit for storing information, can by after information digitalization again with utilize
The media of the modes such as electricity, magnetic or optics are stored.Computer readable storage medium described in the present embodiment, which has, may include:
The device of information is stored in the way of electric energy such as, various memory, such as RAM, ROM;The dress of information is stored in the way of magnetic energy
Set such as hard disk, floppy disk, tape, core memory, magnetic bubble memory, USB flash disk;Using optical mode storage information device such as, CD
Or DVD.Certainly, there are also readable storage medium storing program for executing of other modes, such as quantum memory, graphene memory etc..Following institutes
The instruction in device or server or client or system stated ibid describes.
The data message that here is a specific example to illustrate the transmission of method described in this specification is how to be formed
With transmission, parsing, conversion.
Customized message format can be used in the communication packet transmission across language in this specification example scheme,
Wherein innovation first is that " heading of variable-length ".While in order to allow the application for using agreement more clearly to differentiate " in heading
Hold " and " holding in message body ", " heading length " and " message body length " are encapsulated in heading.Server end reads twice 4
A byte, it can obtain heading length and message body length.
(determinant attribute is referring to schematic table .1), packet for the type and determinant attribute information that heading contains this request message
It includes but is not limited to:
Message physique formula: the serializing form of this request of server-side, such as general JSON format are told.
Service codes: the service codes are server-side defined services, and client needs some service using server-side
When, need clear service codes in the request.Server-side takes the service codes in this message, can carry out the processing for changing service.
Answer code: a set of customized answer code of the agreement, it is common for defining the state in system link interactive process
State such as: 200OK;500SYSTEM_ERROR;503TIMEOUT etc.
Terminal point information: the attribute for sending the endpoint of request, such as machine IP are defined.
Client address/server-side address:
1) it can be customized address of service, the corresponding IP in address of service is safeguarded by other configurations, when in use may be used
To carry out load balancing, the optimum selecting from IP available list.
2) it is also possible to a fixed IP, for the use when two endpoints are simply debugged.
Type of message: the very definition of core in heading.Many different type of messages can be defined, for indicating this
The attribute of pen request, so as to realize general procedure.
1) heartbeat message: the information of any business datum can be free of, for detecting the available rows of TCP channel, test side
Whether point survives.
2) service request message/service response message: most common type of message, indicate operation system between RPC request and
The message of response.
3) service announcements message: being suitable for certain particular service scenes, accepts as B service provides to synchronize, asynchronous receipt
Ability.So when A calls B, the response that " service request message/service response message " synchronizes will use, when B has been handled
Cheng Hou uses " service announcements message " to notify processing result to A.
4) connection request message/connection reply message: the message for being used when two endpoints establish channel, such as business
System is established TCP long with associated server when starting and is linked, and can be used for endpoint and other endpoints establish the shape of short connection
Formula.
5) endpoint registration message/end-points request message: endpoint is infused to " registration center " when this message starts for server
The message that volume endpoint uses.
6) CMD command message/CMD command response message: for by way of sending instruction, dynamic to be controlled in endpoint
Attribute, such as: thread pool size, server-side is time-consuming, the advanced uses such as Current limited Control.
Table 1: heading content determinant attribute schematic table
It is above-mentioned define message protocol content after, specific implementation process example may include as follows:
Based on customized communication packet agreement, it is directly exposed to operation system use.Another implementation of this specification
In example, secondary research and development can be carried out based on this agreement, such as packaging forms a Rpc servier component, as shown in figure 5, can be with
Service ability below is provided:
1) list and relationship using oneself maintenance downstream application service registration and discovery: are avoided
2) RPC is communicated: being linked, can efficiently be carried out across the communication between language based on TCP long.
3) service is administered: being based on the customized attribute of agreement, load balancing, service degradation, communication encryption etc. may be implemented
Advanced feature.
4) business monitoring: endpoint server can report present node state in real time, thus real-time exhibition safeguard service device
The key messages such as state and RPC link service condition;Based on the serial number in agreement, day can be acquired in real time from operation system
Will after processing cleaning, obtains the details that real-time link calls;Processing of the business diary Jing Guo big data platform, can show
The report of service call.
5) performance optimizes: the node state reported by endpoint server, can be assisted by monitoring management backstage by this
Message is discussed, sends command instruction to server in real time, such as: change thread pool and queue size change link time-out time, service
Hold current limliting instruction etc..Dynamically-adjusting parameter allows and is optimally applied, (individual characteristic needs language itself to support).
The key of this Rpc sercice component is understood, entire component can there are four parts to form:
The end a.Endpoint: can be regarded as business end, main function is: assembling protocol massages establish the link, RPC
It calls, load balance process, terminal point information is reported etc..(form is unlimited: C language is packaged as library file, and Java can be packaged as
Jar packet)
B. registration center: an application for needing to dispose, major function are service discovery and maintenance.
C. real-time monitoring platform: summarize the data and service business diary of endpoint report, carry out data mart modeling cleaning and simultaneously open up
Show.
D. background management system: logging in control from the background, and service command executes etc..
Based on the Rpc service Common Services Components that above-mentioned secondary research and development are formed, between whole system span language
Communication as shown in figure 3, between system communication can only need a general Rpc service component, both shielded use
" message " mutually conversion bring inefficiency problem has also got around direct use socket and has become bring complexity and later period
The cost of maintenance." the Rpc service component " formed and based on this protocol massages secondary research and develop not only solves application
Agreement bring complexity is directly used, realization " service is administered " can also be extended, " performance optimization ", " business monitoring " etc. is advanced
Characteristic.
Fig. 3 is the schematic diagram that the application program for the different computer languages that this specification embodiment provides is communicated.Ginseng
Java language can be used according to Fig. 3, App1 and APP2, APP3 can use C language, and APP4 can use C# language, and APP5 can
To use other language.When being communicated between above-mentioned 5 application programs, it can illustrate that is provided applies communication packet using this
Component.
It can be seen that the assembly embodiment using communication packet agreement in this specification that this specification provides, solves
Using agreement bring complexity is directly used, communication between application program can be made only to need a general component,
It not only avoids and mutually converts bring inefficiency problem using message, can also avoid multiple using socket programming bring
Polygamy reduces the cost of later maintenance.At the same time it can also be managed collectively multiple application programs, the property of each application program is realized
It can optimization and business monitoring.
The above-mentioned communication protocol message component that this specification embodiment provides can execute phase by processor in a computer
The program instruction answered realizes, such as using the c++ language of windows operating system PC end realize or other for example using
Android, iOS system programming language are realized in intelligent terminal, and realization of the processing logic based on quantum computer etc..
As shown in figure 4, Fig. 4 is the schematic configuration diagram using the computer of the embodiment of this specification.In hardware view, which can
To include processor, internal bus, transmission module and memory.The memory may include memory and non-volatile memories
Device.Processor from read in nonvolatile memory corresponding computer program into memory then run, on logic level
Form word string identification device.It will appreciated by the skilled person that structure shown in Fig. 4 is only to illustrate, not to upper
The structure for stating computer causes to limit.For example, the computer may also include the more or less component than shown in Fig. 4,
Such as can also include other processing hardware, such as GPU (Graphics Processing Unit, image processor), or
With the configuration different from shown in Fig. 4.Certainly, other than software realization mode, other implementations are not precluded in the application,
Such as logical device or the mode of software and hardware combining etc..
In this specification embodiment, the processor may include central processing unit (CPU) or graphics processor
(GPU), naturally it is also possible to including other single-chip microcontroller, logic gates, integrated circuits with logic processing capability etc. or its
It is appropriately combined.Memory described in the embodiment of the present application can be for protecting stored memory device.In digital display circuit, energy
The equipment for saving binary data can be memory;In integrated circuits, one not physical form have store function
Circuit may be memory, such as RAM, FIFO;In systems, the storage equipment with physical form can also be named storage
Device etc..When realization, which can also be realized by the way of cloud storage, specific implementation, and this specification is not
Mistake limits.
Based on method or apparatus described above, this specification also provides a kind of communication device, the apparatus may include
Communication part described in any of the above-described embodiment.The device may include having used this specification embodiment the method
System (including distributed system), software (application), module, component, server, client etc. simultaneously combine necessary implementation hardware
Apparatus.Based on same innovation thinking, a kind of for example following implementation of the processing unit in embodiment that this specification provides
Described in example.Since the implementation that device solves the problems, such as is similar to method, the specific processing unit of this specification embodiment
Implementation may refer to the implementation of preceding method, overlaps will not be repeated.Although device described in following embodiment is preferable
Ground is realized with software, but the realization of the combination of hardware or software and hardware is also that may and be contemplated.
Certainly, method, apparatus, component described in this specification embodiment etc. can using in the system across language, such as
The service system of service platform described above can solve and communicate between the system across language, improve communication efficiency, while can mention
For service discovery, service is administered, the functions such as business monitoring.Therefore, this specification also provides a kind of system across Language Communication, packet
The memory of at least one processor and storage processor executable instruction is included, the processor executes described instruction and carries out across language
Step described in any one of this specification embodiment is realized when the communication packet transmission of speech communication;
Alternatively, the system is realized based on communication part described in any embodiment in calling this specification across speech communication
Communication packet transmission.
It should be noted that the data transmission method using customized message protocol that this specification provides, not only limits to
In the communication across language, cross-platform communication also may be implemented, usually meet the network based on osi protocol standard (such as
Internet), can be used.
It should be noted that this specification embodiment device described above, component, system, implement according to correlation technique
The description of example can also include other embodiments.Concrete implementation mode is referred to the description of embodiment of the method, herein
It does not repeat one by one.
All the embodiments in this specification are described in a progressive manner, same and similar portion between each embodiment
Dividing may refer to each other, and each embodiment focuses on the differences from other embodiments.Especially for hardware+
For program class embodiment, since it is substantially similar to the method embodiment, so being described relatively simple, related place is referring to side
The part of method embodiment illustrates.
It is above-mentioned that this specification specific embodiment is described.Other embodiments are in the scope of the appended claims
It is interior.In some cases, the movement recorded in detail in the claims or step can be come according to the sequence being different from embodiment
It executes and desired result still may be implemented.In addition, process depicted in the drawing not necessarily require show it is specific suitable
Sequence or consecutive order are just able to achieve desired result.In some embodiments, multitasking and parallel processing be also can
With or may be advantageous.
Although this application provides the method operating procedure as described in embodiment or flow chart, based on conventional or noninvasive
The labour for the property made may include more or less operating procedure.The step of enumerating in embodiment sequence is only numerous steps
One of execution sequence mode, does not represent and unique executes sequence.It, can when device or client production in practice executes
To execute or parallel execute (such as at parallel processor or multithreading according to embodiment or method shown in the drawings sequence
The environment of reason).
In the 1990s, the improvement of a technology can be distinguished clearly be on hardware improvement (for example,
Improvement to circuit structures such as diode, transistor, switches) or software on improvement (improvement for method flow).So
And with the development of technology, the improvement of current many method flows can be considered as directly improving for hardware circuit.
Designer nearly all obtains corresponding hardware circuit by the way that improved method flow to be programmed into hardware circuit.Cause
This, it cannot be said that the improvement of a method flow cannot be realized with hardware entities module.For example, programmable logic device
(Programmable Logic Device, PLD) (such as field programmable gate array (Field Programmable Gate
Array, FPGA)) it is exactly such a integrated circuit, logic function determines device programming by user.By designer
Voluntarily programming comes a digital display circuit " integrated " on a piece of PLD, designs and makes without asking chip maker
Dedicated IC chip.Moreover, nowadays, substitution manually makes IC chip, this programming is also used instead mostly " is patrolled
Volume compiler (logic compiler) " software realizes that software compiler used is similar when it writes with program development,
And the source code before compiling also write by handy specific programming language, this is referred to as hardware description language
(Hardware Description Language, HDL), and HDL is also not only a kind of, but there are many kind, such as ABEL
(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description
Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL
(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby
Hardware Description Language) etc., VHDL (Very-High-Speed is most generally used at present
Integrated Circuit Hardware Description Language) and Verilog.Those skilled in the art also answer
This understands, it is only necessary to method flow slightly programming in logic and is programmed into integrated circuit with above-mentioned several hardware description languages,
The hardware circuit for realizing the logical method process can be readily available.
Controller can be implemented in any suitable manner, for example, controller can take such as microprocessor or processing
The computer for the computer readable program code (such as software or firmware) that device and storage can be executed by (micro-) processor can
Read medium, logic gate, switch, specific integrated circuit (Application Specific Integrated Circuit,
ASIC), the form of programmable logic controller (PLC) and insertion microcontroller, the example of controller includes but is not limited to following microcontroller
Device: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicone Labs C8051F320 are deposited
Memory controller is also implemented as a part of the control logic of memory.It is also known in the art that in addition to
Pure computer readable program code mode is realized other than controller, can be made completely by the way that method and step is carried out programming in logic
Controller is obtained to come in fact in the form of logic gate, switch, specific integrated circuit, programmable logic controller (PLC) and insertion microcontroller etc.
Existing identical function.Therefore this controller is considered a kind of hardware component, and to including for realizing various in it
The device of function can also be considered as the structure in hardware component.Or even, it can will be regarded for realizing the device of various functions
For either the software module of implementation method can be the structure in hardware component again.
Device, module or the unit that above-described embodiment illustrates can specifically be realized, Huo Zheyou by computer chip or entity
Product with certain function is realized.It is a kind of typically to realize that equipment is computer.Specifically, computer for example can be a
People's computer, laptop computer, cellular phone, camera phone, smart phone, personal digital assistant, media player, navigation
Any equipment in equipment, electronic mail equipment, game console, tablet computer, wearable device or these equipment
Combination.
For convenience of description, it is divided into various units when description apparatus above with function to describe respectively.Certainly, implementing this
The function of each unit can be realized in the same or multiple software and or hardware when specification.
It should be understood by those skilled in the art that, the embodiment of the present invention can provide as method, apparatus or computer program
Product.Therefore, complete hardware embodiment, complete software embodiment or reality combining software and hardware aspects can be used in the present invention
Apply the form of example.Moreover, it wherein includes the computer of computer usable program code that the present invention, which can be used in one or more,
The computer program implemented in usable storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) produces
The form of product.
The present invention be referring to according to the method for the embodiment of the present invention, the process of equipment (device) and computer program product
Figure and/or block diagram describe.It should be understood that every one stream in flowchart and/or the block diagram can be realized by computer program instructions
The combination of process and/or box in journey and/or box and flowchart and/or the block diagram.It can provide these computer programs
Instruct the processor of general purpose computer, special purpose computer, Embedded Processor or other programmable data processing devices to produce
A raw machine, so that being generated by the instruction that computer or the processor of other programmable data processing devices execute for real
The device for the function of being specified in present one or more flows of the flowchart and/or one or more blocks of the block diagram.
These computer program instructions, which may also be stored in, is able to guide computer or other programmable data processing devices with spy
Determine in the computer-readable memory that mode works, so that it includes referring to that instruction stored in the computer readable memory, which generates,
Enable the manufacture of device, the command device realize in one box of one or more flows of the flowchart and/or block diagram or
The function of being specified in multiple boxes.
These computer program instructions also can be loaded onto a computer or other programmable data processing device, so that counting
Series of operation steps are executed on calculation machine or other programmable devices to generate computer implemented processing, thus in computer or
The instruction executed on other programmable devices is provided for realizing in one or more flows of the flowchart and/or block diagram one
The step of function of being specified in a box or multiple boxes.
In a typical configuration, calculating equipment includes one or more processors (CPU), input/output interface, net
Network interface and memory.
Memory may include the non-volatile memory in computer-readable medium, random access memory (RAM) and/or
The forms such as Nonvolatile memory, such as read-only memory (ROM) or flash memory (flash RAM).Memory is computer-readable medium
Example.
Computer-readable medium includes permanent and non-permanent, removable and non-removable media can be by any method
Or technology come realize information store.Information can be computer readable instructions, data structure, the module of program or other data.
The example of the storage medium of computer includes, but are not limited to phase change memory (PRAM), static random access memory (SRAM), moves
State random access memory (DRAM), other kinds of random access memory (RAM), read-only memory (ROM), electric erasable
Programmable read only memory (EEPROM), flash memory or other memory techniques, read-only disc read only memory (CD-ROM) (CD-ROM),
Digital versatile disc (DVD) or other optical storage, magnetic cassettes, tape magnetic disk storage, graphene stores or other
Magnetic storage device or any other non-transmission medium, can be used for storage can be accessed by a computing device information.According to herein
In define, computer-readable medium does not include temporary computer readable media (transitory media), such as the data of modulation
Signal and carrier wave.
It should also be noted that, the terms "include", "comprise" or its any other variant are intended to nonexcludability
It include so that the process, method, commodity or the equipment that include a series of elements not only include those elements, but also to wrap
Include other elements that are not explicitly listed, or further include for this process, method, commodity or equipment intrinsic want
Element.In the absence of more restrictions, the element limited by sentence "including a ...", it is not excluded that including described want
There is also other identical elements in the process, method of element, commodity or equipment.
It will be understood by those skilled in the art that the embodiment of this specification can provide as method, apparatus or computer program production
Product.Therefore, complete hardware embodiment, complete software embodiment or implementation combining software and hardware aspects can be used in this specification
The form of example.Moreover, it wherein includes the computer of computer usable program code that this specification, which can be used in one or more,
The computer program implemented in usable storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) produces
The form of product.
This specification can describe in the general context of computer-executable instructions executed by a computer, such as journey
Sequence module.Generally, program module include routines performing specific tasks or implementing specific abstract data types, programs, objects,
Component, data structure etc..This specification can also be practiced in a distributed computing environment, in these distributed computing environment
In, by executing task by the connected remote processing devices of communication network.In a distributed computing environment, program module
It can be located in the local and remote computer storage media including storage equipment.
All the embodiments in this specification are described in a progressive manner, same and similar portion between each embodiment
Dividing may refer to each other, and each embodiment focuses on the differences from other embodiments.Especially for device and
For server example, since it is substantially similar to the method embodiment, so being described relatively simple, related place is referring to side
The part of method embodiment illustrates.
The foregoing is merely the embodiments of this specification, are not limited to this specification.For art technology
For personnel, this specification can have various modifications and variations.It is all made any within the spirit and principle of this specification
Modification, equivalent replacement, improvement etc., should be included within scope of the claims.