Commandes Linux de performance du serveur

1.1 Vue des performances du processeur

1. Vérifiez le nombre de processeurs physiques:

cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l

2. Affichez le nombre de cœurs dans chaque processeur physique:

cat /proc/cpuinfo |grep "cpu cores"|wc -l

3. Le nombre de processeurs logiques:

cat /proc/cpuinfo |grep "processor"|wc -l

Nombre de processeurs physiques * nombre de cœurs = nombre de processeurs logiques (dans le cas où la technologie d'hyper-threading ne prend pas en charge)

1.2 Vue mémoire

1. Vérifiez l'utilisation de la mémoire:

#free -m

total used free shared buffers cached

Mem: 3949 2519 1430 0 189 1619

-/+ buffers/cache: 710 3239

Swap: 3576 0 3576


total:内存总数

used:已经使用的内存数

free:空闲内存数

shared:多个进程共享的内存总额

- buffers/cache:(已用)的内存数,即used-buffers-cached

+ buffers/cache:(可用)的内存数,即free+buffers+cached


Buffer Cache用于针对磁盘块的读写;

Page Cache用于针对文件inode的读写,这些Cache能有效地缩短I/O系统调用的时间。



对操作系统来说free/used是系统可用/占用的内存;

对应用程序来说-/+ buffers/cache是可用/占用内存,因为buffers/cache很快就会被使用。

Lorsque nous travaillons, nous devons le regarder du point de vue de l'application.

1.3 Vue du disque dur

1. Affichez les informations sur le disque dur et la partition:

fdisk -l

2. Vérifiez l'occupation de l'espace disque du système de fichiers:

df -h

3. Vérifiez les performances d'E / S du disque dur (affiché une fois par seconde et affiché 5 fois):

iostat -x 1 5

Iostat est inclus dans le paquet systat, vous pouvez utiliser yum -y install systat pour installer.

Paramètres fréquemment concernés:

  1. 如%util接近100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。

  2. 如idle小于70%,I/O的压力就比较大了,说明读取进程中有较多的wait。

4. Vérifiez la taille d'un répertoire dans le système Linux:

du -sh /root

Si vous constatez que l'espace d'une certaine partition est presque épuisé, vous pouvez entrer le point de montage de la partition, utiliser la commande suivante pour trouver le fichier ou le répertoire qui occupe le plus d'espace, puis trouver le front qui prend le plus d'espace dans le système dans l'ordre décroissant.10 fichiers ou répertoires:

du -cksh *|sort -rn|head -n 10

1.4 Afficher la charge moyenne

Parfois, le système répond très lentement, mais la raison n'est pas trouvée, alors il est nécessaire de vérifier la charge moyenne pour voir s'il a un grand nombre de processus en attente.

charge moyenne: charge moyenne

La moyenne de charge fait référence à l'utilisation moyenne de la file d'attente d'exécution du système et peut également être considérée comme le nombre moyen de processus exécutables .

En prenant les conditions routières comme exemple, les conditions du processeur monocœur et de la voie unique sont les suivantes:

image

  • Un nombre compris entre 0,00 et 1,00 indique que les conditions routières sont très bonnes en ce moment, qu'il n'y a pas de congestion et que les véhicules peuvent passer sans entrave.
  • 1,00 signifie que la route est normale, mais qu'elle peut se détériorer et provoquer des embouteillages. À ce stade, le système n'a pas de ressources redondantes et l'administrateur doit optimiser.
  • 1,00 - *** signifie que les conditions routières ne sont pas aussi bonnes. S'il atteint 2,00, cela signifie qu'il y a deux fois plus de véhicules en attente sur le pont. Vous devez vérifier ce cas.

Processeur multicœur - la situation à plusieurs voies est la suivante:

image

Dans le cas d'un processeur multicœur, le nombre à l'état de chargement complet est «1,00 * numéro de cœur du processeur», c'est-à-dire que le processeur double cœur est 2,00 et le processeur quadricœur est 4,00. 

Les processus généraux doivent consommer des ressources telles que le processeur, la mémoire, les E / S disque, les E / S réseau, etc. Dans ce cas, la moyenne de charge ne se réfère pas uniquement à l'utilisation du processeur. Autrement dit, des facteurs tels que la mémoire, le disque et le réseau peuvent également affecter la valeur de charge moyenne du système. 
Dans un processeur monocœur, lorsque la valeur de charge moyenne est égale ou inférieure à 1, le processus de traitement du système sera très simple, c'est-à-dire que la charge est très faible. Lorsqu'il atteindra 3, il semblera très occupé, et lorsqu'il atteindra 5 ou 8, il ne pourra pas bien traiter (5 et 8 sont encore des seuils controversés, par souci de prudence, il est recommandé de choisir bas ).

Afficher les données de charge moyenne

La moyenne de charge peut être vue dans les commandes suivantes

# top 
# disponibilité 
# w

Capture d'écran ci-dessous:

commande supérieure

image

commande uptime

image

commande w

image

Les trois valeurs de charge moyenne se réfèrent ici à la valeur de charge moyenne du système au cours des 1/5/15 dernières minutes.

Selon l'expérience: nous devrions nous concentrer sur la charge moyenne de 5/15 minutes, car la charge moyenne de 1 minute est trop fréquente, et la forte concurrence dans un moment entraînera une modification drastique de la valeur.

1.5 Commande vmstat pour déterminer si le système est occupé

Vous pouvez également utiliser la commande vmstat pour déterminer si le système est occupé, où:

procs

r:等待运行的进程数。

b:处在非中断睡眠状态的进程数。

w:被交换出去的可运行的进程数。

memeory

swpd:虚拟内存使用情况,单位为KB。

free:空闲的内存,单位为KB。

buff:被用来作为缓存的内存数,单位为KB。

swap

si:从磁盘交换到内存的交换页数量,单位为KB。

so:从内存交换到磁盘的交换页数量,单位为KB。

io

bi:发送到块设备的块数,单位为KB。

bo:从块设备接受的块数,单位为KB。

system

in:每秒的中断数,包括时钟中断。

cs:每秒的环境切换次数。

cpu

按cpu的总使用百分比来显示。

us:cpu使用时间。

sy:cpu系统使用时间。

id:闲置时间。

1.6 Sous Linux, vous pouvez utiliser l'outil nethogs pour afficher le trafic des processus

1.7 Autres paramètres

查看内核版本号:

uname -a

简化命令:uname -r

查看系统是32位还是64位的:

file /sbin/init

查看发行版:

cat /etc/issue

或lsb_release -a

查看系统已载入的相关模块:

lsmod

查看pci设置:

lspci

2.1.3 Outils d'analyse des performances du système

1. Commandes système courantes

Vmstat 、 sar 、 iostat 、 netstat 、 gratuit 、 ps 、 top 等

2. Combinaisons couramment utilisées

  1. vmstat、sar、iostat检测是否是CPU瓶颈

  2. free、vmstat检测是否是内存瓶颈

  3. iostat检测是否是磁盘I/O瓶颈

  4. netstat检测是否是网络带宽瓶颈

2.1.4 Évaluation et optimisation des performances Linux

Évaluation globale des performances du système (commande uptime)
uptime

16:38:00 jusqu'à 118 jours, 3:01, 5 utilisateurs, charge moyenne: 1,22, 1,02, 0,91

Remarque:

  • La taille moyenne de la charge à trois valeurs ne peut généralement pas être supérieure au nombre de processeurs système.

    Le système dispose de 8 processeurs. Si la valeur moyenne de charge est supérieure à 8 pendant une longue période, cela indique que le processeur est très occupé et que la charge est élevée, ce qui peut affecter les performances du système.

  • Mais parfois supérieur à 8, n'affecte généralement pas les performances du système.

  • Si la valeur de sortie moyenne de charge est inférieure au nombre de CPU, cela signifie que le CPU a des tranches de temps d'inactivité, comme la sortie dans cet exemple, le CPU est très inactif

2.2.1 Évaluation des performances du processeur

1. Utilisez la commande vmstat pour surveiller le processeur du système

Affichez de brèves informations sur les performances des différentes ressources du système, principalement en fonction de la charge du processeur.

Voici la sortie de la commande vmstat sur un certain système:

[root@node1 ~]#vmstat 2 3

procs

———–memory———- —swap– —–io—- –system– —–cpu——


r b swpd freebuff cache si so bi bo incs us sy idwa st


0 0 0 162240 8304 67032 0 0 13 21 1007 23 0 1 98 0 0


0 0 0 162240 8304 67032 0 0 1 0 1010 20 0 1 100 0 0


0 0 0 162240 8304 67032 0 0 1 1 1009 18 0 1 99 0 0

Procs

r - Le nombre de processus en cours d'exécution et en attente de la tranche de temps du processeur. Si cette valeur est plus longue que le nombre de processeurs système pendant une longue période, cela signifie que le processeur est insuffisant et que le processeur doit être augmenté

b - Le nombre de processus en attente de ressources, comme l'attente d'E / S ou l'échange de mémoire.

CPU

nous

Le pourcentage de temps processeur consommé par les processus utilisateur.
Lorsque la valeur de nous est relativement élevée, cela signifie que le processus utilisateur consomme plus de temps cpu, mais s'il est supérieur à 50% pendant une longue période, vous devez envisager des procédures ou des algorithmes d'optimisation.

le sien

Le pourcentage de temps processeur consommé par le processus du noyau. Lorsque la valeur de Sy est élevée, cela indique que le noyau consomme beaucoup de ressources CPU.

D'après l'expérience, la valeur de référence de us + sy est de 80% .Si us + sy est supérieur à 80%, cela signifie que les ressources CPU sont peut-être insuffisantes.

2. Utilisez la commande sar pour surveiller le processeur système

sar effectue des statistiques séparées sur chaque aspect du système, mais cela augmentera la surcharge du système, mais la surcharge peut être évaluée et n'aura pas un grand impact sur les résultats statistiques du système.

Voici la sortie des statistiques du processeur de la commande sar pour un certain système:

[root@webserver ~]# sar -u 3 5


Linux

2.6.9-42.ELsmp (webserver) 11/28/2008_i686_

(8 CPU)


11:41:24

AM CPU %user %nice%system

%iowait %steal %idle


11:41:27

AM all 0.88 0.00 0.29 0.00 0.00 98.83


11:41:30

AM all 0.13 0.00 0.17 0.21 0.00 99.50


11:41:33

AM all 0.04 0.00 0.04 0.00 0.00 99.92


11:41:36

AM all 90.08 0.00 0.13 0.16 0.00 9.63


11:41:39

AM all 0.38 0.00 0.17 0.04 0.00 99.41


Average:

all 0.34 0.00 0.16 0.05 0.00 99.45

La sortie est expliquée comme suit:

  1. %user列显示了用户进程消耗的CPU 时间百分比。

  2. %nice列显示了运行正常进程所消耗的CPU 时间百分比。

  3. %system列显示了系统进程消耗的CPU时间百分比。

  4. %iowait列显示了IO等待所占用的CPU时间百分比

  5. %steal列显示了在内存相对紧张的环境下pagein强制对不同的页面进行的steal操作 。

  6. %idle列显示了CPU处在空闲状态的时间百分比。

  7. 问题

Avez-vous déjà rencontré le phénomène selon lequel l'utilisation globale du processeur du système n'est pas élevée et l'application est lente?

Dans un système à plusieurs processeurs, si le programme utilise un seul thread, un tel phénomène se produira. Le taux d'utilisation global du processeur n'est pas élevé, mais l'application système répond lentement. Cela peut être dû au seul thread utilisé par le L'utilisation d'un seul processeur entraîne un taux d'occupation du processeur de 100%, incapable de traiter d'autres requêtes, tandis que d'autres processeurs sont inactifs, ce qui entraîne une faible utilisation globale du processeur et des applications lentes.

2.3.1 Évaluation des performances de la mémoire

1. Utilisez la commande free pour surveiller la mémoire

free est la commande la plus couramment utilisée pour surveiller l'utilisation de la mémoire Linux, voir la sortie suivante:

[root@webserver ~]# free -m


total

used freeshared

buffers cached


Mem:

8111 7185 926 0 243 6299


-/+

buffers/cache:

643 7468


Swap:

8189 0 8189

Formule empirique:

  1. 应用程序可用内存/系统物理内存>70%,表示系统内存资源非常充足,不影响系统性能;

  2. 应用程序可用内存/系统物理内存<20%,表示系统内存资源紧缺,需要增加系统内存;

  3. 20%<应用程序可用内存/系统物理内存<70%,表示系统内存资源基本能满足应用需求,暂时不影响系统性能

2. Utilisez la commande vmstat pour surveiller la mémoire

[root@node1

~]#

vmstat 2 3


procs

———–memory———- —swap– —–io—- –system– —–cpu——


r b swpd freebuff cache si so bi bo incs us sy idwa st


0 0 0 162240 8304 67032 0 0 13 21 1007 23 0 1 98 0 0


0 0 0 162240 8304 67032 0 0 1 0 1010 20 0 1 100 0 0


0 0 0 162240 8304 67032 0 0 1 1 1009 18 0 1 99 0 0

Mémoire

  1. swpd--切换到内存交换区的内存数量(k为单位)。如swpd值偶尔非0,不影响系统性能

  2. free--当前空闲的物理内存数量(k为单位)

  3. buff--buffers cache的内存数量,一般对块设备的读写才需要缓冲

  4. cache--page cached的内存数量

En règle générale, en tant que système de fichiers mis en cache, les fichiers fréquemment consultés seront mis en cache. Si la valeur du cache est plus grande, cela signifie qu'il y a plus de fichiers dans le cache. Si le bi dans IO est plus petit à ce moment, cela signifie que l'efficacité de le système de fichiers est meilleur.

échanger

  1. si--由磁盘调入内存,也就是内存进入内存交换区的数量。

  2. so--由内存调入磁盘,也就是内存交换区进入内存的数量。

Les valeurs de si et donc ne sont pas 0 pendant longtemps, ce qui indique que la mémoire système est insuffisante. Besoin d'augmenter la mémoire système.

2.4.1 Évaluation des performances d'E / S disque

1. Bases du stockage sur disque

Les fichiers ou données fréquemment consultés utilisent autant que possible la mémoire en lecture et en écriture au lieu des E / S directes sur disque , ce qui est mille fois plus efficace.

Séparez les fichiers fréquemment lus et écrits des fichiers inchangés à long terme et placez-les sur différents périphériques de disque.

Pour les données fréquemment écrites, vous pouvez envisager d'utiliser des périphériques bruts au lieu de systèmes de fichiers.

Avantages de l'équipement nu:

  1. 数据可直接读写,不需经过操作系统级缓存,节省内存资源,避免内存资源争用;

  2. 避免文件系统级维护开销,如文件系统需维护超级块、I-node等;

  3. 避免了操作系统cache预读功能,减少了I/O请求

Les inconvénients de l'utilisation de l'équipement brut sont:

La gestion des données et la gestion de l'espace ne sont pas flexibles et nécessitent un personnel très professionnel pour fonctionner.

2. Utilisez iostat pour évaluer les performances du disque

[root@webserver ~]# iostat -d 2 3

Linux

2.6.9-42.ELsmp (webserver) 12/01/2008_i686_

(8 CPU)

Device:

tps Blk_read/sBlk_wrtn/sBlk_read

Blk_wrtn

sda 1.87 2.58 114.12 6479462 286537372

Device:

tps Blk_read/sBlk_wrtn/sBlk_read

Blk_wrtn

sda

0.00 0.00 0.00 0 0

Device:

tps Blk_read/sBlk_wrtn/sBlk_read

Blk_wrtn

sda

1.00 0.00 12.00 0 24

L'explication est la suivante:

  1. Blk_read/s--每秒读取数据块数

  2. Blk_wrtn/s--每秒写入数据块数

  3. Blk_read--读取的所有块数

  4. Blk_wrtn--写入的所有块数

Vous pouvez obtenir une compréhension de base des performances de lecture et d'écriture du disque grâce aux valeurs de Blk_read / s et Blk_wrtn / s.
Si la valeur de Blk_wrtn / s est élevée, cela signifie que les opérations d'écriture sur disque sont fréquentes. Pensez à optimiser le disque ou le programme
. Indique qu'il existe de nombreuses opérations de lecture directe du disque et que les données de lecture peuvent être mises en mémoire

Les règles suivent:

La lecture et l'écriture de données volumineuses à long terme sont définitivement anormales, et cette situation affectera certainement les performances du système.

3. Utilisez sar pour évaluer les performances du disque

Grâce à la combinaison "sar -d", vous pouvez créer des statistiques de base sur les E / S disque du système. Veuillez consulter la sortie suivante:

[root@webserver ~]# sar -d 2 3


Linux

2.6.9-42.ELsmp (webserver) 11/30/2008_i686_

(8 CPU)


11:09:33

PM DEV tps rd_sec/swr_sec/savgrq-sz

avgqu-sz await svctm %util


11:09:35

PM dev8-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00


11:09:35

PM DEV tps rd_sec/swr_sec/savgrq-sz

avgqu-sz await svctm %util


11:09:37

PM dev8-0 1.00 0.00 12.00 12.00 0.00 0.00 0.00 0.00


11:09:37

PM DEV tps rd_sec/swr_sec/savgrq-sz

avgqu-sz await svctm %util


11:09:39

PM dev8-0 1.99 0.00 47.76 24.00 0.00 0.50 0.25 0.05


Average:

DEV tps rd_sec/swr_sec/savgrq-sz

avgqu-sz await svctm %util


Average:

dev8-0 1.00 0.00 19.97 20.00 0.00 0.33 0.17 0.02

Signification du paramètre:

  1. await--平均每次设备I/O操作等待时间(毫秒)

  2. svctm--平均每次设备I/O操作的服务时间(毫秒)

  3. %util--一秒中有百分之几的时间用于I/O操作

Critères d'évaluation des performances d'E / S du disque:

Le svctm normal doit être inférieur à la valeur d'attente et svctm est lié aux performances du disque. La charge du processeur et de la mémoire affectera également la valeur svctm. Des requêtes excessives augmenteront également indirectement la valeur svctm.

  1. await值取决svctm和I/O队列长度以及I/O请求模式,

  2. 如果svctm的值与await很接近,表示几乎没有I/O等待,磁盘性能很好,

  3. 如果await的值远高于svctm的值,则表示I/O队列等待太长,系统上运行的应用程序将变慢,

  4. 此时可以通过更换更快的硬盘来解决问题。

% util - Indicateurs importants pour mesurer les E / S disque,

Si% util est proche de 100%, cela signifie que le disque génère trop de demandes d'E / S et que le système d'E / S fonctionne déjà à pleine capacité et que le disque peut avoir un goulot d'étranglement.

Le programme peut être optimisé ou en remplaçant un disque plus haut et plus rapide.

2.5.1. Évaluation des performances du réseau

  1. (1)通过ping命令检测网络的连通性

  2. (2)通过netstat –i组合检测网络接口状况

  3. (3)通过netstat –r组合检测系统的路由表信息

  4. (4)通过sar –n组合显示系统的网络运行状态

Trois optimisation des performances du serveur Linux

1. Ajustez l'algorithme d'élévateur du noyau Linux pour les E / S disque

Après avoir sélectionné le système de fichiers, l'algorithme peut équilibrer les exigences de faible latence, collecter suffisamment de données et organiser efficacement les demandes de lecture et d'écriture de disque.

2. Désactivez les démons inutiles pour économiser la mémoire et les ressources du processeur

  1. 许多守护进程或服务通常非必需,消耗宝贵内存和CPU时间。将服务器置于险地。

  2. 禁用可加快启动时间,释放内存。

  3.  
  4. 减少CPU要处理的进程数

Certains démons Linux qui devraient être désactivés, s'exécutent automatiquement par défaut:

Description du démon du numéro de série
1 Démon de gestion de l'alimentation avancé Apmd
2 Nfslock pour le verrouillage de fichier NFS
3 Prise en charge du Moderm ISDN ISDN
4 Autofs monte automatiquement le système de fichiers en arrière-plan (comme le montage automatique du CD-ROM)
5 Agent de transfert de courrier Sendmail
6 Police Xfs X Window serveur

3. Interface graphique associée

4. Nettoyez les modules ou fonctions inutiles

Un trop grand nombre de fonctions ou de modules activés dans le progiciel du serveur ne sont en fait pas nécessaires (comme de nombreux modules fonctionnels dans Apache). La désactiver contribuera à augmenter la quantité de mémoire système disponible, à libérer des ressources pour les logiciels qui en ont vraiment besoin et à laisser Ils courent plus vite.

5. Désactivez le panneau de commande

Sous Linux, il existe de nombreux panneaux de contrôle populaires, tels que Cpanel, Plesk, Webmin et phpMyAdmin. Leur désactivation libère environ 120 Mo de mémoire et l'utilisation de la mémoire diminue d'environ 30 à 40%.

6. Améliorez les performances du serveur Linux Exim

L'utilisation du démon de cache DNS peut réduire la bande passante et le temps processeur requis pour résoudre les enregistrements DNS. Le cache DNS améliore les performances du réseau en éliminant le besoin de rechercher à chaque fois des enregistrements DNS à partir du nœud racine.

Djbdns est un serveur DNS très puissant, il a une fonction de cache DNS, Djbdns est plus sécurisé et de meilleures performances que le serveur DNS BIND, il peut être téléchargé directement via http://cr.yp.to/, ou via le progiciel fourni par Red Hat obtient.

7. Utilisez AES256 pour améliorer la sécurité du cryptage des fichiers gpg

Afin d'améliorer la sécurité des fichiers de sauvegarde ou des informations sensibles, de nombreux administrateurs système Linux utilisent gpg pour le chiffrement. Lors de l'utilisation de gpg, il est préférable de spécifier gpg pour utiliser l'algorithme de chiffrement AES256 et AES256 pour utiliser une clé de 256 bits. Il est un algorithme de cryptage ouvert. La National Security Agency (NSA) l'utilise pour protéger les informations top-secrètes.

8. Sécurité du service de sauvegarde à distance

La sécurité est le facteur le plus important dans le choix d'un service de sauvegarde à distance. La plupart des administrateurs système ont peur de deux choses: (les pirates) peuvent supprimer les fichiers de sauvegarde et ne peuvent pas restaurer le système à partir d'une sauvegarde.

Afin d'assurer la sécurité à 100% des fichiers de sauvegarde, la société de services de sauvegarde fournit un serveur de sauvegarde à distance qui utilise le script scp ou RSYNC pour transférer les données via SSH, de sorte que personne ne puisse directement entrer et accéder au système distant, par conséquent, personne peut supprimer des données du service de sauvegarde. Lors du choix d'un fournisseur de services de sauvegarde à distance, il est préférable de comprendre la robustesse de ses services sous plusieurs aspects, si vous le pouvez, vous pouvez le tester vous-même.

9. Mettez à jour les paramètres par défaut du noyau

Afin d'exécuter correctement et correctement les applications d'entreprise, telles que les serveurs de base de données, certains paramètres par défaut du noyau doivent être mis à jour. Par exemple, le paramètre de file d'attente de messages du noyau de la série 2.4.x msgmni a une valeur par défaut (par exemple, mémoire partagée, ou shmmax dans les systèmes Red Hat La valeur par défaut ci-dessus n'est que de 33554432 octets), ce qui n'autorise que des connexions simultanées limitées à la base de données. Voici quelques suggestions de valeurs pour un meilleur fonctionnement du serveur de base de données (sur le site Web de support IBM DB2):

