JAVA开发之Linux操作常用命令

1 Redis

1.1 Redis安装

  1. 解压redis文件:tar -xvf redis-5.0.4.tar.gz
  2. 移动文件/修改文件:mv redis-5.0.4.tar.gz software/
    mv redis-5.0.4.tar.gz redis
  3. 安装Redis
    命令1: make
    命令2: make install

1.2 修改redis.conf配置文件

  1. 修改IP绑定:bind ***
  2. 关闭保护模式:protected-made no
  3. 开启后台启动:daemonize yes
  4. 投票机制:sentinel monitor mymaster host port 1(投票生效数)
  5. 投票时间:sentinel down-after-milliseconds mymaster 3000

1.3 Redis命令

  1. 启动redis: redis-server redis.conf
  2. 检查redis服务项: ps -ef |grep redis
  3. 进入redis客户端: redis-cli -p 6379
  4. 关闭redis: redis-cli -p 6379 shutdown
    kill -9 pid号
  5. 复制目录:cp -r * *
  6. 删除目录:rm -f *.log
  7. 检查redis节点的状态信息:info replication
  8. 实现主从挂载:slaveof host port
  9. 关闭所有redis服务器:rm -rf sentinel

1.4 Redis持久化策略

  1. RDB模式记录的是内存数据的快照.持久化效率较高. 快照只保留最新的记录.
  2. AOF模式由于记录的是实时的操作过程,所以持久化文件较大.需要定期维护.

1.5 内存优化策略

  1. LRU算法:最近最少使用
  2. LFU算法:即最不经常使用页置换算法
  3. 随机算法
  4. TTL算法:根据剩余的存活时间,将马上要超时的数据提前删除.

1.6 配置内存优化策略

  1. volatile-lru 在设定了超时时间的数据中,采用lru算法
  2. allkeys-lru 在所有的数据中,采用lru算法
  3. volatile-lfu 在设定了超时时间的数据中,采用lfu算法
  4. allkeys-lfu 所有数据采用lfu算法
  5. volatile-random 设置超时时间数据的随机算法
  6. allkeys-random 所有数据的随机
  7. volatile-ttl 将设定了超时时间的数据,提前删除.
  8. noeviction 默认规则 如果设定noeviction 则不删除数据,直接报错返回.

1.7 缓存相关问题

问题出发点:
由于缓存失效,导致大量的用户的请求,直接访问数据库服务器.导致负载过高,从而引发整体宕机的风险!!!

  1. 缓存穿透
    说明: 用户频繁访问数据库中不存在的数据,可能出现缓存穿透的现象.如果该操作是高并发操作,则可能直接威胁数据库服务器.
    解决方案:
    1.采用IP限流的方式 降低用户访问服务器次数. IP动态代理(1分钟变一次)
    2.微服务的处理方式: 利用断路器返回执行的业务数据即可不执行数据库操作 从而保护了数据库.
    3.微服务处理方式: API网关设计. 不允许做非法操作

  2. 缓存击穿
    说明: 由于redis中某个热点数据由于超时/删除等操作造成数据失效.同时用户高并发访问该数据,则可能导致数据库宕机.该操作称之为 缓存击穿.
    解决方案: 可以采用多级缓存的设计. 同时数据的超时时间采用随机数的方式.

  3. 缓存雪崩
    说明: 由于redis内存数据大量失效.导致用户的访问命中率太低.大量的用户直接访问数据库,可能导致数据库服务器宕机. 这种现象称之为缓存雪崩.
    解决:
    1.采用多级缓存.
    2.设定不同的超时时间
    3.禁止执行 flushAll等敏感操作.

2 数据库备份策略

无法连接重启网卡命令:

service NetworkManager stop 
chkconfig  NetworkManager  off    永久关闭 Manager网卡
service  network restart		  重启network网卡

3 tomcat集群部署

启动服务器

 java -jar 8081.war & java -jar 8082.war & java -jar 8083.war &

关闭服务器
命令说明:
1."|" 管道 管道之前查询的结果,当做管道之后的参数(条件)进行操作.
2. kill 杀死进程
kill PID号 普通关闭进程 (弱关闭)
kill -15 PID号 必须关闭,但是可以执行后续操作.
kill -9 PID号 强制关闭, 不给任何时间执行后续任务.
后台运行开启:

 	nohup  java  -jar  8081.war  =>  8081.log & 
 	nohup  java  -jar  8082.war  =>  8082.log &

3.1 查看命令

cat 输出文件所有的内容
more 输出文档所有的内容,分页输出,空格浏览下一屏,q退出
less 用法和more相同,只是通过PgUp、PgOn键来控制
tail 用于显示文件后几号,使用频繁
tail -10 nginx.conf 查看nginx.conf的最后10行
tail –f nginx.conf 动态查看日志,方便查看日志新增的信息
ctrl+c 结束查看

3.2 脚本启动

  1. 编辑start.sh的脚本文件: vim start.sh
  2. 指定脚本文件头、内容.
    在这里插入图片描述
  3. 执行脚本: sh start.sh

4 Linux命令

  1. 解压:tar -zxvf *
  2. 移动安装包:mv jdk software/
  3. 修改文件名称:mv 1 2
  4. 编辑文件: vim /etc/profile

4.1 cd命令集

ifconfig/ip addr 检查IP地址
pwd 检查当前的位置
tab键 自动补齐(注意唯一性)
cd命令是linux中最基本的命令语句,必须熟练掌握
cd / 返回根目录
cd ~ 用户主目录
cd . 当前目录
cd …返回到上一级目录
cd /usr/ 进入到usr目录
cd – 返回上一个目录
cd 直接回家

4.2 ls目录和文件

ls –l 详细格式,文件权限,时间
ll 和ls –l作用相同
ls *.txt 查看所有的txt类型文档

4.3 目录操作

mkdir 创建目录
mkdir a 创建 a目录
mkdir -p a/b 创建 a目录,并在a目录里创建b目录
mkdir -m 777 c 创建一个权限为777的C目录
rmdir 删除目录(如果目录里有文件,则不能用此命令)

4.4 Vi/vim创建/查看/编辑文件

命令行:Esc切换到命令行模式。
编辑模式:
按i,在光标前开始编辑
按a,在光标后开始编辑
按o,在当前行的下一行开始编辑
按u, 撤销之前的操作
底行模式:按 shift+:冒号。
:q! 不保存退出
:wq 保存退出
:/world 从当前光标处,向上查找world关键字
:?world 从当前光标处,向后查找world关键字

4.5 删除文件

rm 删除文件
rm n.txt 提示y删除n放弃
rm –f n.txt 不提示
rm –rf dirname 不提示递归删除目录下所以内容
rm –rf * 删除所有文件
rm –rf /* 删除所有子目录所有和文件

4.6 复制和移动文件

cp复制文件
cp nginx.conf n.txt
cp –R tomcat1 tomcat2 #复制整个目录
mv 修改文件名,移动文件
mv n.txt m.txt 修改文件名称

4.7 浏览文件

cat 输出文件所有的内容
more 输出文档所有的内容,分页输出,空格浏览下一屏,q退出
less 用法和more相同,只是通过PgUp、PgOn键来控制
tail 用于显示文件后几号,使用频繁
tail -10 nginx.conf 查看nginx.conf的最后10行
tail –f nginx.conf 动态查看日志,方便查看日志新增的信息
ctrl+c 结束查看

4.8 打包命令

tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成name.tar.gz的文件。
-c 创建一个新的tar文件
-v 显示运行过程的信息
-f 指定文件名
-z 调用gzip压缩命令进行压缩
-t 查看压缩文件的内容
-x 解开tar文件
tar –cvf n.tar ./* 压缩当前目录下的所有文件和目录,文件名为n.tar
tar –xvf n.tar 解压压缩包中的文件到当前目录(如果长时间未解压成功 Ctrl+C推出)
tar –cvzf m.tar.gz ./* 压缩文件
tar -zxvf m.tar.gz 解压m.tar文件到当前目录

4.9 grep命令

grep root /etc/passwd 在文件中查找关键字root
grep root /etc/passwd –-color 高亮显示
grep root /etc/passwd –A5 –B5 高亮显示,A后5行,B前5行
grep -n root /etc/passwd 查找并显示行数
grep -v root /etc/passwd 取反,查出不含root的数据

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值