CN111338608A - Distributed application development method and device, node equipment and readable storage medium - Google Patents

Distributed application development method and device, node equipment and readable storage medium Download PDF

Info

Publication number
CN111338608A
CN111338608A CN202010133779.XA CN202010133779A CN111338608A CN 111338608 A CN111338608 A CN 111338608A CN 202010133779 A CN202010133779 A CN 202010133779A CN 111338608 A CN111338608 A CN 111338608A
Authority
CN
China
Prior art keywords
application
component
target
function
attribute information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010133779.XA
Other languages
Chinese (zh)
Other versions
CN111338608B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010133779.XA priority Critical patent/CN111338608B/en
Publication of CN111338608A publication Critical patent/CN111338608A/en
Application granted granted Critical
Publication of CN111338608B publication Critical patent/CN111338608B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • 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/133Protocols for remote procedure calls [RPC]

Abstract

The embodiment of the application provides a distributed application development method, a device, node equipment and a readable storage medium, wherein the distributed application development method comprises the following steps: receiving application attribute information aiming at target distributed application sent by a client, wherein the application attribute information comprises application function attribute of the target distributed application and identification information of a block chain to be deployed; determining at least one target component from at least one distributed application component included in the component library according to the application function attribute; and obtaining a target distributed application based on the application attribute information and the at least one target component, and deploying the target distributed application in the block chain to be deployed corresponding to the identification information. By adopting the distributed application development method, the reusability and convenience of application functions in the distributed application development process are improved, and the development cost is reduced.

Description

