github googleforgames/open-match v0.10.0

latest releases: v1.8.1, v1.8.0, v1.8.0-rc.1...
4 years ago

v0.10.0

This is the 0.10.0 release of Open Match.

Check the official website for details on features, installation and usage.

Release Notes

Feature Highlights

  • Reworked the QueryService with an intermediate caching layer such that it could be scaled much better under high profile scenario. #1126 #1135
  • Added QueryTicketIds API to QueryService #1151
  • Added a built-in created_time field for Ticket proto. Added a created_before and created_after field for Pool proto to filter tickets by created_time. #1162
  • Added HA and failover supports via Redis sentinel #1038

Breaking API Changes - Previous releases are not compatible with this release.

  • Updated Open Match go module dependency from 1.13 to 1.14 #1133
  • Modified AssignTickets API to support bulk assignments. AssignTickets now returns repeated AssignmentFailure status if corresponding ticket assignment failed instead of failing the call #1155
  • Removed redis.expiration config and ticket auto-expiring logic from the statestore. Users now need to manually manage ticket deletion. #1146
  • Renamed GetAssignments to WatchAssignments. #1173
  • Changed Create/Get APIs to return resources directly and Delete APIs to return empty. #1173

Breaking Behavior Changes

  • Added some randomization on returned order of tickets to the QueryService #1127
  • Forbid ticket creations with Assignments #1160
  • Changed Backend service to return an error when observing duplicated matchIDs from multiple MMF calls. Changed Evaluator client to return an error if it found any duplicated/unexist matchIDs from the input/output #1167

Future releases towards 1.0.0 may still have breaking changes.

Enhancements

  • Improved Grafana dashboards with more detailed metrics
  • Reduced PING checks when releasing a Redis connection to pool to save health check overheads
  • New team-based shooter game benchmark scenario for Open Match scale test framework
  • Optimized part of the Redis queries for better CPU consumption

Usage Requirements

  • v1.10 <= Kubernetes Version
  • Golang Version = v1.14.x

This software is currently alpha, and subject to change. Not to be used in production systems.

Benchmark Numbers

Numbers are from running Open Match against the benchmarking framework

  • Open Match is able to scale to above 7000 Ticket QPS for the three scenarios that we implemented.
  • Additionally, it supports 3500 Ticket QPS in the modified TeamShooter scenario with 1000 profiles.

Installation

Follow Open Match Installation Guide to set up Open Match in your cluster.

API Definitions

Available both in SwaggerUI and API references.

Don't miss a new open-match release

NewReleases is sending notifications on new releases.