Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V3.0 branch #8

Open
wants to merge 14 commits into
base: master
Choose a base branch
from
Open

V3.0 branch #8

wants to merge 14 commits into from

Conversation

thrawn01
Copy link
Collaborator

@thrawn01 thrawn01 commented Apr 16, 2024

Purpose

Prep Gubernator for a v3.0 release. This is a long running branch where we will merge V3 related feature once they are ready.

Removing GRPC Support

GRPC turned out to be more trouble than it was worth. Although GRPC has consistent semantics like flow control, request cancellation, and error handling, and decent performance. However, it is not without
its issues.

  • GRPC is more complex than is necessary for high-performance, distributed environments. Like Request Queuing, and built-in concurrency limits.
  • GRPC implementations can be slower than expected (Slower than standard HTTP in some cases)
  • Using GRPC can result in more code than using standard HTTP
  • GRPC is not suitable for the public facing web based APIs
  • GRPC has proxy and service mesh issues

Merged

TODO

See V3 Milestone -->

@thrawn01 thrawn01 self-assigned this Apr 16, 2024
@thrawn01 thrawn01 force-pushed the v3.0 branch 4 times, most recently from 0bc64c9 to 5009e4b Compare April 24, 2024 00:41
@thrawn01 thrawn01 mentioned this pull request May 1, 2024
@thrawn01 thrawn01 force-pushed the v3.0 branch 3 times, most recently from e02ccf7 to bacf10c Compare May 20, 2024 21:32
@thrawn01 thrawn01 marked this pull request as ready for review June 11, 2024 20:54
@thrawn01 thrawn01 requested a review from Baliedge as a code owner June 11, 2024 20:54
@thrawn01 thrawn01 changed the title WIP: Remove GRPC and create a new V3.0 branch Remove GRPC and create a new V3.0 branch Jun 11, 2024
@thrawn01 thrawn01 changed the title Remove GRPC and create a new V3.0 branch V3.0 branch Jun 12, 2024
@thrawn01 thrawn01 added this to the V3 milestone Jun 12, 2024
@pete-woods
Copy link

I made this PR #34 to try and help with my issue #32.

V3 seems like the right time for a breaking API change like this.

Attempt to switch logging to Go standard slog SDK logging
@pete-woods
Copy link

pete-woods commented Nov 18, 2024

I dunno if you've considered it, but this cache lib https://github.com/dgraph-io/ristretto is really fast (I see you've been looking into other cache implementations for v3)

(I see now otter implementor claiming theirs is much better than even ristretto, though :) )

@thrawn01
Copy link
Collaborator Author

@pete-woods Yes, I've tried to use ristretto for gubernator. It appears to be "eventual" in that if you write a value to the cache, then immediately retrieve it, it's possible the value you just wrote doesn't exist, as the write path hasn't synchronized with the underlying store. This occurs even though the API confirmed the write of the value as successful.

For this reason I used otter.

@pete-woods
Copy link

I created another issue #40 that might be worth considering for v3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants