一起来学习用nodejs和CocosCreator开发网络游戏吧(五)--- 云服务器的搭建

为了学习websocket和CocosCreator结合开发游戏,把服务器运行在本地始终感觉缺少点什么,而且不能真正多端测试通信,于是趁着腾讯云年底促销(真的不是在打广告),99块钱一年,买了一台CentOS主机,把学习项目的服务器部署在这台云服务器上,也体验一把真正意义上的网络游戏。

因为没有任何经验,在这里记录一下整个安装部署流程,以免日后使用又忘记了。

购买好自己的服务器后,登录是需要密码的。因为不知道创建好的服务器登录密码,首先需要更改一下登录密码。

在实例=>更多=>密码/密钥=>重置密码中,可以设置自己的密码。按照操作步骤即可。

接下来服务器主机会重启,等重启成功后即可执行登录操作。

当看到终端命令输入的时候,就表示登录成功了。

至此就可以对服务器进行操作了。

一、搭建NodeJS环境。

因为学习用的项目服务器是nodejs版本,所以需要在新创建的服务器上搭建一下nodejs环境。

1.安装wget

yum install -y wget

等待下载安装完毕即可

2.下载nodejs压缩包

访问 https://nodejs.org/en/download/ 官网,复制好Linux版本的链接https://nodejs.org/dist/v12.13.1/node-v12.13.1-linux-x64.tar.xz,在终端中使用wget命令下载。

首先创建一个下载文件目录

[[email protected]_0_9_centos ~]# mkdir download
[[email protected]_0_9_centos ~]#
[[email protected]_0_9_centos ~]# ls
download
[[email protected]_0_9_centos ~]# cd download/
[[email protected]_0_9_centos download]#

然后下载压缩包到目录中

[[email protected]_0_9_centos download]# wget https://nodejs.org/dist/v12.13.1/node-v12.13.1-linux-x64.tar.xz

下载完毕后执行解压缩的命令

[[email protected]_0_9_centos download]# xz -d node-v12.13.1-linux-x64.tar.xz
[[email protected]_0_9_centos download]# tar -xf node-v12.13.1-linux-x64.tar

接着创建一下node、npm命令关联,这样就可以直接在终端中使用这两个命令了。

[[email protected]_0_9_centos download]# ln -s ~/download/node-v12.13.1-linux-x64/bin/node /usr/bin/node
[[email protected]_0_9_centos download]# node -v
v12.13.1

根据解压后的压缩包路径,使用ln关联后,就可以通过node -v命令查看到安装的nodejs版本。

同理关联一下npm目录。

[[email protected]_0_9_centos download]# ln -s ~/download/node-v12.13.1-linux-x64/bin/npm /usr/bin/npm
[[email protected]_0_9_centos download]# npm -v
6.12.1

3.安装git

[[email protected]_0_9_centos download]# yum install -y git

安装完毕后可以通过命令查看git版本

[[email protected]_0_9_centos download]# git --version
git version 1.8.3.1

4.安装pm2

在本地调试的时候,使用node命令启动的服务端,当把终端关闭后服务就停止了,在云服务器也是会有这样的情况,关闭终端操作页面就会停止服务。 所以我们需要持久化运行服务器,这样就需要使用pm2工具。

[[email protected]_0_9_centos download]# npm install pm2 -g

安装完毕后,同样需要关联命令。

[[email protected]_0_9_centos download]#  ln -s ~/download/node-v12.13.1-linux-x64/bin//pm2  /usr/bin/pm2
[[email protected]_0_9_centos download]# pm2

可以看到一大堆pm2的打印信息证明关联完成。

二、启动服务端代码。

上述准备工作完成后,服务器就拥有了运行服务端代码的能力。

因为项目本身在git上有,所以直接通过命令行从git上拉取下来即可。(其实不知道怎么从本地上传到腾讯云,也懒得去研究)

返回到根目录,创建一个新的目录用来存放项目代码,然后从git上clone一份服务器代码。

[[email protected]_0_9_centos download]# cd ..
[[email protected]_0_9_centos ~]# ls
download
[[email protected]_0_9_centos ~]# mkdir GameServerTest
[[email protected]_0_9_centos ~]# cd GameServerTest/
[[email protected]_0_9_centos GameServerTest]# mkdir Server
[[email protected]_0_9_centos GameServerTest]# cd Server/
[[email protected]_0_9_centos Server]# [[email protected]_0_9_centos Server]# git clone https://github.com/MythosMa/NodeJS_GameServerTest.git

进入到项目根目录后,通过pm2命令启服务。

[[email protected]_0_9_centos NodeJS_GameServerTest]# pm2 start index.js

然后会得到一个pm2服务列表,看到自己的服务启动即可。

最后打开CocosCreator客户端,将聊天界面中socket地址从本地地址改为云服务器的外网地址,运行游戏并在聊天界面测试,如果返回数据正常,证明服务器启动成功。

上述步骤记录了从云服务器启动完成,第一次进入并配置环境开始,到部署运行服务,也算是一个网游学习的新的起步,继续加油吧。

原文地址:https://www.cnblogs.com/mythosma/p/12048398.html

时间: 2024-10-30 06:38:15

一起来学习用nodejs和CocosCreator开发网络游戏吧(五)--- 云服务器的搭建的相关文章

一起来学习用nodejs和CocosCreator开发网络游戏吧(六)--- 可操纵的游戏角色(下)

