
Behind the Scenes with the Dragon Ball Legends GCP Back End - luord
https://cloudplatform.googleblog.com/2018/06/Behind-the-scenes-with-the-Dragon-Ball-Legends-GCP-backend.html
======
AlimJaffer
I'm not surprised they went with GCP. We've built backend services for games
on AWS, Azure, GCP, etc. and their network is the best suited for realtime
games as it stands from our experience. Unfortunately not had any real
experience with Cloud Spanner as we didn't want to tie our technology directly
to GCP.

~~~
Thaxll
How so? The biggest online game are running on AWS and I'm sure they're doing
fine. ( Fortnite, Overwatch ect ... )

~~~
jayd16
That's not big at all. Those are what, 4-12 players at a time? Everything can
run within a single server so all the IO is to the users.

I haven't played this DBZ game but if its more of an MMO with a live view of
all the players in your area you might be dealing with user handoff between
servers, cross server communication etc etc.

~~~
crooked-v
Fortnite is 100 people per game on a single gigantic map, with tracked state
for everything (as it's important for the gameplay that, for example, an
already-looted house is empty when the next player comes along).

~~~
jayd16
You've missed the point entirely. Its still a single server game. Sure the
game is popular, and there are thousands of games at once, they're not
connected.

------
Uberphallus
Dragon Ball Legends is my go to game for the toilet these days, and it's funny
they advertise the Google network, since the PvP experience is very sub par.
Half of the time I can't connect with the opponent, and if you check the DBL
subreddit, I'm not the only one.

------
memonkey
Cool!

I'm actually in the process of creating a presentation on Programming Concept
Analogies for Dragon Ball Z fans (ex. variables and capsules; polymorphism and
super saiyan levels).

~~~
neilsimp1
Please do a Show HN or something similar when you're done with this, I'd love
to see it.

------
Svoka
Pokemon Go used GCP as well, and was a disaster when launched (from service
availability point of view). It was down more than not, hours of outages.

~~~
forgot-my-pw
I think Google Spanner wasn't available yet that time. They chose GCP for the
container support / Kubernetes.

There's an interesting talk about this by Niantic Director of Engineering:
[https://www.youtube.com/watch?v=j6ARungTOL4](https://www.youtube.com/watch?v=j6ARungTOL4)

Timestamp for the part about the launch:
[https://youtu.be/j6ARungTOL4?t=1249](https://youtu.be/j6ARungTOL4?t=1249)

TLDW: Niantic made a prediction on the server load, provisioned 5x of that,
and only planned to Beta release in Australia & NZ, but everyone ended up
sharing the APK worldwide. The first few weeks of traffic ended up being 50x
the initial estimate. Niantic also found some scaling bugs in the game that
were fixed in the first weeks. Pokemon Go reached the number of Twitter daily
user within 2 days.

The next version of Pokemon Go could really benefit from Spanner if they
haven't used it already.

------
ageyfman
great case study!

~~~
thelastidiot
Case study my arse. Just reads like an ad pamphlet.

~~~
eitally
Disclosure: I work on GCP, opinions are my own.

Case studies are a form of advertising -- so what? They're much more effective
in qualifying a technology or service provider in a given area than a web page
with a feature list. If you were looking for an engineering blog, you came to
the wrong place, or had inappropriate expectations.

The macro level point this blog post articulates is that GCP has now been
successfully used, spanning multiple years, using varying architectures, by
enough gaming companies (even just counting Niantic, Nintendo & Bandai-Namco,
not to mention Epic, EA & Ubisoft) for it to be considered a tier 1 provider.

Additionally, if you compare apples to apples, take a look at this recent
Microsoft gaming case study ( [https://customers.microsoft.com/en-
us/story/ubisoft-media-te...](https://customers.microsoft.com/en-
us/story/ubisoft-media-telco-azure) ) and tell me which you think paints the
cloud provider in a more positive & compelling light.

I'll close with this: if you want to use a FOSS stack for your stuff, fine,
have at it. You can even rent servers via GCE and host there... or literally
anywhere else. But there are a few critical differences between GCP and AWS or
Azure. Setting aside the network quality & performance, which is objectively
superior with Google, outside of GCE almost every other GCP product is offered
as a managed service. Beyond that, there are several -- like Spanner -- that
don't exist anywhere else. I fully appreciate a desire to avoid vendor lock-
in, but there are plenty of situations where allying with a vendor that offers
a superior product/service for your specific business need is absolutely the
correct decision.

I'll also note that Google is overall extremely good about open sourcing
things -- like Kubernetes, Apache Beam & Tensorflow -- it creates and offers
as managed services within GCP.

You'll never hear me claim GCP is the best cloud for everything or everyone,
but I take umbrage with potshots like this. All it does is cause irritation
and muddy the waters for people trying to figure out what tech is right for
them.

~~~
ec109685
That’s a fair point, but I don’t think it needed to be so heavy on the google
cloud plugs to get the point across. Every other paragraph seemed to be
checking a content marketing box, trying to slip in some nugget about the
google cloud (e.g. the link to Google SRE’s when defining what a managed
service is). Just sticking to the facts and adding more details on how the
publisher deployed their stack (gce, gke, etc.?), why their app still prefers
p2p connections even when the google cloud network is present, what a typical
turn looks like in their app (is it stateless Scala servers mutating Cloud
Spanner?), etc. More technical details and less plugs would be more effective
in my opinion.

Anyway, impressive work making such a great set of services available.

------
hueving
This is an ad.

~~~
Crash0v3rid3
So what? How do you prefer ads about Cloud technology? Just a list of what
products and features are offered? This at least gives us a real world example
of how someone uses these products.

