基于阿里云学生服务器搭建简单信令服务器的心得

本文涉及的产品
云服务器 ECS,每月免费额度280元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 使用本次领取到的阿里云学生服务器成功搭建了一个信令服务器,支持本机两端进行一对一视频通话,包括音频和视频流的交互,信令服务器的主要工作是信令交互和控制,包括音、视频流的转发。

大家好,我是目前就读的是非全日制硕士软件工程专业的一名研三学生,即将毕业。由于想了解WebRTC相关知识,故在网上找了一个Demo,在调试和修改之后能够成功在本地的虚拟机进行一对一视频通话,故想开放给周边同学和朋友测试,于是想到了使用云服务器搭建项目,因为之前已经购买过一次学生服务器,有了一定的使用经验,在官网了解到“飞天加速计划·高校学生在家实践”活动,完成前期课程学习和考试后顺利地申请到了一台ECS服务器,在熟悉操作一个星期以后,决定写下这篇文章来总结一下自己这段时间的感悟,希望能帮到一些同学。
在申请到云服务器之后,首先想到的是在本地进行ssh登录,于是按照网上的教程,在本地进行了ssh公钥和密钥的创建,通过scp成功将公钥上传至云服务器,之后重启一次实例,最终顺利在本地进行ssh登录。在登录到root账户之后,马上通过adduser命令新建一个本地用户,切换到该用户进行一系列操作,免得因为root用户权限太大,导致发生一些不可挽回的错误。用户默认shell是bash,觉得不太美观和直接,于是决定使用zsh,在查阅了相关资料之后,安装了zsh和oh-my-zsh,使得交互式命令行变得生动起来,也提高了自己操作的兴趣。
做完前期准备工作之后,决定在自己的虚拟机把项目文件上传至云服务器,在开放端口之后,顺利地使用scp命令进行了传输。因为项目需要Node.JS环境和一些依赖模块,于是在服务器里使用sudo apt install xxx -g安装了node及一些依赖模块,但由于Ubuntu系统默认安装的模块版本都非常低,于是在查阅了一些教程之后安装了npm和n,两者都是包管理工具,后者是专门管理node的,最终使用到了node的16.13.0版本。
因为项目本身需要用到express框架来搭建http server以及使用websocket来进行通信,于是需要安装这两个module,安装成功之后发现怎么也无法require进来,在纠结了很长一段时间之后发现是引用路径问题。在这里有一个小tips,可以在命令行输入node,回车后输入module.paths就可以看到require操作的路径,如果你安装的包不在这些路径里就会报错。在~/.zshrc 导入 NODE_PATH ,指定路径之后就会更新require路径。在安装完所有需要的程序模块之后,需要进行ssl证书的安装,因为音、视频流的传输需要在安全的环境下进行,http是明文传输,故使用https方式来访问。因为没有域名,这样免费申请到的ssl证书也无法使用,于是选择在本地进行模拟CA证书,在查询资料及相关操作之后,在踩了许多坑的情况下最后也是顺利的解决了访问配置问题。
最后一关是nginx的配置,因为自己是第一次操作nginx,前期踩了不少坑,包括server模块的参数熟悉,端口的监听,ssl模块的参数,log信息的存放以及反向代理,在使用ufw操作防火墙之后还是无法进行入网和出网,在查询了相关博客之后操作了安全组并开放指定端口,最后也是顺利的把项目启动起来了,成果见上传的图片。
飞天加速计划是一个对在校生十分友好的项目,它让我们能够把自己写了一些简单程序也能提供给外部人员使用,也让使用者对真实的线上服务器操作有了一些实际操作体验,在之后希望能够在服务器上进行其它相关操作,让自己能够更加熟悉。

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
18天前
|
弹性计算
阿里云ECS使用体验
在申请高校学生免费体验阿里云ECS云服务器后的一些使用体验和感受。
|
5天前
|
弹性计算
阿里云ECS的使用心得
本文主要讲述了我是如何了解到ECS,使用ECS的一些经验,以及自己的感悟心得
|
6天前
|
应用服务中间件 Linux 开发工具
如何在阿里云服务器快速搭建部署Nginx环境
以下是内容的摘要: 本文档主要介绍了在阿里云上购买和配置服务器的步骤,包括注册阿里云账号、实名认证、选择和购买云服务器、配置安全组、使用Xshell和Xftp进行远程连接和文件传输,以及安装和配置Nginx服务器的过程。在完成这些步骤后,你将能够在服务器上部署和运行自己的网站或应用。
|
7天前
|
弹性计算 运维 安全
阿里云ecs使用体验
整了台服务器部署项目上线
|
11天前
|
弹性计算 应用服务中间件 Linux
阿里云ECS服务器上从零开始搭建nginx服务器
阿里云ECS服务器上从零开始搭建nginx服务器
|
11天前
|
域名解析 网络协议 应用服务中间件
阿里云服务器配置免费https服务
阿里云服务器配置免费https服务
|
13天前
|
弹性计算 安全
电子好书发您分享《阿里云第八代企业级ECS实例,为企业提供更安全的云上防护》
阿里云第八代ECS实例,搭载第五代英特尔至强处理器与飞天+CIPU架构,提升企业云服务安全与算力。[阅读详情](https://developer.aliyun.com/ebook/8303/116162?spm=a2c6h.26392459.ebook-detail.5.76bf7e5al1Zn4U) ![image](https://ucc.alicdn.com/pic/developer-ecology/cok6a6su42rzm_f422f7cb775444bbbfc3e61ad86800c2.png)
35 14
|
16天前
|
弹性计算 前端开发 Java
使用阿里云 mqtt serverless 版本超低成本快速实现 webscoket 长链接服务器
使用阿里云 MQTT Serverless 可轻松实现弹性伸缩的 WebSocket 服务,每日成本低至几元。适用于小程序消息推送的 MQTT P2P 模式。前端需注意安全,避免 AK 泄露,采用一机一密方案。后端通过调用 `RegisterDeviceCredential` API 发送消息。示例代码包括 JavaScript 前端连接和 Java 后端发送。
158 0
|
弹性计算 网络协议 Java
阿里云ECS十五日体验记录
本文作于2022/6/4,是为了发表自己的看法和免费续费而撰写.
|
存储 弹性计算 运维
阿里云ECS体验记录
阿里云ECS体验记录
281 0