Linux:系统初始化,内核优化,性能优化(3)

优化系统的文件句柄数(全局)

也就是系统的最大文件数量

查看最大数量

cat /proc/sys/fs/file-max

当我们的服务器有非常大的一个数据并发的时候十几二十万的文件需要去配置,可能这个是远远不够的,我们就要去修改 

vim /etc/sysctl.conf 
# 末尾追加
fs.file-max = 102400

意思就是最大文件数是102400

再去让其生效

sysctl -p

再去查看一下最大文件数

或者使用命令

echo "fs.file-max = 102400" >> /etc/sysctl.conf

这个是全局生效的,对所有用户都生效,我们也可以对某个用户有不同的  


优化系统的文件句柄数(用户)

某个账户的最大句柄数

查看大小

ulimit -u

可以看到用户的才7183(root是随意的不受限制的)

现在去进行修改

vim /etc/security/limits.conf 

#末尾追加

* soft nofile 65535
* hard nofile 65535

意为最大就是65535和文件

或者使用命令

echo "* soft nofile 65535" >> /etc/security/limits.conf
echo "* hard nofile 65535" >> /etc/security/limits.conf

配置生效,重新登录即可


优化系统的文件句柄数(单个进程)

单个进程可以操控的句柄数

vim /etc/security/limits.d/20-nproc.conf 

默认4096

也是重新登录生效


优化系统的文件句柄数(全局进程) 

echo "* soft nproc 65535" >> /etc/security/limits.conf 
echo "* hard nproc 65535" >> /etc/security/limits.conf

设置别名命令

通过alias设置别名命令


开启的服务进行精简

如果开机自动开启没用的服务就一堆这非常占用系统的开机时间一类的

systemctl list-unit-files | grep enabled

看一下

发现有很多

systemctl list-unit-files | grep en | wc -l

看一下有多少个可以看到有62个

postfix.service这个服务一般不开

NetworkManager.service 一般也不开

其他的根据自己的情况去禁用

systemctl disable postfix.service
systemctl disable NetworkManager.service

其他没有用的话可以具体的去网上查一下,根据官方的推荐去禁掉一些


优化内核参数

tcp/ip协议的优化,允许更多的tcp会话,增加吞吐量,缓解相关攻击

cat >>/etc/sysctl.conf<<EOF
#保持在FIN-WAIT-2状态的时间,使系统可以处理更多连接。此参数值为整数,单位为秒。
net.ipv4.tcp_fin_timeout = 2
#开启重用,允许将TIME_WAIT socket用于新的TCP连接。默认为0,表示关闭。
net.ipv4.tcp_tw_reuse = 1
#开启TCP连接中TIME_WAIT socket的快速回收。默认值为0,表示关闭。
net.ipv4.tcp_tw_recycle = 1
#新建TCP连接请求,需要发送一个SYN包,该值决定内核需要尝试发送多少次syn连接请求才决定放弃建立连接。默认值是5. 对于高负责且通信良好的物理网络而言,调整为2
net.ipv4.tcp_syn_retries = 2
#对于远端SYN连接请求,内核会发送SYN+ACK数据包来确认收到了上一个SYN连接请求包,然后等待远端的确认(ack数据包)。该值则指定了内核会向远端发送tcp_synack_retires次SYN+ACK数据包。默认设定值是5,可以调整为2
net.ipv4.tcp_synack_retries = 2
#开启SYN cookie,出现SYN等待队列溢出时启用cookie处理,防范少量的SYN攻击。默认为0,表示关闭。
net.ipv4.tcp_syncookies = 1
#表示SYN队列的长度,预设为1024,这里设置队列长度为262144,以容纳更多等待连接。
net.ipv4.tcp_max_syn_backlog = 262144
#系统同时保持TIME_WAIT套接字的最大数量,如果超过这个数值将立刻被清除并输出警告信息。默认值为180000。控制TIME_WAIT套接字最大值,避免服务器被拖死。可以抵御简单的DoS攻击。
net.ipv4.tcp_max_tw_buckets = 6000
#表示系统中最多有多少TCP套接字不被关联到任何一个用户文件句柄上。如果超过这里设置的数字,连接就会复位并输出警告信息。这个限制仅仅是为了防止简单的DoS攻击。此值不能太小。
net.ipv4.tcp_max_orphans = 16384
# 增加TCP最大缓冲区大小
net.ipv4.tcp_rmem=4096 87380 4194304
net.ipv4.tcp_wmem=4096 16384 4194304
#keepalived启用时TCP发送keepalived消息的频度。默认2小时。
net.ipv4.tcp_keepalive_time = 600
#TCP发送keepalive探测以确定该连接已经断开的次数。根据情形也可以适当地缩短此值
net.ipv4.tcp_keepalive_probes = 5
#探测消息发送的频率,乘以tcp_keepalive_probes就得到对于从开始探测以来没有响应的连接杀除的时间。默认值为75秒,也就是没有活动的连接将在大约11分钟以后将被丢弃。对于普通应用来说,这个值有一些偏大,可以根据需要改小.特别是web类服务器需要改小该值。
net.ipv4.tcp_keepalive_intvl = 15
net.ipv4.route.gc_timeout = 100
#指定外部连接的端口范围。默认值为32768 61000
net.ipv4.ip_local_port_range = 1024 65000
#定义了系统中每一个端口最大的监听队列的长度, 对于一个经常处理新连接的高负载 web服务环境来说,默认值为128,偏小
net.core.somaxconn = 16384
#表示当在每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许发送到队列的数据包的最大数量。
net.core.netdev_max_backlog = 16384
#避免放大攻击
net.ipv4.icmp_echo_ignore_broadcasts=1
EOF
sysctl -p