Distributed application development method and device, node equipment and readable storage medium
Technical Field
The present application relates to the field of computers, and in particular, to a distributed application development method and apparatus, a node device, and a readable storage medium.
Background
With the development of blockchain technology, distributed applications (DApp) incorporating blockchain technology have gradually come into the field of view of people. The function of DApp is implemented by intelligent contracts deployed in blockchain networks. When a plurality of DApps are developed, even if the functions of the DApps are found to be the same, the DApps need to be re-developed and deployed, so that the development period is prolonged, and the development cost is increased.
Therefore, how to provide a DApp development method to improve the convenience of the DApp development process and the reusability of functions and reduce the development cost becomes an urgent problem to be solved.
Disclosure of Invention
The embodiment of the application provides a distributed application development method, a distributed application development device, node equipment and a readable storage medium.
In a first aspect, an embodiment of the present application provides a distributed application development method, where the method is applied to a blockchain network, and the method includes:
receiving application attribute information aiming at a target distributed application, which is sent by a client, wherein the application attribute information comprises application function attributes of the target distributed application and identification information of a block chain to be deployed;
determining at least one target component from at least one distributed application component included in a component library according to the application function attribute;
and obtaining the target distributed application based on the application attribute information and the at least one target component, and deploying the target distributed application in the block chain to be deployed corresponding to the identification information.
In a second aspect, an embodiment of the present application provides a distributed application development apparatus, where the apparatus is configured in a blockchain network, and the apparatus includes:
the system comprises a data acquisition module, a block chain deployment module and a block chain deployment module, wherein the data acquisition module is used for receiving application attribute information aiming at a target distributed application, which is sent by a client, and the application attribute information comprises application function attributes of the target distributed application and identification information of the block chain to be deployed;
the data processing module is used for determining at least one target component from at least one distributed application component included in the component library according to the application function attribute;
the data processing module is further configured to obtain the target distributed application based on the application attribute information and the at least one target component, and deploy the target distributed application in the block chain to be deployed corresponding to the identification information.
In a third aspect, an embodiment of the present application provides a node device, where the node device includes an input device and an output device, and the node device further includes a processor, and is adapted to implement one or more instructions, where the one or more instructions are adapted to be loaded by the processor and execute the distributed application development method according to the first aspect.
In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, in which instructions are stored, and when the instructions are executed on a computer, the instructions cause the computer to execute the distributed application development method according to the first aspect.
In the embodiment of the application, the node device receives application attribute information which is sent by a client and carries a target distributed application, wherein the application attribute information comprises application function attributes and identification information of a block chain to be deployed. The target distributed application is integrated and developed by calling the component method, so that the reusability of the component function is improved, and the development convenience is improved. And the node equipment deploys the target distributed application in the block chain to be deployed corresponding to the identification information, so that the process from development to deployment of the distributed application is completed, and the development cost such as labor cost, time cost and the like in the development process is saved.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a schematic architecture diagram of a distributed application development system according to an embodiment of the present application;
fig. 2 is a schematic flowchart of a distributed application development method provided in an embodiment of the present application;
fig. 3 is a schematic flowchart of another distributed application development method provided in an embodiment of the present application;
fig. 4 is a schematic diagram of a target component engagement sequence according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of a distributed application development apparatus according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of a node device according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
In the process of developing a plurality of DApp, the problem of overhigh development cost such as overlong development period and the like caused by the fact that the reusability problem of each DApp function is not considered is received, application attribute information aiming at target distributed application is received, wherein the application attribute information comprises application function attributes and identification information of a block chain to be deployed, the reusability of the DApp function is improved in a component mode by calling at least one distributed application component of a component library and combining the distributed application components to obtain a development method of the target distributed application, and therefore the convenience of distributed application development is improved, and the development cost such as time cost, labor cost and the like is saved.
The technical scheme of the application can be applied to node equipment, the node equipment can be a terminal, a server and the like, and the node equipment can be node equipment in a block chain network or equipment independent of the block chain network. For example, an application development terminal operated by a developer (user) may be a node device in a blockchain network, in such a case, the application development terminal receives application attribute information of a target distributed application of a client configured by the application development terminal, where the application attribute information includes an application function attribute of the target distributed application and identification information of a blockchain to be deployed, and further, the application development terminal may determine at least one (one or more) target component from distributed application components included in a component library according to the application function attribute, and combine the target components to obtain the target distributed application. The application development terminal operated by the developer (user) can be a node device independent of the blockchain network, in such a case, the application development terminal can communicate with the blockchain network, determine at least one (one or more) target component from the distributed application components included in the component library according to the application function attribute, and integrate the target components to obtain the target distributed application. Then, the application development terminal deploys the target distributed application in the block chain corresponding to the identification information.
In this application, the component library may be a component library existing in the blockchain network, or may be a specific database independent of the blockchain network, and is not specifically limited herein. In addition, the terminal corresponding to the terminal related to the application development terminal, such as the application development terminal, may specifically be a smart phone, a tablet computer, a notebook computer, a desktop computer, a vehicle-mounted intelligent terminal, and the like, and the embodiment of the present application is not limited.
Taking a node device as an application development terminal communicating with a blockchain network as an example, and a component library is a specified component library independent of the blockchain network, please refer to fig. 1, which is a framework diagram of a distributed application development system provided in an embodiment of the present application, where the distributed application development system includes a blockchain network 10, an application development terminal 11, and a component library 12. Wherein:
the blockchain network 10 specifically refers to a network for performing data sharing between node devices, and the blockchain network may include a plurality of node devices 101. Each node apparatus 101 may receive input information while performing normal operations and maintain shared data (i.e., blockchains) within the blockchain network based on the received input information. In order To ensure information intercommunication in the blockchain network, information connection may exist between each node device, and Peer-To-Peer (Peer To Peer, P2P) communication may be implemented between any two node devices, and specifically, P2P communication may be performed through a wired communication link or a wireless communication link. For example, when any node device in the blockchain network receives input information, other node devices acquire the input information according to a consensus algorithm, and store the input information as data in shared data, so that the data stored in all the node devices in the blockchain network are consistent.
The application development terminal 11 and the component library 12 may access the blockchain network 10 and may communicate with node devices in the blockchain network 10.
Each node device in the blockchain network has a node device identifier corresponding thereto, and each node device in the blockchain network can store node device identifiers of other node devices in the blockchain network, so that the generated block is broadcast to other node devices in the blockchain network according to the node device identifiers of other node devices in the blockchain network. Each node device may maintain a node device identifier list as shown in the following table, and store the node device name and the node device identifier in the node device identifier list correspondingly. The node device identifier may be an Internet Protocol (IP) address or any other information that can be used to identify the node device, and the following table one is described by taking an IP address as an example.
Watch 1
Node device name Node device identification
Node device
1 117.114.151.174
Node device 2 117.116.189.145
Node device N 119.123.789.258
In some possible embodiments by using the above-mentioned technology in combination with the blockchain technology, the application development terminal 11 receives application attribute information for a target DApp sent by a client configured by itself, where the application attribute information includes an application function attribute of the target DApp and identification information of a blockchain to be deployed, and further, the application development terminal 11 may determine at least one target component from at least one DApp component included in the component library 12 according to the application function attribute, and further, the application development terminal integrates the target components based on the application attribute information to obtain the target DApp, and deploys the target DApp in the blockchain to be deployed corresponding to the identification information in the blockchain network 10. By adopting the DApp development method, the reusability of the function of the DApp is improved through the form of the component, the convenience of the DApp development is improved through the mode of calling the component for integrated development of the DApp, and the development cost such as time cost is saved.
Fig. 2 is a schematic flow chart of a DApp development method applied to a blockchain network according to an embodiment of the present disclosure, where the DApp development method includes the following steps:
s201: and the node equipment receives application attribute information aiming at the target DApp, which is sent by the client, wherein the application attribute information comprises the application function attribute of the target DApp and the identification information of the block chain to be deployed.
The application attribute information may be a requirement document or specification of the target DApp, and in this case, the application function attribute may be an application function that the target DApp indicated by the requirement document or specification needs to have, for example, a voting function, a flow rate statistics function, and the like. The block chain to be deployed can be an independent block chain local area network; or may be a certain blockchain in a plurality of relatively independent blockchain local area networks, in this case, the identification information of the blockchain to be deployed may include two parts: network identification information of the block chain network to be deployed and block chain identification information of the block chain to be deployed. The network identification information may be a character string uniquely identifying the corresponding blockchain network in the blockchain local area network, and the blockchain identification information may be a character string uniquely identifying the corresponding blockchain in the blockchain network corresponding to the network identification information. For example, if the identification information of the block chain to be deployed is 001-. Optionally, when the node device is deployed (or communicated) in a certain blockchain network and the blockchain to be deployed is a blockchain in the blockchain network, in this case, the identification information of the blockchain to be deployed may be blockchain identification information corresponding to the blockchain in the blockchain network, for example, a blockchain number 001. Optionally, when the blockchain network only includes one blockchain, the identification information of the blockchain to be deployed may be network identification information of the blockchain network or blockchain identification information corresponding to the blockchain. Further optionally, the blockchain to be deployed may be any one of a public chain, a private chain, or a federation chain. The client may be a client configured on the application development terminal, or may be a client in communication connection with the application development terminal, which is not limited in this application.
Illustratively, in one application scenario, a user (or DApp developer) sends a demand document for DApp1 (i.e., a target DApp) through a client, which indicates that DApp1 may have traffic statistics functionality and specifies that DApp1 needs to be deployed in a blockchain numbered 001 in a blockchain local area network.
In an embodiment, the application attribute information further carries a private key signature of a user (developer) corresponding to the client, after receiving the application attribute information, the node device obtains a public key corresponding to the private key signature from the blockchain network, performs a dispack on the application attribute information by using the public key, and if the dispack is successful, successfully verifies the identity of the user. In this way, the traceability of DApp during the development process is increased.
Optionally, after receiving registration information submitted by a user through a client, the blockchain network node generates a pair of asymmetrically encrypted keys (a public key and a private key) corresponding to the user after verifying the registration information, so that when the client performs data interaction with the node device, the reliability of data can be improved according to an asymmetric encryption technology (private key signature encryption, public key decryption or decryption) and the data can be prevented from being tampered. And stores the public key broadcast in the blockchain network. The registration information may include information that can uniquely identify the user, such as mailbox information, a mobile phone number, or identity information of the user corresponding to the client.
S202: the node device determines at least one target component from at least one DApp component included in the component library according to the application function attribute.
And the number of DApp components and the number of target components in the component library are one or more, wherein the number of the target components is less than or equal to the number of the DApp components in the component library. The component library is a pre-established DApp component library, and the DApp components contained in the component library may be pre-established by a user (developer) according to functions commonly used in DApp or high in reusability, or may be stored in the component library after being established according to the application attribute information, which is not limited in this embodiment.
In a possible embodiment, the DApp components have function attribute information, and the node device may obtain function attribute information corresponding to each DApp component in at least one DApp component included in the component library, and compare the function attribute information corresponding to each DApp component with an application function attribute of the target DApp. And if the function attribute information is matched (corresponding) with the application function attribute of the target DApp, determining the DApp component corresponding to the function attribute information as the target component. And the function attribute information of the DApp component indicates the specific application function correspondingly realized by the DApp component.
Illustratively, the application function attributes of the target DApp are a traffic monitoring function and an advertisement plug-in function, the component library includes a function that the function attribute information of the DApp component 1 is a random drawing function, the function attribute information of the DApp component 2 is a function of counting the number of drawing times, the function attribute information of the DApp component 3 is a traffic monitoring function, and the function attribute information of the DApp component 4 is an advertisement plug-in function. And the node equipment determines the DApp component 3 corresponding to the matched flow monitoring function and the DApp component 4 corresponding to the advertisement plug-in function as target components by comparing the function attribute information of the DApp components 1, 2, 3 and 4 in the component library with the application function attribute of the target DApp.
In one embodiment, the application function attribute includes at least one (one or more) application function, and before the node device determines the target component from the component library, the node device may generate an intelligent contract corresponding to each of the at least one application function, and further may respectively create a DApp component corresponding to each application function based on the intelligent contract corresponding to each application function, and store the DApp component in the component library.
Illustratively, the application function attributes of DApp2 include two application functions: the node equipment can generate an intelligent contract 1 corresponding to the random drawing function and an intelligent contract 2 corresponding to the statistical drawing function, create a DApp component 1 to bind the intelligent contract 1 to realize the random drawing function, create a DApp component 2 to bind the intelligent contract 2 to realize the statistical drawing function, and store the DApp component 1 and the DApp component 2 in a component library.
Optionally, the plurality of application functions may also correspond to an intelligent contract, integrated in a DApp component. For example, if the application function attribute of the DApp2 includes a random drawing function and a statistical drawing number function, an intelligent contract may be generated according to the random drawing function and the statistical drawing number function, and the DApp component 3 corresponding to the intelligent contract may be created.
Alternatively, a combination of a plurality of components may be stored in a component library as one functional component. For example, if the DApp component 1 corresponds to a random drawing function and the DApp component 2 corresponds to a random drawing number counting function, the DApp component 1 and the DApp component 2 may be combined into a DApp component 3, and the DApp component 3 is used to realize the random drawing number counting function.
S203: and the node equipment obtains a target DApp based on the application attribute information and the at least one target component, and deploys the target DApp in the block chain to be deployed corresponding to the identification information.
The application attribute information may further include additional information indicating combination rule information of the target components, a connection manner of each function, a data flow direction between the target components, and the like, and the node device may integrate (or combine) the determined at least one target component according to the additional information in the application attribute to obtain a target DApp, and deploy the target DApp in a block chain to be deployed, thereby completing development and deployment of the target DApp.
In the embodiment of the application, the node device receives application attribute information which is sent by a client and carries a target distributed application, wherein the application attribute information comprises an application function attribute and identification information of a block chain to be deployed. The target distributed application is integrated and developed by calling the component method, so that the reusability of the component function is improved, and the development convenience is improved. And the node equipment deploys the target distributed application in the block chain to be deployed corresponding to the identification information, so that the process from development to deployment of the distributed application is completed, and the development cost such as labor cost, time cost and the like in the development process is saved.
Fig. 3 is a schematic flow chart of another DApp development method provided in this embodiment of the present application, where the DApp development method is applied to a blockchain network, and the DApp development method includes the following steps:
s301: and the node equipment receives application attribute information aiming at the target DApp, which is sent by the client, wherein the application attribute information comprises the application function attribute of the target DApp and the identification information of the block chain to be deployed.
S302: the node device determines at least one target component from at least one DApp component included in the component library according to the application function attribute.
For specific implementation of steps S301 to S302, reference may be made to the specific implementation of steps S201 to S202 in the foregoing embodiments, and details are not described herein again.
S303: the node device detects whether the functional attribute of the target component is consistent with the application functional attribute.
The node device may compare the application function included in the function attribute of the target component with the application function attribute, and determine whether the function attribute of the target component is consistent with the application function attribute according to a comparison result, that is, check whether all the application functions in the application attribute of the target DApp are implemented, and if it is detected that all the application functions in the application attribute of the target DApp are implemented by the function attribute of the target DApp component, it indicates that the function attribute of the target component is consistent with the application function attribute. If part or all of the application functions in the application attributes of the target DApp fail to be called from the component library to the DApp component implementation with the corresponding functional attributes, an inconsistency is indicated.
S304: and if not, the node equipment determines the application function to be added according to the application function attribute and the function attribute of the target component.
If not, the node device may determine, according to a detection result of whether the functional attribute of the target component is consistent with the application functional attribute, an application function to be added. The application function to be added refers to an application function realized by calling an existing DApp component in the component library due to the fact that the DApp component with the corresponding function attribute information of the application function in the target DApp does not exist in the component library. Illustratively, since the traffic monitoring function DApp component does not currently exist in the component library, and thus the traffic monitoring function of DApp1 cannot be implemented by calling the existing DApp component in the component library, the traffic monitoring function is determined as the application function to be added.
In one embodiment, the application function attribute of the target DApp includes at least one (one or more) application function, the node device compares each application function of the at least one application function with the function attribute information of all target components that have been determined in the previous step, and if the application function does not match with the function attribute information of the target components, the application function that does not match with the function attribute information of the target components is determined as the application function to be added.
Illustratively, the application function attributes of the DApp1 include 3 application functions, namely, a traffic monitoring function, a random drawing function and an advertisement function, and two target components are determined from the component library, where the function attribute information of the target component 1 is the traffic monitoring function, and the function attribute information of the target component 2 is the random drawing function. The application function included in the application function attribute of the DApp may be compared with the determined function attribute information of the target component, and the advertisement function is determined to be the application function to be added.
S305: and the node equipment creates a DApp component according to the application function to be added and stores the DApp component in a component library.
The node equipment generates an intelligent contract according to the application function to be added, creates a DApp component corresponding to the application function to be added according to the intelligent contract, and stores the DApp component in a component library for subsequent calling.
S306: and the node equipment determines the DApp component as a target component, obtains a target DApp based on the application attribute information and the at least one target component, and deploys the target DApp in the block chain to be deployed corresponding to the identification information.
Determining the DApp component corresponding to the function to be added as a target component, integrating (combining) the target component with the target component determined from the component library based on the application attribute information to obtain a target DApp, and then deploying the target DApp in the block chain to be deployed corresponding to the identification information.
In an embodiment, the application attribute information may further include a join order of at least one application function, and the node device may sort the target components corresponding to the application functions according to the join order, and join (or combine) the target components together according to a result of the sorting to obtain the target DApp. The connection sequence may be the execution sequence of each function, or may be the connection sequence of the target components established by a user (developer) according to the data flow direction between the target components.
Illustratively, the target DApp is an outdoor game competition application, and the target components include a DApp component 1 corresponding to a map function, a DApp component 2 corresponding to a multi-player competition function, a DApp component 3 corresponding to a single-player competition function, and a DApp component 4 corresponding to a score award function. The application function join order of the target DApp is the target component that is formulated by the user (developer) according to the data flow direction between the target components. As shown in fig. 4, the exemplary target components are linked in a linking order, wherein the linking order is that the DApp component 1 is used as a base support for preferential loading, data links with the DApp component 2 and the DApp component 3 respectively, and finally the DApp component 2 and the DApp component 3 are respectively data linked with the DApp component 4 for score reward.
In an embodiment, the application attribute information further includes data attribute information of at least one application function, and further, the node device may add the data attribute information corresponding to the application function to a target component corresponding to each application function according to the data attribute information of each application function, and further, the node device may integrate the target component based on the data attribute information of the target component to obtain the target DApp. The data attribute information includes data sources, data flow directions, statistical rules for generating data, and the like for implementing each application function.
Optionally, the data attribute information further includes data that needs to be stored in the blockchain network and is formulated by a user (developer) according to an actual application scenario of the target DApp, for example, a value of a highest score of the sports game application, advertisement click frequency statistics, and the like. By adopting the method, the reliability of the DApp interaction data is improved.
In an embodiment, the application attribute information includes a connection order of at least one application function and data attribute information, in which case, the node device may sort the target components corresponding to the application functions according to the connection order to obtain a sorting result, and add the data attribute information corresponding to the application function to the target components corresponding to the application functions according to the data attribute information of the application functions. Further, the node device may integrate the target component based on the sorting result of the target component and the data attribute information to obtain the target DApp.
In the embodiment of the application, the node device receives application attribute information which is sent by a client and carries a target distributed application, wherein the application attribute information comprises an application function attribute and identification information of a block chain to be deployed, and then the node device can determine at least one target component from a component library according to the application function attribute. The node device may further detect whether the function attribute of the target component is consistent with the application function attribute, if not, the node device determines an application function to be added according to the application function attribute and the function attribute of the target component, creates a DApp component according to the application function to be added, stores the DApp component in a component library, determines the DApp component as the target component, integrates the at least one target component based on the application attribute information to obtain a target DApp, and deploys the target DApp in a block chain to be deployed corresponding to the identification information. By adopting the method, the DApp modularization development method improves the reusability of the module functions and ensures the integrity of the application functions of the target DApp.
Referring to fig. 5, a schematic structural diagram of a distributed application development apparatus provided in an embodiment of the present application is shown, where the apparatus includes:
the data acquisition module 50 is configured to receive application attribute information, which is sent by a client and is for a target distributed application, where the application attribute information includes an application function attribute of the target distributed application and identification information of a block chain to be deployed;
a data processing module 51, configured to determine at least one target component from at least one distributed application component included in the component library according to the application function attribute;
the data processing module 51 is further configured to obtain the target distributed application based on the application attribute information and the at least one target component, and deploy the target distributed application in the block chain to be deployed corresponding to the identification information.
In an embodiment, the application function attribute includes at least one application function, and before the at least one target component is determined from at least one distributed application component included in the component library according to the application function attribute, the data processing module 51 is further configured to generate an intelligent contract corresponding to each application function in the at least one application function, respectively; and respectively creating distributed application components corresponding to the application functions based on the intelligent contracts corresponding to the application functions, and storing the distributed application components in the component library.
In one embodiment, the distributed application components have function attribute information, and the data processing module 50 is further configured to obtain function attribute information corresponding to each distributed application component in at least one distributed application component included in the component library; the data processing module 51 is further configured to compare the function attribute information corresponding to each distributed application component with the application function attribute; and if the function attribute information is matched with the application function attribute, determining the distributed application component corresponding to the function attribute information as a target component.
In an embodiment, before obtaining the target distributed application based on the application attribute information and the at least one target component, the data processing module 51 is further configured to detect whether the function attribute information of the target component is consistent with the application function attribute; if not, determining an application function to be added according to the application function attribute and the function attribute information of the target component; creating a distributed application component according to the application function to be added, and storing the distributed application component in the component library; and determining the distributed application component as a target component, and triggering and executing the step of obtaining the target distributed application based on the application attribute information and the at least one target component.
In one embodiment, the application function attribute includes at least one application function, and the data processing module 51 is further configured to compare each application function of the at least one application function with the function attribute information of the target component; and if not, determining the application function which does not match with the target component function attribute information as the application function to be added.
In an embodiment, the application attribute information further includes a connection order of at least one application function, and the data processing module 51 is further configured to sort the target components corresponding to the application functions according to the connection order; and integrating the at least one target component according to the sequencing result to obtain the target distributed application.
In an embodiment, the application attribute information further includes data attribute information of the at least one application function, and the data processing module 51 is further configured to add the data attribute information of the application function to the target component corresponding to each application function according to the data attribute information of each application function; and integrating the at least one target component based on the data attribute information of the target component to obtain the target distributed application.
It should be noted that the functions of each unit module of the distributed application development apparatus described in the embodiment of the present application may be specifically implemented according to the method in the method embodiment described in fig. 2 or fig. 3, and the specific implementation process may refer to the description related to the method embodiment in fig. 2 or fig. 3, which is not described herein again.
Based on the description of the method embodiment and the apparatus item embodiment, an embodiment of the present application further provides a node device. Referring to fig. 6, the node device may include at least a processor 601, an input device 602, an output device 603, and a memory 604; the processor 601, the input device 602, the output device 603, and the memory 604 may be connected by a bus or other connection means. The memory 604 may also include a computer-readable storage medium for storing a computer program comprising program instructions, the processor 601 for executing the program instructions stored by the memory 604. The processor 601 (or CPU) is a computing core and a control core of the node device, and is adapted to implement one or more instructions, and in particular, is adapted to load and execute the one or more instructions so as to implement the corresponding method flow or the corresponding function in the data Processing method embodiment. Wherein the processor 601 is configured to call the program instructions to perform: receiving application attribute information aiming at a target distributed application, which is sent by a client, wherein the application attribute information comprises application function attributes of the target distributed application and identification information of a block chain to be deployed; determining at least one target component from at least one distributed application component included in a component library according to the application function attribute; and obtaining the target distributed application based on the application attribute information and the at least one target component, and deploying the target distributed application in the block chain to be deployed corresponding to the identification information.
In an embodiment, the application function attribute includes at least one application function, and before the at least one target component is determined from at least one distributed application component included in the component library according to the application function attribute, the processor 601 is further configured to generate an intelligent contract corresponding to each application function of the at least one application function, respectively; and respectively creating distributed application components corresponding to the application functions based on the intelligent contracts corresponding to the application functions, and storing the distributed application components in the component library.
In an embodiment, the distributed application components have function attribute information, and the processor 601 is further configured to obtain function attribute information corresponding to each distributed application component in at least one distributed application component included in the component library; comparing the function attribute information corresponding to each distributed application component with the application function attribute; and if the function attribute information is matched with the application function attribute, determining the distributed application component corresponding to the function attribute information as a target component.
In an embodiment, before obtaining the target distributed application based on the application attribute information and the at least one target component, the processor 601 is further configured to detect whether the function attribute information of the target component is consistent with the application function attribute; if not, determining an application function to be added according to the application function attribute and the function attribute information of the target component; creating a distributed application component according to the application function to be added, and storing the distributed application component in the component library; and determining the distributed application component as a target component, and triggering and executing the step of obtaining the target distributed application based on the application attribute information and the at least one target component.
In one embodiment, the application function attribute includes at least one application function, and the processor 601 is further configured to compare each application function of the at least one application function with the function attribute information of the target component; and if not, determining the application function which does not match with the target component function attribute information as the application function to be added.
In an embodiment, the application attribute information further includes a connection order of at least one application function, and the processor 601 is further configured to sort the target components corresponding to the application functions according to the connection order; and integrating the at least one target component according to the sequencing result to obtain the target distributed application.
In an embodiment, the application attribute information further includes data attribute information of the at least one application function, and the processor 601 is further configured to add the data attribute information of the application function to a target component corresponding to each application function according to the data attribute information of each application function; and integrating the at least one target component based on the data attribute information of the target component to obtain the target distributed application.
It should be understood that in the embodiment of the present Application, the Processor 601 may be a Central Processing Unit (CPU), and the Processor 601 may also be other general purpose processors, Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete a hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory 604 may include both read-only memory and random access memory, and provides instructions and data to the processor 601. A portion of the memory 604 may also include non-volatile random access memory. For example, the memory 604 may also store device type information. The input device 603 may include a touch pad, a fingerprint sensor (for collecting fingerprint information of a user), a microphone, a physical keyboard, etc., and the output device 603 may include a display (LCD, etc.), a speaker, etc.
In specific implementation, the processor 601, the memory 604, the input device 602, and the output device 603 described in this embodiment of the present application may perform the implementation described in the method embodiment shown in fig. 2 or fig. 3 provided in this embodiment of the present application, and may also perform the implementation method of the distributed application development apparatus described in fig. 5 in this embodiment of the present application, which is not described herein again.
In another embodiment of the present application, a computer-readable storage medium is provided, where a computer program is stored, where the computer program includes program instructions, and the program instructions, when executed by a processor, implement the implementation described in the method implementation in fig. 2 or fig. 3 provided in this application, where the computer-readable storage medium may be an internal storage unit of a node device, such as a hard disk or a memory of the node device, in any one of the foregoing embodiments. The computer readable storage medium may also be an external storage device of the node device, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like provided on the node device. Further, the computer-readable storage medium may also include both an internal storage unit and an external storage device of the node device. The computer-readable storage medium is used for storing the computer program and other programs and data required by the node device. The computer readable storage medium may also be used to temporarily store data that has been output or is to be output.
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 computer readable storage medium, and when executed, can include the processes of the embodiments of the methods described above.
The readable storage medium may be a magnetic disk, an optical disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), or the like.
While the present disclosure has been described with reference to particular embodiments, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present disclosure.

