在2022年的5月最后一天,我领到了一款阿里云ECS服务器,在领到了之后,秉持着白嫖了就尽量不要浪费的原则,第一次开始学习使用服务器。

写这篇文章特此将这几天的学习经历记录一下。

在第一天,我在服务器上安装了宝塔Linux管理面板,然后靠着宝塔的方便性,便捷的安装了一些必备的应用软件(Nginx,Tomcat,Redis,Mysql)来帮助我更好的使用服务器,在第一天,我也经历了很多新手第一次使用服务器时遇到的一些问题,比如安全组和防火墙到底什么关系?为什么宝塔界面起初开放端口的那里打不开?等等。。。在安装好了之后,我尝试性的使用了软件商店中的WORDPRESS个人博客一键部署,认识并熟悉了部署中的最关键的几步。

第二天,我打算部署前不久在本地写的一个小项目,一个视频网站,里面用到的一些中间件需要我自己安装一下,首先我安装了Kafka,然后安装了ElasticSearch,但是在安装之后,我认识到,单单不算自己未来还要部署的项目,内存就已经占用了近三分之二,并且我当时项目是两个jar包,一个是socket服务转发的一个jar包一个是负责后端的常规接口的jar包,这样肯定是运行不起来的,我就开始对配置文件里的下手,将两者最小占用减小到128M,占用内存减少了一些。

当我把这两个挨个启动时,果不其然,仍然发生了爆内存的情况,此时的阿里云服务器负载达到了100%并且宝塔面板卡住不动了, 无奈只能重启服务器,再重启服务器之后,我尝试去再次开启kafka,发现没有办法开启kafka自带的zookeeper,使用status命令查看zookeeper的状态,提示文件找不到,此时我尝试了很多方法,比如重装kafka,但是都是一直提示各种文件找不到。然后我就想到,kafka的新版不需要启动zookeeper,并且因为内置注册中心,使整个kafka比之前占用的内存小了许多,在网上好像用新版启动方式的还比较少,当时也花了一些时间去找怎么启动新的kafka。

当一切环境都准备好了之后,就开始将项目尝试部署到阿里云上,因为是前后端分离,所以先将前端的Vue程序打包为静态资源,然后将其放到Nginx下的Html文件夹中,因为对于Nginx的配置文件还不熟悉,因此没有去改动任何的属性,然后在地址栏直接输入公网的ip地址,就可以看到项目的开始页面,当然,因为没有部署后端,这个时候所有的按钮都是不可用的。

然后,开始对后端的SpringBoot项目进行打包,将打成的Jar包放到软件商店下载的 一键部署Java项目中,配置一下基本的配置,注意在输入框这里的参数server-port要在前后分别加一个空格 ,将该参数与后面的参数隔开,不然在运行的时候会报启动参数错误。成功第一次运行了Jar程序之后,打开前端页面,果然不出所料,连接不上后端,不可能啊,我都运行成功了,怎么可能连都连不上,后面检查时发现忘记把端口放开了,连接上之后报的跨域错误,在这里,我将处理跨域的后端代码加上。关于跨域问题的代码,我反正是没有在百度上找到完全拿下来就可以用的代码,都是需要自己的情况进行一下适当的修改的。。。
下面是我当时遇到的一些问题:

1.刷新页面直接404,这里百度之后在Nginx配置文件里面加了点必需的东西。

2.SpringSecurity代码没有写好,对于一些提交表单的post请求如果没有一定的权限,会进行重定向,这里重定向会导致出现跨域的错误,救急的话就直接把SpringSecurity里关于该表单提交的权限控制删掉。

3.上传文件到服务器使用了一个TransFerTo的函数,这个函数会在后台报错,说找不到xxx.bat文件,这里百度说是因为写的相对路径,然后该函数会在前面加上默认的Tomcat路径,组成一个新的路径然后存储,但是,我确定我传入的就是一个绝对路径啊!经过重重修改,在本地删除了后端代码里对OPTIONS请求处理的代码,本地不报错了,然后部署到了服务器之后还是报错,无奈将这个函数换掉,换成了copyInputStreamToFile函数。

4.关于内存小,所以不能同时运行socket服务端Jar包和后端项目接口的Jar包,就将有关socket服务的代码都合并到后端项目中,此时前端的socket请求地址要改成后端的地址,如果存在前缀也不要忘记了,当时因为落下前缀一直连接不上。

5.不要将网站保存在服务器端的资源放在tmp目录下,可以放在home下。

6.新版的Kafka如果报找不到主题的错误,就在后端yml里面设置missing-topics-fatal,这个在低版本的SpringBoot里面是没有的哦。

7.如果使用element-ui的上传文件组件,尽量将自带action设置为空,自己写一个提交函数,用来上传文件,不然在服务器部署时会报错。。。。。

其实前后从拿到服务器到部署视频网站成功花了大概5天的时间,很多时候一点简单的错误都导致我几个小时的时间被用掉,在找BUG之前其实应该先仔细思考一下这个BUG的前后联系的代码的思路,对代码的整体有一个具体的理解,然后去列出有可能出现BUG的点,对这些点进行着重的检查,这样子会让大脑变得清晰一点,而不是一着急就脑子变得混乱,对只要看到的代码就浑浑噩噩的进行测试。