其实用了很长时间思考了一下一些数据运算方面放在哪里合适.当然,数值方面的运算肯定要放在服务端是正确的,本地的数值计算就会有被修改器修改.数据传输中抓包改包等作弊.外挂的问题存在,不过对于我这个小项目目前开发阶段来说,只涉及到对游戏角色移动操控这块. 在我自己所接触过的网游中,确实存在两种方式来处理角色移动数据,一个是发出操作指令,然后服务器根据操作指令计算出移动坐标再返给客户端处理,一个是本地计算移动距离,再将数据交付给服务器.这两种情况在游戏掉线的时候就能有很明显的感觉,前者掉线后,角色就无法

一起来学习用nodejs和CocosCreator开发网络游戏吧(四)--- 可操纵的游戏角色(上)

游戏不可或缺的一个内容就是操作,尤其是对于RPG类型的游戏来讲.所以,对于websocket来说,能够实时体现数据交互的一个重要方法就是可操纵游戏角色在场景中的状态变化,能够让所有连接到服务器的客户端都能够看得到. 这次就先做一个能操作角色的场景吧. 首先,给聊天窗口加一个按钮,可以用来隐藏聊天界面(调整了一下大小,所以加个按钮控制界面以免影响操作). 加一个UILayout,用来承载所有UI界面上的内容,然后把ChatLayout放到UILayout上,接下来把ChatLayout移出到界面外

开发直播APP选择云服务器的优点

开发者在开发直播app是都会用到服务器来辅助完成直播的相关业务.目前市场上,服务器的种类大致可以分为两种,一种是物理服务器,另一种是云服务器.但是目前适合直播业务的非云服务器不选. 首先,小编先来跟大家阐述下,什么是云服务器? 是一种简单高效.安全可靠.处理能力可弹性伸缩的计算服务.其管理方式比物理服务器更简单高效. 那么,开发直播app选择云服务器的好处是什么? 1.节省空间 传统的物理服务器需要专门的机房进行管理操作,但是云服务器不需要单独的机房进行管理,只需要找到相关的服务商进行购买即可.

嵌入式开发-迅为4412开发板学习笔记-TFTP服务器的搭建

部分内容主要是关于TFTP服务器的搭建,特别单独拿出来讲解一下. 一.TFTP服务器的搭建与测试: TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现.嵌入式linux的tftp开发环境包括两个方面:一是linux服务器端的tftp-server(服务器)支持,二是嵌入式目标系统的tftp-client(客户端)支持.因为u-boot本身内置支持tftp-client,所以嵌入式目标系统端就不用配置了.下面就详细介绍一下linux服务器端tftp-server的配置 实际上我们同

记一次微信开发安卓访问阿里云服务器慢处理方案

问题复现 1.服务器为阿里云 2.设备为安卓(小米6商店下载) 3.下载QQ浏览器也是慢,但是自带浏览器却很快 造成的可能原因 安卓微信默认使用QQ浏览器X5内核,要先走腾讯服务器再转阿里,中间有很长的响应(也不排除X讯故意为之) 解决方案 用微信打开 debugtbs.qq.com 可以强制调用系统浏览器内核,拉到最下方切换到系统浏览器即可解决. 原文地址:https://www.cnblogs.com/LandWind/p/8278797.html

spring mvc开发入门实例demo源代码下载,很适合新手入门学习用。

原文:spring mvc开发入门实例demo源代码下载,很适合新手入门学习用. 源代码下载:http://www.zuidaima.com/share/1550463469046784.htm Eclipse + Maven + Spring MVC - Simple Example 源代码框架截图:

学习用CMake来编写Qt程序

最近开始学习CMake,因为项目需求需要用到Qt,自带的qmake会出现许多问题(比如文件修改之后有时候qmake不会侦测到不会重新编译,需要手动去编译等),于是开始尝试使用CMake来编写Qt程序,顺便学习一下怎么用CMake来使用find_package,也算给自己一次学习的机会. 切入正题,CMake对于一些有名的库都有自带文件夹中Modules里.cmake文件查询的支持,比如你需要编写Qt程序,你就可以去cmake_dir/Moudles/查找 FindQt4.cmake这个文件,里面

学习用5W1H来管理自己的项目/工作

学习用5W1H来管理自己的项目/工作 ? 最近开始需要系统化的思维模型,这只是一个开始,一下用脑图的形式来简介5W1H的具体内容: 先写xmind思维树的文本导出,后面附上图片.^ _ ^ 5W1H ????WHAT? ????????首先定义是什么? ????????5W1H分析法是一种分析问题的方法,在解决问题时可以得到广泛的应用 ????????内容包括What?.where?.when?.who?.why?.how? ????WHERE? ????????用在哪里? ????????管理

从零开始学ios开发(十五):Navigation Controllers and Table Views(中)

这篇内容我们继续上一篇的例子接着做下去,为其再添加3个table view的例子,有了之前的基础,学习下面的例子会变得很简单,很多东西都是举一反三,稍稍有些不同的内容,好了,闲话少说,开始这次的学习. 如果没有上一篇的代码,可以从这里下载Nav_1 1)第三个subtableview:Controls on Table Rows这个例子,我们将为每个table view的每一行添加一个按钮,这个按钮将放在accessory icon的位置(之前我们使用过accessoryType,其实这也是一个