Skip to content

Releases: rabbitmq/rabbitmq-stream-go-client

v1.5.0-beta.1

14 Jan 14:32
v1.5.0-beta.1
d52e281
Compare
Choose a tag to compare
v1.5.0-beta.1 Pre-release
Pre-release

Version 1.5

What's Changed

Please read before updating.

This version focuses on stability during the reconnection and introduces the dynamic send.
There are no breaking changes, but deprecations:

  • BatchPublishingDelay int is not used anymore.
  • QueueSize is not used anymore

Dynamic send

Dynamic send improves the latency when the traffic is low, for example, with 50 msg per second, there is ~3ms latency:

go run perftest.go --rate 50 --async-send
Published     42.9 msg/s | Confirmed     42.9 msg/s |  Consumed     42.9 msg/s |  Rate Fx: 50 | Body sz: 8 | latency: 3 ms
Published     43.8 msg/s | Confirmed     43.8 msg/s |  Consumed     43.8 msg/s |  Rate Fx: 50 | Body sz: 8 | latency: 3 ms
Published     44.4 msg/s | Confirmed     44.4 msg/s |  Consumed     44.4 msg/s |  Rate Fx: 50 | Body sz: 8 | latency: 3 ms
Published     45.0 msg/s | Confirmed     45.0 msg/s |  Consumed     45.0 msg/s |  Rate Fx: 50 | Body sz: 8 | latency: 2 ms

With the 1.4.x is~ 90ms (the aggregation timeout)

go run perftest.go --rate 50 --async-send
Published     44.4 msg/s | Confirmed     44.4 msg/s |  Consumed     44.4 msg/s |  Rate Fx: 50 | Body sz: 8 | latency: 88 ms
Published     45.0 msg/s | Confirmed     45.0 msg/s |  Consumed     45.0 msg/s |  Rate Fx: 50 | Body sz: 8 | latency: 89 ms
Published     45.5 msg/s | Confirmed     45.5 msg/s |  Consumed     45.5 msg/s |  Rate Fx: 50 | Body sz: 8 | latency: 90 ms

Enhancements

Bug Fixes

Thanks a lot to @hiimjako for helping with this version

Full Changelog: v1.4.11...v1.5.0-beta.1

v1.4.11

02 Dec 08:49
v1.4.11
ab4d470
Compare
Choose a tag to compare

What's Changed

Please read before updating.

This version focuses on performances for BatchSend and the Consumer side.
We changed the default TCP Parameters see below. The old parameters can be restored with: SetReadBuffer(65536) and SetNoDelay(false)

Enhancements

  • Improve batch send performances #366
  • Add the latency info on perftest #363
  • Restored the pertTest docker build image. Here: pivotalrabbitmq/go-stream-perf-test
  • Change the default TCP parameter to 8192 for TCP Read and Write and Disable Nagle's algorithm

Bug Fix

  • Adapt the heartbeat checker to the configuration #361

Full Changelog: v1.4.10...v1.4.11

v1.4.10

27 Sep 09:06
v1.4.10
9318b94
Compare
Choose a tag to compare

What's Changed

Enhancements

Full Changelog: v1.4.9...v1.4.10

v1.4.9

26 Aug 08:21
v1.4.9
ad04b60
Compare
Choose a tag to compare

What's Changed

Bug Fixes

New Contributors

Full Changelog: v1.4.8...v1.4.9

v1.4.8

07 Aug 14:35
v1.4.8
af9077d
Compare
Choose a tag to compare

What's Changed

Bug Fixes

  • Check version when serverProperties is not empty and < 3.11.0 by @Gsantomaggio in #345

Full Changelog: v1.4.7...v1.4.8

v1.4.7

29 Jul 08:47
v1.4.7
e4f6b06
Compare
Choose a tag to compare

What's Changed

Enhancements

Bug Fixes

Documentation

New Contributors

Full Changelog: v1.4.6...v1.4.7

v1.4.6

26 Jun 14:36
1e03806
Compare
Choose a tag to compare

Milestone

Enhancements

Deprecation

  • Deprecate LastConsumed method by @Gsantomaggio in #324
    The method does not indicate the last message consumed of the stream but the last stored offset.
    The method was added to help the user but created confusion. env.QueryOffset(consumerName, streamName) should be used,
    like:
offset, err := env.QueryOffset(consumerName, streamName) 

/// you may need to do offset+1 to restart from the next message
consumer, err := env.NewConsumer(streamName, handleMessages, stream.
	NewConsumerOptions().
	SetManualCommit().
	SetOffset(stream.OffsetSpecification{}.Offset(offset)).SetConsumerName(consName),
)

Full Changelog: v1.4.5...v1.4.6

v.1.4.5

13 Jun 07:05
20110d8
Compare
Choose a tag to compare

Milestone

Enhancements

Bug Fixes

Full Changelog: v1.4.4...v1.4.5

v1.4.4

04 Jun 07:36
202c881
Compare
Choose a tag to compare

Milestone

Bug Fixes

Full Changelog: v1.4.3...v1.4.4

v1.4.3

24 May 07:25
77deb9d
Compare
Choose a tag to compare

Milestone

Enhancements

Deprecation

environment.StreamStats.LastOffset() is now deprecated.
The method name may be misleading. It does not indicate the last offset of the stream. It indicates the last uncommitted chunk id. This information is not necessary. The user should use CommittedChunkId().

Full Changelog: v1.4.2...v1.4.3