kernel.shmmax = 268435456 (32 位)
kernel.shmmax = 1073741824 (64 位)
kernel.msgmni = 1024
fs.file-max = 8192
kernel.sem = "250 32000 32 1024"

10. Optimiser TCP

L'optimisation du protocole TCP permet d'augmenter le débit du réseau. Plus la bande passante utilisée pour les communications inter-WAN est grande et plus le temps de retard est long, il est recommandé d'utiliser une taille TCP Linux plus grande pour augmenter le débit de transmission de données. La taille TCP Linux détermine l'hôte émetteur est la quantité de données pouvant être envoyée à l'hôte récepteur lorsque la confirmation de transmission de données n'est pas reçue.

11. Choisissez le bon système de fichiers

Utilisez le système de fichiers ext4 au lieu de ext3

● Ext4 est une version améliorée du système de fichiers ext3, qui étend la limite de stockage

● Avec fonction de journal pour assurer un haut niveau d'intégrité des données (en cas d'arrêt anormal)

● Il n'est pas nécessaire de vérifier le disque lors d'un arrêt et d'un redémarrage anormaux (cette action prend beaucoup de temps)

● Vitesse d'écriture plus rapide, le journal ext4 optimise le mouvement de la tête du disque dur

12. Utilisez l'option de montage du système de fichiers noatime

