Questions about the capabilities of Nakama open-source

Hello, we are a start-up developing a session-based multiplayer video game powered by Unreal.
We are using a client-server, server-authoritative model, leveraging Unreal networking capabilities.

Up until now we have relied upon another BaaS, that is cheaper, but newer and full of issues. We have experienced many slowdowns in development because of that and are now thinking to try Nakama, that is known to be much more solid and reliable.
However at this stage of development we can’t afford the managed solution and we are looking at the open-source self-hosted one, even if the long-term plan is to switch to the managed one as soon as possible.

I want to ask you some questions:

  1. Is the open-source solution suitable for production, or just for development?

  2. I’ve read that the open-source solution doesn’t have the automatic scale-up feature and implementing it from scratch would be complicated and would take a long time.
    So we are wondering how long we could rely on the open-source solution before being forced to switch to the managed one. In order to check whether costs would be sustainable we need to know
    how many CCU a single Nakama node/instance can handle (given a powerful enough VM).

  3. We build and deploy our dedicated server on Ubuntu, does the Nakama Unreal SDK fully support Linux?

  4. Does self-hosted Nakama require CockroachDB Enterprise? Or is CockroachDB Core sufficient? I’m asking to understand whether I have to buy a license of the DB.

Thank you very much for any help,
Best wishes

I’m also integrating to unreal… we can add this nakama server to any cloud service. we are now stuck at joining match for the kubermnets to integrate, because we want to scale up automatically and also route players to definite matches. And I’m in progress in database

Hi @pluto_dweller welcome to the community :wave:

  1. Is the open-source solution suitable for production, or just for development?

The open-source version is not feature limited or restricted in any way. You could run a single server production deployment and all the parts involved with that yourself if you want. I’m surprised that the Managed solution (Heroic Cloud) is something you consider expensive.

I would suggest you factor in the total cost of ownership (TCO) to handle load balancers, logs, metrics, monitoring, backups, high-availability, SSL termination, and on-going maintenance which is required of any running production application. When you consider the time involved with the above it can be expensive. Time is money after all :slight_smile:

  1. how many CCU a single Nakama node/instance can handle (given a powerful enough VM).

Have a look at the benchmarks for this kind of information. You’ll be able to handle thousands of CCU on a single instance. The specific performance is difficult to provide information as it depends on how you write any server logic you add for your game and which features of the server you use.

  1. We build and deploy our dedicated server on Ubuntu, does the Nakama Unreal SDK fully support Linux?

Yes, you should have no problem with builds of your Unreal headless instances to run on Ubuntu with Linux as the base image.

  1. Does self-hosted Nakama require CockroachDB Enterprise? Or is CockroachDB Core sufficient? I’m asking to understand whether I have to buy a license of the DB.

Nakama supports CockroachDB (CRDB), AWS Aurora for PG, and vanilla PostgreSQL (managed or self hosted) as options to run as the core database of the game server. We recommend CRDB as the preferred option but have production games and customers who use any of the options above. You do not need a license for CRDB Enterprise to use Nakama server and never will need it.

Hope this helps.

@Looper Sorry I don’t really follow where you’re stuck at. If you plan to use Kubernetes to manage your fleet of headless instances for your game that’s fine but what does that have to do with Nakama server?

We don’t require you to run Nakama with Kubernetes and we require very minimal hardware to run the game server stack (just Nakama and a PostgreSQL compatible database server). The technology is completely cloud agnostic so you can run it wherever you like.

Thank you for the thorough answers

I would suggest you factor in the total cost of ownership (TCO) to handle load balancers, logs, metrics, monitoring, backups, high-availability, SSL termination, and on-going maintenance which is required of any running production application. When you consider the time involved with the above it can be expensive. Time is money after all

You are definitely right :grin: I’m not saying that your managed service is expensive at any phase. I think it’s expensive just in the starting phase, when you have few money and no revenue. Then of course as soon as the business becomes more sustainable the expenditure for you service will be a good deal

@pluto_dweller No problem I understand. Don’t forget that at the starting phase of a project you can run Nakama locally for development which makes the development process very convenient and rapid. Let me know if you have any more questions. :+1:

1 Like