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

你可能感兴趣的文章
Objective-C实现y = sinx函数的积分运算(附完整源码)
查看>>
Objective-C实现y = x的平方函数的积分运算(附完整源码)
查看>>
Objective-C实现z-algorithm算法(附完整源码)
查看>>
Objective-C实现Zeller 的同余算法 (附完整源码)
查看>>
Objective-C实现zellers congruence泽勒一致算法(附完整源码)
查看>>
Objective-C实现Zero One Knapsack零一背包计算算法(附完整源码)
查看>>
Objective-C实现一个Pangram字符串至少包含一次所有字母算法(附完整源码)
查看>>
Objective-C实现一个stack算法(附完整源码)
查看>>
Objective-C实现一个通用的堆算法(附完整源码)
查看>>
Objective-C实现一分钟倒计时(附完整源码)
查看>>
Objective-C实现一阶高斯滤波(附完整源码)
查看>>
Objective-C实现万年历(附完整源码)
查看>>
Objective-C实现三次样条曲线(附完整源码)
查看>>
Objective-C实现三维空间点到直线的距离(附完整源码)
查看>>
Objective-C实现三维空间点到直线的距离(附完整源码)
查看>>
Objective-C实现三重缓冲区(附完整源码)
查看>>
Objective-C实现上传文件到FTP服务器(附完整源码)
查看>>
Objective-C实现下载文件(附完整源码)
查看>>
Objective-C实现不重复字符的最长子串算法(附完整源码)
查看>>
Objective-C实现两个字符串由相同的字母组成但排列方式不同(字符串字谜)算法(附完整源码)
查看>>