生效一下


锁定重要配置文件

直接不让配置某些文件

Linux:锁定文件chattr_linux文件加锁+i-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/w14768855/article/details/135118897?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171068649916800188557769%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=171068649916800188557769&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-135118897-null-null.nonecase&utm_term=char&spm=1018.2226.3001.4450这篇文章可以看到如果上锁,可以把重要文件进行上锁处理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/464464.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【系统架构师】-第4章-信息安全技术

1、基础知识 五要素&#xff1a; (1)机密性&#xff1a;确保信息不暴露给未授权的实体或进程。 (2)完整性&#xff1a;只有得到允许的人才能修改数据&#xff0c;并且能够判别出数据是否已被篡改。 (3)可用性&#xff1a;得到授权的实体在需要时可访问数据&#xff0c;即攻击…

DFL《384底丹 430万》 wf/df-udt/448/96/96/32预训练模型

384底丹430万迭代&#xff1a;点击下载 训练素材19万张来自于以下数据集&#xff1a; 【更新】DST全角度训练图集V3.1 WF512【2.6W张 6GB 】【人脸混合_WF】FFHQ女性人脸数据&#xff0c;预训练炼丹专用【金鱼基础模型库】用于补全SRC极限角度香港中文大学CelebA预训练集-WF5…

【web前端】<meta>标签

meta元素可以提供有关页面的元信息&#xff08;meta-information&#xff09; meta标签位于文档的头部&#xff0c;是空元素 meta元素的属性 属性值描述http-equiv expires refresh X-UA-compatible 定义HTTP协议的头部元信息名称。其中&#xff0c;expires设置网页在缓存区的…

docker引擎

目录 一、Docker引擎发展历程 二、docker引擎架构 三、docker引擎分类 四、docker引擎安装 4.1安装条件 4.2 使用rpm存储库安装 4.2.1设置存储库 4.2.2安装docker引擎 4.2.3启动docker,并设置docker开机自启动 五、卸载docker引擎 5.1.卸载 Docker 引擎、CLI、conta…

如何使用人工智能打造超用户预期的个性化购物体验

回看我的营销职业生涯&#xff0c;我见证了数字时代如何重塑客户期望。从一刀切的方法过渡到创造高度个性化的购物体验已成为企业的关键。在这个客户期望不断变化的新时代&#xff0c;创造个性化的购物体验不再是奢侈品&#xff0c;而是企业的必需品。人工智能 &#xff08;AI&…

Acwing-基础算法课笔记之动态规划(计数类DP)

Acwing-基础算法课笔记之动态规划&#xff08;计数类DP&#xff09; 一、整数划分1、定义2、完全背包的做法代码示例&#xff08;1&#xff09;过程模拟&#xff08;2&#xff09;代码示例 3、计数类DP的做法&#xff08;1&#xff09;过程模拟&#xff08;2&#xff09;闫氏DP…

页面侧边栏顶部固定和底部固定方法

顶部固定用于侧边栏低于屏幕高度----左侧边栏 底部固定用于侧边栏高于屏幕高度----右侧边栏 vue页面方法 页面布局 页面样式&#xff0c;因为内容比较多&#xff0c; 只展示主要代码 * {margin: 0;padding: 0;text-align: center; } .head {width: 100%;height: 88px;back…

Language models scale reliably with over-training and on downstream tasks

Language models scale reliably with over-training and on downstream tasks 相关链接&#xff1a;arxiv 关键字&#xff1a;语言模型、过度训练、下游任务、可扩展性、性能预测 摘要 本文探讨了语言模型在过度训练和下游任务中的可扩展性。尽管现有的扩展研究通常集中在计算…

【Linux】基础 IO(文件描述符)-- 详解

一、前言 1、文件的宏观理解 文件在哪呢&#xff1f; 从广义上理解&#xff0c;键盘、显示器、网卡、声卡、显卡、磁盘等几乎所有的外设都可以称之为文件&#xff0c;因为 “Linux 下&#xff0c;一切皆文件”。 从狭义上的理解&#xff0c;文件在磁盘&#xff08;硬件&#…

虚拟机 VMware下载及安装

centos官网&#xff1a;CentOS Mirror 虚拟机vmware官网&#xff1a;VMware 官网 一直点下一步就好了&#xff0c;有些配置按需修改即可 创建新的虚拟机 处理内核总数不能大于自己主机的逻辑处理器 安装操作系统&#xff1a;引入centos镜像 然后就可以点击开启此虚拟机&#xf…

软考76-上午题-【面向对象技术3-设计模式】-创建型设计模式01

一、创建型设计模式一览 二、创建型设计模式 2-1、创建型设计模式的概念 一个类创建型模式使用继承改变被实例化的类&#xff1b; 一个对象创建型模式将实例化委托给另一个对象。 对应java的new一个对象。 2-2、简单工厂模式&#xff08;静态工厂方法&#xff09; 简单工厂…

Python电梯楼层数字识别

程序示例精选 Python电梯楼层数字识别 如需安装运行环境或远程调试&#xff0c;见文章底部个人QQ名片&#xff0c;由专业技术人员远程协助&#xff01; 前言 这篇博客针对《Python电梯楼层数字识别》编写代码&#xff0c;代码整洁&#xff0c;规则&#xff0c;易读。 学习与应…

第四篇 - 环境:移动设备、台式设备和联网电视 - IAB视频广告标准《数字视频和有线电视广告格式指南》

第四篇 - 环境&#xff1a;移动设备、台式设备和联网电视 - IAB视频广告标准《数字视频和有线电视广告格式指南》 --- 我为什么要翻译介绍美国人工智能科技公司IAB系列技术标准&#xff08;2&#xff09; ​​​​​​​翻译计划 第一篇序言第二篇简介和目录第三篇概述- IAB…

linux解析域名指令 nslookup 或者 host

host www.baidu.com 第二种方法 nslookup www.baidu.com 注意&#xff1a;ns是name server之意

纯 CSS 实现文字换行环绕效果

实现效果 实现代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>Document</title><…

前端学习之css样式 背景样式、字体样式、列表样式、边框样式、内外边距元素属性的转换

背景样式 html文件 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>背景样式</title><link rel"stylesheet" href"../css/3.1背景样式.css"> </head> <bo…

基于springboot+vue实现员工信息管理系统项目【项目源码+论文说明】

基于springbootvue实现员工信息管理系统演示 引言 随着计算机技术的飞速发展&#xff0c;计算机在企业管理中应用的普及&#xff0c;利用计算机在实现企业人事档案的管理势在必行。当今社会正快速向信息化社会前进&#xff0c;信息自动化的作用也越来越大。从而使我们从繁杂的…

蓝桥杯第 6 场 小白入门赛 2.猜灯谜(for + 数组)

思路&#xff1a;注意是环形排列的灯笼&#xff0c;它的谜底是相邻两个灯笼的数字之和。这道题要用到两个数组&#xff0c;ans存答案&#xff0c;a存原数据。数据读入部分就不用说了&#xff0c;重点就是单独写明ans[0]和ans[n-1]两个取值&#xff0c;其他的用for循环数组就可以…

【Linux】进程与可执行程序的关系fork创建子进程写实拷贝的理解

一、进程与可执行程序之间关系的理解 系统会将此时在系统运行的进程的各种属性都以文件的形式给你保存在系统的proc目录下。运行一个程序的时候&#xff0c;本质就是把磁盘中的程序拷贝到内存中&#xff0c;当一个进程运行起来的时候&#xff0c;它本质已经和磁盘中的可执行程序…

Python分析两个数据集车辆轨迹的相似度

项目背景 最近遇到这样一个需求&#xff1a; 有两个数据集&#xff0c;radar1.radar4.csv&#xff0c;这两个数据集是由位置相邻的两个雷达记录&#xff0c;且这两个雷达的检测区域有部分重合&#xff0c;两个数据集的字段有deviceId ptcType ptcId source timestamp longitud…