Utilisez l'option noatime dans le fichier de configuration de démarrage du système de fichiers fstab. Si un stockage externe est utilisé, cette option de montage peut améliorer efficacement les performances.

13. Ajustez la limite du descripteur de fichier Linux

Linux limite le nombre de descripteurs de fichiers pouvant être ouverts par n'importe quel processus. La limite par défaut est de 1024 par processus. Ces limites peuvent empêcher les clients de référence (tels que httperf et apachebench) et le serveur Web lui-même d'atteindre les meilleures performances. Apache en utilise un Les processus ne sont donc pas affectés, mais les serveurs Web mono-processus tels que Zeus utilisent un descripteur de fichier par connexion, ils sont donc facilement affectés par les restrictions par défaut.

La limite de fichier ouvert est une limite qui peut être ajustée avec la commande ulimit. La commande ulimit -aS affiche la limite actuelle et la commande ulimit -aH montre la limite stricte (vous ne pouvez pas augmenter la limite avant d'ajuster les paramètres du noyau dans / proc ).

Compétences en performances des applications tierces Linux

Pour les applications tierces exécutées sous Linux, il existe également de nombreuses techniques d'optimisation des performances qui peuvent vous aider à améliorer les performances des serveurs Linux et à réduire les coûts d'exploitation.

14. Configurer MySQL correctement

Afin d'allouer plus de mémoire à MySQL, vous pouvez définir la taille du cache MySQL. Si l'instance du serveur MySQL utilise plus de mémoire, réduisez la taille du cache. Si MySQL stagne lorsque les demandes augmentent, augmentez le cache MySQL.

15. Configurer correctement Apache

Vérifiez la quantité de mémoire utilisée par Apache, puis ajustez les paramètres StartServers et MinSpareServers pour libérer plus de mémoire, ce qui vous aidera à économiser 30 à 40% de mémoire.

16. Analyser les performances du serveur Linux

La meilleure façon d'améliorer l'efficacité du système est de trouver le goulot d'étranglement qui cause la baisse de la vitesse globale et de le résoudre. Voici quelques techniques de base pour trouver le principal goulot d'étranglement du système:

● Lorsque de grandes applications telles qu'OpenOffice et Firefox s'exécutent en même temps, l'ordinateur peut commencer à ralentir et le risque de mémoire insuffisante est plus élevé.

● Si le démarrage est vraiment lent, le chargement de l'application pour la première fois peut prendre un certain temps, et elle fonctionnera normalement une fois lancée, sinon le disque dur est probablement trop lent.

● La charge CPU reste élevée et la mémoire est suffisante, mais l'utilisation du CPU est très faible Vous pouvez utiliser l'outil d'analyse de charge CPU pour surveiller le temps de chargement.

17. Apprenez 5 commandes de performance Linux

Utilisez quelques commandes pour gérer les performances du système Linux. Les cinq commandes de performances Linux les plus couramment utilisées sont répertoriées ci-dessous, notamment
top, vmstat, iostat, free et sar , qui aident les administrateurs système à résoudre rapidement les problèmes de performances.

(1) haut

La tâche du service noyau actuel affiche également des statistiques sur l'état de nombreux hôtes. Par défaut, elle est automatiquement mise à jour toutes les 5 secondes.
Tels que: disponibilité actuelle, charge du système, nombre de processus et utilisation de la mémoire,

En outre, cette commande affiche également les processus qui utilisent le plus de temps CPU (y compris diverses informations sur chaque processus, telles que les utilisateurs en cours d'exécution, les commandes exécutées, etc.).

(2) vmstat

La commande Vmstat fournit un instantané de l'utilisation actuelle du processeur, des E / S, des processus et de la mémoire. Elle est similaire à la commande top et met automatiquement à jour les données, telles que:

$ vmstat 10

(3) iostat

Iostat fournit trois rapports: utilisation du processeur, utilisation des périphériques et utilisation du système de fichiers réseau. Ces trois rapports peuvent être affichés indépendamment à l'aide des paramètres -c, -d et -h.

(4) gratuit

Affiche les statistiques de la mémoire principale et de l'espace d'échange. Spécifiez le paramètre -t pour afficher la mémoire totale, spécifiez le paramètre -b en octets et utilisez -m pour utiliser des mégaoctets comme unité. Par défaut, les kilo-octets sont l'unité.

La commande Free peut également utiliser le paramètre -s plus un temps de retard (unité: seconde) pour s'exécuter en continu, tel que:

$ gratuit -s 5

(5) sar

Collecte, affichage et enregistrement des données de performances. Cette commande a un historique plus long que les commandes précédentes. Elle peut collecter et afficher des données pendant une période plus longue.

autre

Voici quelques conseils de performance classés comme d'autres:

18. Transférer les fichiers journaux en mémoire

Lorsqu'une machine est en cours d'exécution, il est préférable de stocker le journal système dans la mémoire et de le copier sur le disque dur lorsque le système est éteint. Lorsque vous exécutez un ordinateur portable ou un appareil mobile avec Syslog activé, ramlog peut Pour vous aider à augmenter la durée de vie de la batterie du système ou du lecteur flash de l'appareil mobile, l'un des avantages de l'utilisation de ramlog est que vous n'avez pas à vous soucier d'un démon qui envoie un message à syslog toutes les 30 secondes et que la batterie est mauvaise.

19. Emballez d'abord, puis écrivez

Un espace de taille fixe est divisé en mémoire pour enregistrer le fichier journal, ce qui signifie que le disque dur de l'ordinateur portable n'a pas besoin de continuer à fonctionner. Il ne s'exécute que lorsqu'un démon a besoin d'écrire le journal. Notez que l'espace mémoire utilisé par ramlog est corrigé, sinon La mémoire système sera utilisée rapidement. Si l'ordinateur portable utilise un disque SSD, 50 à 80 Mo de mémoire peuvent être alloués à ramlog. Ramlog peut réduire de nombreux cycles d'écriture et augmenter considérablement la durée de vie du disque dur.

20, compétences générales de réglage

Utilisez autant que possible du contenu statique plutôt que du contenu dynamique. Si vous générez des prévisions météorologiques ou d'autres données qui doivent être mises à jour toutes les 1 heure, il est préférable d'écrire un programme qui génère un fichier statique toutes les 1 heure au lieu de laisser les utilisateurs exécuter A CGI génère des rapports de manière dynamique.

Choisissez l'API la plus rapide et la plus appropriée pour les applications dynamiques. CGI est peut-être la plus simple à programmer, mais elle générera un processus pour chaque demande. En général, il s'agit d'un processus coûteux et inutile. FastCGI est le meilleur choix, et le mod_perl d'Apache peut améliorer considérablement les performances de l'application.

Je suppose que tu aimes

Origine blog.csdn.net/grl18840839630/article/details/112306339
conseillé
Classement