Introducing Lisk Service
After completing the development process, we are happy to announce that a new product is joining the Lisk ecosystem - Lisk Service. Lisk Service is an essential part of the Lisk product line-up, as it offers the possibility to access and browse blockchain data, by providing accessible and powerful new API calls.
With much greater flexibility you can access information about regular accounts or delegates. Furthermore, it is possible to inspect blocks and transactions with the full spectrum of metadata and retrieve useful network statistics in real-time.
Lisk Service acts as a service layer, meaning it is a proxy between blockchain data and user interfaces. Whilst the Lisk SDK is focused on providing a developer with important blockchain functionalities, such as a public key infrastructure or the consensus algorithm, Lisk Service comes into play when blockchain data has to be provided fast and efficient to user interfaces.
Lisk Service is fully written in JavaScript and runs on the Node.js V8 virtual machine. It's based on an extensible microservices architecture and combined with a high-performance database, which makes providing data in an uncomplicated manner effortless. Each microservice is focused on providing one particular functionality and data is always served in JSON format and exposed by a public RESTful API.
Easily Accessible Blockchain Data
Lisk Service can be used with any blockchain application built with the Lisk SDK and following the Lisk protocol. The key principle is to provide services and features that are complementary to the blockchain application.
Internally, we use it to provide our user interfaces blockchain data, specifically all blockchain data persisting within Lisk Core to Lisk Desktop and Lisk Mobile. Lisk Service makes it possible to access real-time blockchain data in a similar approach to the regular Lisk Core API. However, to keep the Lisk SDK flexible and lean, we minimized it's API capabilities which is mirrored on Lisk Core. That's where Lisk Service comes into play which provides developers with much more powerful capabilities.
Lisk Service API vs Lisk Core API
The major benefit of using Lisk Service is to gain easier access to blockchain data, while simultaneously have more powerful options.
With the Lisk Service API you can retrieve the full scope of information, such as blocks and transaction details, account data and activity, delegate voting statistics or network peers combined with geolocation data. Providing a bigger set of API calls than the Lisk Core API. For blockchain application developers it's a more simple approach to expand the blockchain data they need to feed to their user interfaces.
Comparison of Lisk Core and Lisk Service
Feature | Lisk SDK/Core API | Lisk Service API |
---|---|---|
Main purpose | Control of a single node | Holistic view on the whole network |
Account metadata retrieval | Limited, based on related blockchain data | With all metadata, combined with additional non-blockchain data sources |
Searching | On account, block, or delegate basis | Search amongst all of these entities is completed in one request: blocks, accounts, transactions, delegates. |
Network node statistics | None | Real-time |
Network transaction stats | None | Daily- and monthly-basis |
Timestamp resolution | Lisk epoch time based | UNIX timestamp-based |
Listing transactions | Currently possible, in the future version limited to blocks | Fully supported interminably |
Network nodes | Data from the peer-to-peer layer | Peer-to-peer data with geolocation |
Questions and Answers
Where Is Lisk Service Used?
Lisk Desktop is currently in the process to fully adopt Lisk Service. Only the most essential blockchain data is requested directly from Lisk Core, as with future versions of Lisk Core, Lisk Service will be the only feasible way to access blockchain data and feed them to user interfaces.
Can I Deploy My Own Instance?
Yes, you can! Check out the official documentation to discover how easy the installation is. With Docker, it only takes a few minutes to make it operational. It is not necessary to install a separate instance of Lisk Core, saving you a lot of disk space and memory.
Can I Make Any Adjustments?
Yes, it’s open source! The project is well-structured and well-organized, which makes it a perfect base for your custom features and new API endpoints.
Moreover, the project itself is based on microservices and you can always create your own one from our template. This in turn makes your product highly customizable. If you create a custom transaction with the Lisk SDK, you may want to add support for it in your own Lisk Service instance.
Does It Support Custom Blockchains Built with the Lisk SDK?
All basic features are always supported. Anything that is not a part of the vanilla Lisk SDK, such as custom transactions, needs to be added as a new microservice to your Lisk Service instance.
Conclusion
In summary, Lisk Service is a new product for developers that can make Lisk and blockchain application user interfaces much more proficient and feature-rich. Giving developers the option to design their blockchain applications with the user in mind.
Learn more about Lisk Service on the official documentation page. For further questions and comments about Lisk Service, we will host an AMA on Lisk.chat with Michał Tuleja (Lead Backend Developer), on Monday, September the 28th at 4 pm CEST.
Lisk is on a mission to enable you to create decentralized, efficient, and transparent blockchain applications. Join us: