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-node
to sub-commandnode
added. - CLI: Option
--unavailability-cause
to sub-commandversion
added. - CLI: Sub-command
node-rc peers
added. - CLI: Sub-command
sdon
added. EventTypeDrasylNode
added.DrasylNode
will now check local time is correct on start as this is mandatory for drasyl protocol to work.InboundExceptionEvent
now contains exception in string presentation.DrasylConfig
: Optiondrasyl.remote.tcp-fallback.connect-port
added.- Boolean system property
org.drasyl.pub-key.interning
added 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-interval
from sub-commandwormhole receive
removed (the new reliability layer determines this value automatically). - CLI: Options
--window-size
and--window-timeout
from sub-commandwormhole send
removed (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.arq
removed (the new reliability layer determines this value automatically).DrasylConfig
: Optionsdrasyl.remote.tcp-fallback.timeout
,drasyl.remote.tcp-fallback.address
removed.- 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
tunnel
sub-command. - Receiving multiple
UNITE
messages will now trigger newHELLO
messages only if new endpoints have been reported.
Photo by Anton Filatov on Unsplash
Related Posts
- drasyl 0.10.0 released with performance improvements, fixes, and globally distributed super peers
- drasyl 0.9.0 released with C and Python Bindings and support for Publish/Subscribe Messaging, Remote Message Invocation, and more!
- drasyl 0.8.0 released with improved Hole Punching, Remote Controlling for CLI, and increased TUN Device performance
- drasyl 0.7.0 released with TUN Device Support and Faster UDP Hole Punching
- drasyl 0.6.0 released with Support for Netty Handlers, Backpressure Mechanism, and Tunnel Utility