Claims (10)

1. A distributed application development method, applied to a blockchain network, the method comprising:
receiving application attribute information aiming at a target distributed application, which is sent by a client, wherein the application attribute information comprises application function attributes of the target distributed application and identification information of a block chain to be deployed;
determining at least one target component from at least one distributed application component included in a component library according to the application function attribute;
and obtaining the target distributed application based on the application attribute information and the at least one target component, and deploying the target distributed application in the block chain to be deployed corresponding to the identification information.
2. The method of claim 1, wherein the application function attribute comprises at least one application function, and before determining at least one target component from at least one distributed application component included in the component library according to the application function attribute, the method further comprises:
respectively generating an intelligent contract corresponding to each application function in the at least one application function;
and respectively creating distributed application components corresponding to the application functions based on the intelligent contracts corresponding to the application functions, and storing the distributed application components in the component library.
3. The method of claim 1, wherein the distributed application component has functional attribute information, and wherein determining at least one target component from at least one distributed application component included in the component library according to the application functional attribute comprises:
acquiring function attribute information corresponding to each distributed application component in at least one distributed application component included in the component library;
comparing the function attribute information corresponding to each distributed application component with the application function attribute;
and if the function attribute information is matched with the application function attribute, determining the distributed application component corresponding to the function attribute information as a target component.
4. The method of claim 3, wherein before the obtaining the target distributed application based on the application attribute information and the at least one target component, the method further comprises:
detecting whether the function attribute information of the target component is consistent with the application function attribute;
if not, determining an application function to be added according to the application function attribute and the function attribute information of the target component;
creating a distributed application component according to the application function to be added, and storing the distributed application component in the component library;
and determining the distributed application component as a target component, and triggering and executing the step of obtaining the target distributed application based on the application attribute information and the at least one target component.
5. The method according to claim 4, wherein the application function attribute comprises at least one application function, and the determining the application function to be added according to the application function attribute and the function attribute information of the target component comprises:
comparing each of the at least one application function with the function attribute information of the target component;
and if not, determining the application function which does not match with the target component function attribute information as the application function to be added.
6. The method according to any one of claims 1-5, wherein the application attribute information further includes a connection order of at least one application function, and the obtaining the target distributed application based on the application attribute information and the at least one target component includes:
sequencing the target assemblies corresponding to the application functions according to the connection sequence;
and integrating the at least one target component according to the sequencing result to obtain the target distributed application.
7. The method according to any one of claims 1-5, wherein the application attribute information further includes data attribute information of the at least one application function, and the obtaining the target distributed application based on the application attribute information and the at least one target component comprises:
according to the data attribute information of each application function, adding the data attribute information of the application function to the target component corresponding to each application function;
and integrating the at least one target component based on the data attribute information of the target component to obtain the target distributed application.
8. A distributed application development apparatus, comprising:
the system comprises a data acquisition module, a block chain deployment module and a block chain deployment module, wherein the data acquisition module is used for receiving application attribute information aiming at a target distributed application, which is sent by a client, and the application attribute information comprises application function attributes of the target distributed application and identification information of the block chain to be deployed;
the data processing module is used for determining at least one target component from at least one distributed application component included in the component library according to the application function attribute;
the data processing module is further configured to obtain the target distributed application based on the application attribute information and the at least one target component, and deploy the target distributed application in the block chain to be deployed corresponding to the identification information.
9. A node device comprising a processor and a memory, the processor and the memory being interconnected, wherein the memory is configured to store a computer program comprising program instructions, and wherein the processor is configured to invoke the program instructions to perform the method of any of claims 1-7.
10. A computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program, which is executed by a processor to implement the method of any one of claims 1-7.
CN202010133779.XA 2020-02-28 2020-02-28 Distributed application development method and device, node equipment and readable storage medium Active CN111338608B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010133779.XA CN111338608B (en) 2020-02-28 2020-02-28 Distributed application development method and device, node equipment and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010133779.XA CN111338608B (en) 2020-02-28 2020-02-28 Distributed application development method and device, node equipment and readable storage medium

Publications (2)

Publication Number Publication Date
CN111338608A true CN111338608A (en) 2020-06-26
CN111338608B CN111338608B (en) 2022-03-04

Family

ID=71184013

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010133779.XA Active CN111338608B (en) 2020-02-28 2020-02-28 Distributed application development method and device, node equipment and readable storage medium

Country Status (1)

Country Link
CN (1) CN111338608B (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112068877A (en) * 2020-08-14 2020-12-11 深圳市卓智荟教育科技有限公司 Configuration method and device for education digital application and readable storage medium
CN112434818A (en) * 2020-11-19 2021-03-02 脸萌有限公司 Model construction method, device, medium and electronic equipment
CN112565340A (en) * 2020-11-12 2021-03-26 北京京东振世信息技术有限公司 Service scheduling method, device, computer system and medium for distributed application
CN113259464A (en) * 2021-06-02 2021-08-13 支付宝(杭州)信息技术有限公司 Method for building block chain sub-network and block chain system
CN114860349A (en) * 2022-07-06 2022-08-05 深圳华锐分布式技术股份有限公司 Data loading method, device, equipment and medium

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108153520A (en) * 2018-03-20 2018-06-12 上海屹通信息科技发展有限公司 Software development methodology and device
CN109683869A (en) * 2018-12-29 2019-04-26 北京阿斯特时代科技有限公司 The development approach and device of DAPP
WO2019082100A1 (en) * 2017-10-24 2019-05-02 Tata Consultancy Services Limited System and method for generating a blockchain application for different blockchain technologies
CN109710214A (en) * 2018-08-17 2019-05-03 深圳壹账通智能科技有限公司 Construction method, device, terminal device and the storage medium of electronic signature software
CN109871208A (en) * 2019-01-04 2019-06-11 平安科技(深圳)有限公司 Software systems generation method, device, computer readable storage medium and server
KR20190103027A (en) * 2018-02-27 2019-09-04 이재형 Method for assurung value stability of cryptocurrrency
CN110427179A (en) * 2019-06-26 2019-11-08 西安电子科技大学 MSVL programming automatic generation method and system towards intelligent contract language
CN110580147A (en) * 2018-06-07 2019-12-17 阿里巴巴集团控股有限公司 application program development method and device
CN110609679A (en) * 2019-09-17 2019-12-24 腾讯科技(深圳)有限公司 Data processing method, data processing device, computer readable storage medium and computer equipment

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019082100A1 (en) * 2017-10-24 2019-05-02 Tata Consultancy Services Limited System and method for generating a blockchain application for different blockchain technologies
KR20190103027A (en) * 2018-02-27 2019-09-04 이재형 Method for assurung value stability of cryptocurrrency
CN108153520A (en) * 2018-03-20 2018-06-12 上海屹通信息科技发展有限公司 Software development methodology and device
CN110580147A (en) * 2018-06-07 2019-12-17 阿里巴巴集团控股有限公司 application program development method and device
CN109710214A (en) * 2018-08-17 2019-05-03 深圳壹账通智能科技有限公司 Construction method, device, terminal device and the storage medium of electronic signature software
CN109683869A (en) * 2018-12-29 2019-04-26 北京阿斯特时代科技有限公司 The development approach and device of DAPP
CN109871208A (en) * 2019-01-04 2019-06-11 平安科技(深圳)有限公司 Software systems generation method, device, computer readable storage medium and server
CN110427179A (en) * 2019-06-26 2019-11-08 西安电子科技大学 MSVL programming automatic generation method and system towards intelligent contract language
CN110609679A (en) * 2019-09-17 2019-12-24 腾讯科技(深圳)有限公司 Data processing method, data processing device, computer readable storage medium and computer equipment

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112068877A (en) * 2020-08-14 2020-12-11 深圳市卓智荟教育科技有限公司 Configuration method and device for education digital application and readable storage medium
CN112565340A (en) * 2020-11-12 2021-03-26 北京京东振世信息技术有限公司 Service scheduling method, device, computer system and medium for distributed application
CN112565340B (en) * 2020-11-12 2023-04-07 北京京东振世信息技术有限公司 Service scheduling method, device, computer system and medium for distributed application
CN112434818A (en) * 2020-11-19 2021-03-02 脸萌有限公司 Model construction method, device, medium and electronic equipment
CN112434818B (en) * 2020-11-19 2023-09-26 脸萌有限公司 Model construction method, device, medium and electronic equipment
CN113259464A (en) * 2021-06-02 2021-08-13 支付宝(杭州)信息技术有限公司 Method for building block chain sub-network and block chain system
CN113259464B (en) * 2021-06-02 2021-11-02 支付宝(杭州)信息技术有限公司 Method for building block chain sub-network and block chain system
CN114860349A (en) * 2022-07-06 2022-08-05 深圳华锐分布式技术股份有限公司 Data loading method, device, equipment and medium

Also Published As

Publication number Publication date
CN111338608B (en) 2022-03-04

Similar Documents

Publication Publication Date Title
CN111338608B (en) Distributed application development method and device, node equipment and readable storage medium
CN107566124B (en) Hash operation-based consensus establishing method, block chain system and storage medium
JP6975332B2 (en) Blockchain-based smart contract calling methods and devices, and electronic devices
CN107579848B (en) Method for dynamically changing consensus node in practical Byzantine fault-tolerant consensus mechanism
EP3178011B1 (en) Method and system for facilitating terminal identifiers
CN112287034B (en) Data synchronization method, equipment and computer readable storage medium
CN110060155B (en) Intelligent contract execution method and device of block chain and electronic equipment
CN110989994A (en) Block chain-based code version management method and device, terminal and storage medium
CN110400217B (en) Rule change processing method and device for intelligent contract
EP3779756A1 (en) Information processing device, information processing method, and program
CN112883117B (en) Data synchronization method, equipment and computer readable storage medium
CN111985007A (en) Contract signing and executing method and device based on block chain
CN112714158A (en) Transaction processing method, relay network, cross-link gateway, system, medium, and device
CN111431908B (en) Access processing method and device, management server and readable storage medium
CN113763211A (en) Infringement detection method and device based on block chain and electronic equipment
JP2022539283A (en) A method and system for validating blockchain data stored in a storage format different from the blockchain
CN111339551B (en) Data verification method and related device and equipment
CN115131022A (en) Block chain-based digital asset transaction method, device, equipment and medium
CN112200680B (en) Block link point management method, device, computer and readable storage medium
CN109088914A (en) Generation method, the block chain ecosystem and the computer readable storage medium of block
CN111722994A (en) Task request response method and device
CN115391801A (en) Method and device for updating encryption module in block chain system and related products
US20170263068A1 (en) Method for generating counting events and electronic device
CN113806335A (en) Data migration method and device applied to block chain
CN114677138A (en) Data processing method, data processing equipment and computer readable storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant