Lisk 0.9.0 — Memory and Logging Improvements, Redis Implementation and Block Processing Refactoring

in bitcoin •  7 years ago 

Today we have released Lisk Core 0.9.0 to the Lisk main network. From a high level, this release brings many performance improvements, including the initial implementation of API caching, revisions to the code base and testing methodology changes.
Memory Optimizations and Logging Improvements

In this release, management of logs has been enhanced, with console logging disabled by default. Following those enhancements, the memory footprint has been improved by reducing the amount of duplicate libraries loaded per module. Finally, timestamp related activities are now more flexible, directly improving nearly all aspects of Blockchain interaction and performance.
Caching and future proofing

A commonly requested feature for Lisk core was to implement Redis to provide API caching functionality. API caching is the process of storing responses that are frequently requested so they do not have to be regenerated. This should result in commonly run queries returning much quicker. The usage of this cache will be extended in the future as to enable multiple nodes to share the same state and provide load balancing to multiple NodeJS processes.
Jenkins, Continuous Integration

Testing is valuable to ensure the code always performs the same actions the same way. In the past, Travis-CI was used to perform our Continuous Integration testing. However, the rate of development has greatly exceeded the capacity and performance Travis-CI offers, and therefore the CI testing was moved to a more robust Jenkins-CI deployment. With Jenkins-CI, the full test suite for Lisk Core runs in just over 20 minutes, allowing Lisk Core to be tested faster than ever.
Refactoring Efforts

Expanding on the efforts of previous releases, Lisk Core 0.9.0 offers some significant refactoring work. The primary focus of this refactoring work was on Blocks Processing, which went from a single monolithic module, to being broken into five submodules (api, chain, process, utils, verify). These submodules improve both code quality and readability as each submodule is responsible for appropriate actions.
Summary

Lisk 0.9.0 provides the bridge for 1.0.0 by improving code quality and readability, management of logs, implementing Redis and providing a solid foundation for continuous integration. The Lisk Foundation and the Lightcurve team are proud to bring this release out for the public to use. Special thanks to Ruben Callewaert (5an1ty) for his contributions with Lisk Docker. A complete list of changes can be seen in the release log on GitHub. If you have any questions, feel free to reach out to us.

If you enjoyed reading this, please log in and click “Recommend” below.
This will help to share the story with others.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Hi! I am a robot. I just upvoted you! I found similar content that readers might be interested in:
https://blog.lisk.io/lisk-0-9-0-memory-and-logging-improvements-redis-implementation-and-block-processing-refactoring-c0ae2e0d9e04

Congratulations @malikbashirahmed! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!