DEV Community

Daniel Yunus
Daniel Yunus

Posted on

Game Backend : Chapter 2 - Setup Nginx Web Server

Yolo fellow game developers. Welcome to the lates chapter of our game backend series.

In this blog, we'll go through the process of setting up a web server. By the end of this chapter, you'll have a running NGINX server on the cloud, ready to handle your game's backend needs. So let's gear up and get started.

What is NGINX?

Nginx is an open source web server that can act as a reverse proxy, a load balancer or HTTP cache. It is designed to deliver content quickly and efficiently to the users. It doesn't rely on threads to handle requests, it uses event driven architecture which allows it to handle multiple concurrent connections without consuming much memory.

By setting up nginx as a reverse proxy, it acts as an intermediary that takes requests from the user and directs them to the appropriate backend server. This way it speeds up content delivery, load balances the traffic and enhances security that helps game developers to optimize their game backend server performance.

Pre-requisites

An AWS account that can be used to spin up a new AWS EC2 instance.


Let's GOOOO!

Step 1: Launch an EC2 instance

Launch an EC2 instance from the AWS console.

Choose Ubuntu AMI of instance type t2.micro as this is a free tier eligible.

Image description
Select an existing key pair for login or create a new key pair.
Image description
Create a new security group and check all the traffic options for testing.

Image description

Step 2: SSH Connect to instance

Connect to your instance using terminal or SSH client.

ssh -i key.pem ec2_username@ec2_public_ip
Enter fullscreen mode Exit fullscreen mode

Step 3: Install Nginx

Run the following commands to update the packages and then install nginx.

sudo apt update
sudo apt install nginx
Enter fullscreen mode Exit fullscreen mode

Step 4: Configure Nginx

We can configure nginx to server as a reverse proxy by editing the configuration at "/etc/nginx/sites-available/", but we will do that in a future tutorial blog.

sudo systemctl status nginx
sudo system start nginx
Enter fullscreen mode Exit fullscreen mode

Finally you can test if nginx is configured correctly by opening your ec2 instance url or IPv4 address in the browser. You should see the web page as shown below:

Image description

Conclusion

By following this tutorial, you have successfully setup a nginx web server, allowing you to serve web content. Explore nginx further to understand advanced features and capabilities of nginx. In the next tutorial, we will setup a REST api to send and receive data to and from our game.
Stay tuned!!! GG!!

Top comments (0)