博客
关于我
linux系统层面调优和常见的面试题
阅读量:408 次
发布时间:2019-03-06

本文共 1524 字,大约阅读时间需要 5 分钟。

Linux系统调优指南

在Spark集群、Hadoop集群等大数据环境中进行调优时,Linux系统层面的优化同样不可或缺。以下是三种常见的系统调优方法。

1. 文件句柄配置

Linux系统在两个层面对文件句柄进行限制:系统层面和进程层面。

  • 系统层面:通过修改/proc/sys/fs/file-max来配置系统能够打开的最大文件数。
  • 进程层面:单个用户或进程能够打开的文件数受限制,可以通过ulimit -a查看当前限制值。

在生产环境中,默认值通常不足以满足需求。可以通过ulimit -n临时修改文件句柄的最大数目。若需要永久生效,需在/etc/security/limits.conf中追加配置,如soft nofile 10000hard nofile 10000

2. 单个用户最大进程数

max user processes限制了单个用户能够启动的进程数。通过ulimit -u可以临时更改此值。若需要永久生效,需在/etc/security/limits.conf中追加配置,如soft nproc 10000hard nproc 10000

3. swap分区配置

swap分区(交换分区)用于将部分数据临时存储在磁盘,以释放内存空间。设置swap分区时,可以优先使用物理内存,避免频繁磁盘IO操作。建议通过echo vm.swappiness=0 >> /etc/sysctl.conf禁用swap分区,以提高性能。

常见面试题解答

1. 查看PID 100进程监听的TCP端口号

可以使用以下命令查询:

netstat -npta | grep 100

2. 查找/home目录下大小为10K的文件

使用以下命令:

find /home -size 10K

3. 在当前目录中查找Main.java文件中“keywords”出现的位置,并将结果输出到main.txt文件中

命令如下:

find . -name Main.java | xargs grep -n "keywords" >> main.txt

4. 压缩名为testDir的文件夹为testDir.tar.gz

使用以下命令:

tar -zcvf testDir.tar.gz testDir/

5. 解压缩testDir.tar.gz文件并将其解压到/home/user目录中

命令如下:

tar -zxvf testDir.tar.gz -C /home/user

6. 查看磁盘使用情况

使用以下命令:

df -h

7. 查看内存使用情况

命令如下:

free -mt

8. 改变当前路径下testDir及其子目录所有文件和目录的所有者为tom,组为group-t

使用以下命令:

chown -R tom:group-t ./testDir

9. 为testDir目录设置权限为rwxr-xr-x

命令如下:

chmod 755 testDir

10. 查看文件app.log的第3000行至第4000行

命令如下:

cat app.log | tail -n +3000 | head -n 1000

11. 查看文件app.log的第1000行至第3000行

命令如下:

cat app.log | head -n 3000 | tail -n +1000

12. 统计当前文件夹下app目录下.js文件的数量

命令如下:

ll ./app | grep "^-" | grep js | wc -l

^-表示匹配文件,grep js表示匹配.js文件,wc -l表示统计数量。

关注我们

关注微信公众号:大数据学习与分享,获取更多技术干货!

转载地址:http://rnvkz.baihongyu.com/

你可能感兴趣的文章
PandoraFMS 监控软件 任意文件上传漏洞复现
查看>>
PanTools多网盘登录神器
查看>>
Papyrus项目常见问题解决方案
查看>>
Parallel.ForEach使用示例
查看>>
Parallel.ForEach的基础使用
查看>>
parallels desktop for mac安装虚拟机 之parallelsdesktop密钥 以及 parallels desktop安装win10的办公推荐可以提高办公效率...
查看>>
parallelStream导致LinkedList遍历时空指针的问题
查看>>
Parameter ‘password‘ not found. Available parameters are [md5String, param1, username, param2]
查看>>
ParameterizedThreadStart task
查看>>
Paramiko exec_命令的实时输出
查看>>
Spring security之管理session
查看>>
paramiko模块
查看>>
param[:]=param-lr*param.grad/batch_size的理解
查看>>
spring mvc excludePathPatterns失效 如何解决spring拦截器失效 excludePathPatterns忽略失效 拦截器失效 spring免验证拦截器不起作用
查看>>
Spring Cloud 之注册中心 EurekaServerAutoConfiguration源码分析
查看>>
Parrot OS 6.2 重磅发布!推出全新 Docker 容器启动器
查看>>
Parrot OS 6.3 发布!全面提升安全性,新增先进工具,带来更高性能
查看>>
ParseChat应用源码ios版
查看>>
Part 2异常和错误
查看>>
Pascal Script
查看>>