drasyl 0.11.0 released with performance improvements, fixes, and dynamic overlay constructon
Today, we are excited to announce the release of drasyl 0.11.0.
This maintenance release brings performance improvements, fixes and the new CLI sub-command sdon for the creation of dynamic overlays.
Changelog
🚀 Added
- CLI: Option
--rc-start-nodeto sub-commandnodeadded. - CLI: Option
--unavailability-causeto sub-commandversionadded. - CLI: Sub-command
node-rc peersadded. - CLI: Sub-command
sdonadded. EventTypeDrasylNodeadded.DrasylNodewill now check local time is correct on start as this is mandatory for drasyl protocol to work.InboundExceptionEventnow contains exception in string presentation.DrasylConfig: Optiondrasyl.remote.tcp-fallback.connect-portadded.- Boolean system property
org.drasyl.pub-key.interningadded to disable interning of IdentityPublicKeys, as this could have a negative impact on performance..
💅 Changed
- Dependencies have been updated.
- TCP fallback now connects to all super peers.
- Application messages are not longer passed through the
DrasylServerChannel(this was a performance bottleneck). - CLI: Option
--ack-intervalfrom sub-commandwormhole receiveremoved (the new reliability layer determines this value automatically). - CLI: Options
--window-sizeand--window-timeoutfrom sub-commandwormhole sendremoved (the new reliability layer determines this value automatically). DrasylConfig: Optionsdrasyl.remote.message.mtu,drasyl.remote.message.max-content-length,drasyl.remote.message.composed-message-transfer-timeout,drasyl.remote.message.arqremoved (the new reliability layer determines this value automatically).DrasylConfig: Optionsdrasyl.remote.tcp-fallback.timeout,drasyl.remote.tcp-fallback.addressremoved.- Improved performance in inbound and outbound message processing by reducing task scheduling overhead. Instead of creating a separate task for each message, a single task now processes entire batches of reads and writes. Additionally, fewer Java objects are created, and zero-copy techniques are applied more frequently where possible.
🐛 Fixed
- CLI: ensure wormhole sender/receiver handlers gracefully stop when connection is lost.
- CLI: fix
tunnelsub-command. - Receiving multiple
UNITEmessages will now trigger newHELLOmessages only if new endpoints have been reported.
Photo by Anton Filatov on Unsplash