总的来说,这一段时间对我有了很大的提升,对于服务器部署有了一个大概的认知,感谢阿里云给了我这个学习的机会。

使用阿里云服务器的经历~相关推荐

  1. 阿里云服务器好吗?阿里云服务器ECS有什么优势

    如今的互联网时代,无论是企业.站长.还是游戏公司.电商平台选用云服务器时,对于选择一款稳定安全的云服务器是必不可少的,服务器的承载能力和安全,是否可提供弹性服务,提供商是否有强大的团队和运维能力,用户 ...

  2. 记一次阿里云服务器被黑的经历,以及解决方案

    阿里云服务器因为开docker端口被黑 如上图,被一个叫"sshd -D"的脚本命令CPU拉到100%,其伪装成sshd,其实是一个恶意程序. 通过top -H -p [pid] ...

  3. 阿里云服务器ECS按ctrl+alt+delete无法登录

    今天在使用阿里云服务器远程桌面的时候发现怎么也进入不了,远程桌面无法连接,于是想到了在阿里云服务器管理控制台可以使用连接管理终端进行远程桌面连接,下面详细介绍阿里云服务器操作经验. 操作步骤如下 登录 ...

  4. 阿里云服务器被挖矿怎么解决

    2019独角兽企业重金招聘Python工程师标准>>> 春节刚开始,我们SINE安全,发布了2018年服务器被挖矿的整体安全分析报告.该安全报告主要是以我们去年的整一年的安全数据为基 ...

  5. mysql上传到阿里云服务器地址_从0部署Web项目到阿里云服务器上

    前言 本篇文章的主要内容正如标题所言,这个过程说简单也还是有很多细节需要注意的,说难其实也挺简单的,还是希望我们大家都能勤动手去体会其中的内容,经历本身就可以使人进步.话不多说,让我们开始吧. 正文 ...

  6. 阿里云服务器的购买以及使用

    1,首先我是在阿里云上通过学生的一个活动免费领取了六个月的服务器使用权,这是我接触服务器的开始 2,首先我们必须有一个服务器,而如果我们要搭建别人可以访问的网站就必须购买一个域名,阿里云里面就有域名购 ...

  7. 阿里云服务器被攻击10g怎么进黑洞了?

    阿里云没有防御吗? 根据一位客户自述,根据真实事件记录 客户不愿意透露真实姓名,暂且就按照客户说的叫他小K吧, 小K是一名90后,正好站在在80后的尾巴和90后的头,从小喜欢互联网的他,学习成绩一直不 ...

  8. 一次云服务器购买经历,给个人建站的小白做些参考

    阿里云产品优惠购,代金券限时领,单笔订单现金实付满100元减30元,另有50元.150元.300元面额,网站缓慢?服务器不稳定?从此再也不用担心这些问题;如果早就想买阿里云服务器,现在是最佳时机,点击 ...

  9. 基于阿里云服务器ECS和宝塔面板,适合初学者的蚂蚁笔记(Leanote)超详细配置教程(但是真的不好用)

    文章目录 前言 环境准备 蚂蚁笔记(Leanote)介绍 一.设置安全组.配置规则 二.安装 Leanote 二进制版 三.安装MongoDB 四.导入Leanote初始数据 五.配置 Leanote ...

最新文章

  1. [改善Java代码]避开基本类型数组转换列表陷阱
  2. 【心灵鸡汤】高情商者的15个表现
  3. matlab clabel函数用法,CLabel函数说明
  4. XForum 里用 Filter 编程实现安全访问控制
  5. widows下nignx的使用
  6. 工具--常见eclipse配置导入web工程(tomcat容器)步骤
  7. WPF RichTextBox的Document属性的序列化与反序列化
  8. 远程显示协议对比:RemoteFX vs. HDX vs. PCoIP
  9. bbsmax mysql_mysql 常用,使用经验
  10. 计算机专业的大专大学规划,大学生计算机专业职业规划个人简历
  11. fdfs文件服务环境搭建详细教程
  12. 解决SQLServer2008安装失败最直白的解决方式
  13. android 5.0 n,EMUI 5.0遭泄漏 基于Android N制作!华为P9用户有福啦
  14. python函数——Bunch配置加载
  15. python制作彩色字符画
  16. 科技园区及科研实验室智能消防安全管控系统
  17. 电脑能登qq但是无法访问网页
  18. IDEA 报错 Cannot connect to the Maven process. If the problem persists, check the jdk.
  19. QQ自动强制加好友代码
  20. 数据挖掘I 电力窃漏电用户自动识别

热门文章

  1. R语言数值取消科学计数法表示
  2. Python基础教程(第三版)读书笔记(5)
  3. Jenkins使用经验谈4(创建Job)
  4. 职业访谈计算机学院老师,理想照亮现实 访谈引领未来数学计算机学院举行首届职业生涯人物访谈大赛...
  5. 深入RecyclerView(一)
  6. 无人驾驶系统是个复杂的计算机系统,无人驾驶汽车安全行驶的三大系统
  7. 【生产排故】oracle11g升19c之ORA-00904 WM_CONCAT invalid identifie排故
  8. Maximum Likelihood(ML) 和 Maximum a posterior(MAP)的直观理解
  9. NVIDIA GTC主题演讲内容学习<3>
  10. DY-SV17F语音播放模块应用篇一 【IO独立模式】