-
Notifications
You must be signed in to change notification settings - Fork 780
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
Return Counter and List data when Allocating a GameServer #3661
Comments
We have a similar use case in implementing the High Density GameServer pattern. |
In our case, we prefer that the results of ListAction and CounterAction are also returned. For example, the following form.
|
Can you explain why? I'm curious as to the use case. Also, since you get the results, and you know what you send, you could do the diff yourself quite easily. |
I thought that if we got the result of appended values, simply add them into our storage with the allocated GameServer data without calculating the diff of request and response.
You are right, we can calculate the diff easily so it's not essential. |
Are you already working on this issue? |
I'm focused on some other stuff at the moment, so if you want to have a go, please feel free! If you have questions, feel free to drop them here, or come by #development in Slack! |
Resolves #3661 Co-authored-by: Robert Bailey <robertbailey@google.com> Co-authored-by: Mark Mandel <markmandel@google.com>
Is your feature request related to a problem? Please describe.
Two use cases where returning Counts and/or Lists back with Allocation data.
Rooms per session.
Assuming you have a multi-tenant
GameServer
with different ports for each "room", and you increment a GameServer counter, such asrooms
with an Allocation request, returning the currentroom
count means you can know atomically which room you are currently on, and therefore while port to use by convention.Player Backfill
If you want to ask an Agones cluster "do you have room for one or more player to be backfilled on a cluster" you can use
ListSelector
-- but without looking at the GameServer itself, you don't know what the actual count is on the GameServer.This way you could periodically ask a cluster "do you have room for 1 to 10 players within your cluster?" and get back a GameServer, and without having to do another hop, know how many players you need to backfill in that operation.
(if anyone has any extra use cases, please feel free to add below -- actively collecting use cases)
Describe the solution you'd like
Attach it to https://agones.dev/site/docs/reference/agones_crd_api_reference/#allocation.agones.dev/v1.GameServerAllocationStatus
Not quite sure where 🤔 could just be
counters
andlists
like we have inGameServer.Status
- that would work for me.Describe alternatives you've considered
Leave things as they are, but that requires more work by the end user.
Additional context
N/A - all because of offline conversations.
The text was updated successfully, but these errors were encountered: