find /var/log/ -type f -name .*.log -mtime 30|xargs rm -f
9. ansible有哪些模块?功能是什么?
模块 | 功能 |
---|---|
copy | 拷贝文件到被控端 |
cron | 定时任务 |
fetch | 拷贝被控端文件到本地 |
file | 文件模块 |
group | 用户组模块 |
user | 用户模块 |
hostname | 主机名模块 |
script | 脚本模块 |
service | 服务启动模块 |
command | 远程执行命令模块 |
shell | 远程执行命令模块,command高级用法 |
yum | 安装包组模块 |
setup | 查看主机系统信息 |
10. nginx为什么比apache快?
- nginx采用epoll模型
- apache采用select模型
11. 四层负载和七层负载区别是什么?
- 四层基于IP+端口进行转发
- 七层就是基于URL等应用层信息的负载均衡
12. lvs有哪些工作模式?哪个性能高?
- dr:直接路由模式,请求由 LVS 接受,由真实提供服务的服务器直接返回给用户,返回的时候不经过 LVS。(性能最高)
- tun:隧道模式,客户端将访问vip报文发送给LVS服务器。LVS服务器将请求报文重新封装,发送给后端真实服务器。后端真实服务器将请求报文解封,在确认自身有vip之后进行请求处理。后端真实服务器在处理完数据请求后,直接响应客户端。
- nat:网络报的进出都要经过 LVS 的处理。LVS 需要作为 RS 的网关。当包到达 LVS 时,LVS 做目标地址转换(DNAT),将目标 IP 改为 RS 的 IP。RS 接收到包以后,仿佛是客户端直接发给它的一样。RS 处理完,返回响应时,源 IP 是 RS IP,目标 IP 是客户端的 IP。这时 RS 的包通过网关(LVS)中转,LVS 会做源地址转换(SNAT),将包的源地址改为 VIP,这样,这个包对客户端看起来就仿佛是 LVS 直接返回给它的。客户端无法感知到后端 RS 的存在。
- fullnat模式:fullnat模式和nat模式相似,但是与nat不同的是nat模式只做了两次地址转换,fullnat模式却做了四次。
13. lvs nginx haproxy keeplived区别,优缺点?
参考链接:https://blog.51cto.com/816885/2529993?source=dra
14. 如下url地址,各个部分的含义
https://www.baidu.com/s?word=123&ie=utf-8
- https: 使用https加密协议访问
- www.baidu.com/s: 请求地址
- ?word&ie=utf-8: get请求的参数,多个参数&连接
15. tomcat各个目录含义,如何修改端口,如何修改内存数?
- bin 存放tomcat命令
- conf 存放tomcat配置文件
- lib 存放tomcat运行需要加载的jar包
- log 存在Tomcat运行产生的日志
- temp 运行过程中产生的临时文件
- webapps 站点目录
- work 存放tomcat运行时的编译后的文件
- conf/server.xml 修改端口号
- bin/catalina.sh 修改jvm内存
16. nginx反向代理时,如何使后端获取真正的访问来源ip?
在location配置段添加以下内容:
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
17. nginx负载均衡算法有哪些?
- rr 轮训
- weight 加权轮训
- ip_hash 静态调度算法
- fair 动态调度算法
- url_hash url哈希
- leat_conn 最小连接数
18. 如何进行压力测试?
例如:模拟10个用户,对百度首页发起总共100次请求。
测试命令: ab -n 100 -c 10 https://www.baidu.com/index.htm
19. curl命令如何发送https请求?如何查看response头信息?如何发送get和post表单信息?
- 发送https请求:curl --tlsv1 ‘https://www.bitstamp.net/api/v2/transactions/btcusd/’
- response头信息 :curl -I
- get:curl 请求地址?key1=value1&key2=value2&key3=value3
- post: curl -d “key1=value1&key2=value2&key3=value3”
二、mysql
1. 索引的为什么使查询加快?有啥缺点?
默认的方式是根据搜索条件进行全表扫描,遇到匹配条件的就加入搜索结果集合。如果我们对某一字段增加索引,查询时就会先去索引列表中一次定位到特定值的行数,大大减少遍历匹配的行数,所以能明显增加查询的速度
缺点:
- 创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加
- 索引需要占物理空间,除了数据表占用数据空间之外,每一个索引还要占用一定的物理空间,如果需要建立聚簇索引,那么需要占用的空间会更大
- 以表中的数据进行增、删、改的时候,索引也要动态的维护,这就降低了整数的维护速度
2. sql语句左外连接 右外连接 内连接 全连接区别
3. mysql数据备份方式,如何恢复?你们的备份策略是什么?
- 物理完全备份
备份所有数据库文件:/var/lib/mysql/*
备份所有binlog文件: /var/lib/mysql/