发表于: 2017-12-20 18:31:14
1 540
一、 今天完成的事情
基本可以提交吧?
1.Maven打包项目
2.云服务器这块任务一时候就弄好了,此处略过
3.选择Tomcat作为服务器,下面附上shell
1.Shell是什么
Shell是一个命令行解释器,为用户提供一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动、挂起、停止或编写一些程序。
shell还是一种功能强大的编程语言,是解释型脚本语言,可以直接调用Linux系统命令。
2.编写一个shell脚本
注意:首行一定是 #!/bin/bash
3.执行脚本
编写好的脚本没有权限,不能直接运行。
通过bash调用执行脚本:bash hello.sh
赋予执行权限,直接运行:① chmod 755 hello.sh ② ./hello.sh
4.重点来了,管理tomcat的shell
①重新启动tomcat的sh
shell代码:
运行结果:
②关闭tomcat的sh
shell代码
运行结果:
4. 使用IP+端口号能正常访问Task2中的REST请求。配置Nginx,使用子域访问。(这里我直接通过子域访问我的task2的rest请求)
①在此之前,先来了解一下nginx
Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
特点:
反向代理 负载均衡 动静分离
反向代理:
正向代理:需要用户自行设置代理服务器的ip和端口号。
正向代理是一个位于客户端和目标服务器之间的代理服务器(中间服务器)。为了从原始服务器取得内容,客户端向代理服务器发送一个请求,并且指定目标服务器,之后代理向目标服务器转交并且将获得的内容返回给客户端。正向代理的情况下客户端必须要进行一些特别的设置才能使用。
反向代理:代理服务器的服务器。
反向代理正好相反。对于客户端来说,反向代理就好像目标服务器。并且客户端不需要进行任何设置。客户端向反向代理发送请求,接着反向代理判断请求走向何处,并将请求转交给客户端,使得这些内容就好似他自己一样,一次客户端并不会感知到反向代理后面的服务,也因此不需要客户端做任何设置,只需要把反向代理服务器当成真正的服务器就好了。
负载均衡:
原理是数据流量分摊到多个服务器上执行,减轻每台服务器的压力。
多台服务器共同完成工作任务,从而提高了数据的吞吐量。
动静分离:
将静态的资源放到反向服务器上,节省访问时间。
②重点来了,配置虚拟主机
就是一台服务器启动多个网站。如何区分不同的网站:1.端口不同2.域名不同(即配置子域)。
端口区分:
域名区分:(这部分搞了好久,最后靠师兄给的资料才搞定)
域名区分虚拟主机,即所谓的子域访问,子域访问的目的是用域名代替IP地址访问主机。
1.修改本地hosts文件
修改原因:通过域名访问网站时会先查看hosts文件中是否已存在域名映射到IP,如果已存在,可直接访问到其映射的IP,不需要通过DNS解析。利用这点,可以在本地设置我们的子域。
位置:windows系统盘:\Windows\System32\drivers\etc\hosts
2.继续修改 conf/nginx.conf 文件
新增server:
在nginx中的复制html改名为html-sudomain
稍微修改html-subdomain下index.html文件内容以作区分后刷新nginx再进行访问。
3.进行访问测试:
至此,成功通过子域访问
拓展:配置子域访问到tomcat中task2的demo
继续修改conf/nginx.conf文件
将maven项目的war包放到webapps下后重启tomcat
5. 查看Nginx日志,编写脚本统计访问次数,统计响应延时。
6.查看Resin日志,统计访问DB时间,Controller处理时间(这一项我没选择Resin,依旧使用tomcat)
7. 使用Top命令查看WEB服务占用内存和CPU。
二、 明天计划的事情
三、 遇到的问题
Linux真是深坑,光shell就花了我很长时间。
四、 收获
评论