博客
关于我
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/

你可能感兴趣的文章
python可视化matplotlib_如何使用Python中最强大的可视化工具Matplotlib?
查看>>
python可维护性_使用这7大神器,让你的Python 代码更容易于维护
查看>>
Python只运行一次while循环
查看>>
python变量的详细教程_Python零基础入门教程之语法入门[变量](第二期)
查看>>
Python变量命名方法-ChatGPT4o作答
查看>>
Python变量与运算符
查看>>
Python变量/运算符/函数/模块/string
查看>>
python发送邮件的时候出现 error (535, b‘5.7.3 Authentication unsuccessful‘) 解决方法
查看>>
python系列【仅供参考】:python flask框架 debug功能
查看>>
python发送notes邮件_使用python在Lotus Notes中发送邮件
查看>>
Python双版本下创建一个Scrapy(西瓜皮)项目
查看>>
Python双版本下No module named 'requests'
查看>>
python及pycharm2018软件安装教程
查看>>
python去重txt文本_Python实现的txt文件去重功能示例
查看>>
python去掉列表的逗号,从Python列表项中删除标点符号
查看>>
Python卸载所有包
查看>>
python单线程下实现多个socket并发
查看>>
Python单元测试框架介绍(超详细~)
查看>>
Python单元测试框架
查看>>
python单元测试之unittest
查看>>