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

你可能感兴趣的文章
P1364 医院设置
查看>>
P2260 [清华集训2012]模积和
查看>>
P3203 [HNOI2010]弹飞绵羊 —— 懒标记?分块?
查看>>
P4313 文理分科
查看>>
SpringBoot中集成LiteFlow(轻量、快速、稳定可编排的组件式规则引擎)实现复杂业务解耦、动态编排、高可扩展
查看>>
SpringBoot中集成influxdb-java实现连接并操作Windows上安装配置的influxDB(时序数据库)
查看>>
P8738 [蓝桥杯 2020 国 C] 天干地支
查看>>
package,source folder,folder相互转换
查看>>
SpringBoot中集成Flyway实现数据库sql版本管理入门以及遇到的那些坑
查看>>
package.json文件常用指令说明
查看>>
SpringBoot中集成eclipse.paho.client.mqttv3实现mqtt客户端并支持断线重连、线程池高并发改造、存储入库mqsql和redis示例业务流程,附资源下载
查看>>
Padding
查看>>
paddlehub安装及对口罩检测
查看>>
SpringBoot中集成Actuator实现监控系统运行状态
查看>>
paddle的两阶段基础算法基础
查看>>
Page Object模式:为什么它是Web自动化测试的必备工具
查看>>
SpringBoot中重写addCorsMapping解决跨域以及提示list them explicitly or consider using “allowedOriginPatterns“ in
查看>>
PageHelper 解析及实现原理
查看>>
pageHelper分页工具的使用
查看>>
pageHelper分页技术
查看>>