Maison  >  Article  >  base de données  >  MySQL est-il monothread ou multithread ?

MySQL est-il monothread ou multithread ?

青灯夜游
青灯夜游original
2020-09-28 09:58:467298parcourir

mysql est multithread. Mysql est une base de données multithread à processus unique. Il existe environ trois types de threads dans innodb : 1. Thread principal ; 2. Thread de thread IO, utilisé pour traiter les demandes d'écriture de manière asynchrone. 3. Thread de purge, utilisé pour supprimer les journaux d'annulation ; .

MySQL est-il monothread ou multithread ?

(Tutoriel recommandé : Tutoriel vidéo mysql)

mysql est une base de données multithread à processus unique, en innodb Il contient probablement les types de threads suivants :

(1) Master Thread : C'est le thread principal, très central. Son but est principalement d'effectuer certaines tâches périodiques, dans. différentes versions d'Innodb Leurs fonctions sont différentes, voici la première version. Le premier thread innodb Master aura deux tâches de fréquence, l'une toutes les 1 seconde et l'autre toutes les 10 secondes.

Travailler chaque seconde :

1. Actualiser le journal ;

2. Actualiser jusqu'à 100 pages sales

3.

4. Si vous êtes inactif, passez en arrière-plan.

En fait, les plus importants sont les deux premiers. Et seule l'actualisation du journal doit être effectuée à chaque fois, et le reste ne sera effectué que si les conditions sont remplies. Par exemple, l'actualisation des pages sales ne sera actualisée que si la proportion de pages sales dans le cache dépasse un seuil.

Travailler toutes les 10 secondes :

1. Actualiser le journal

2. Actualiser les pages sales ; 🎜>4. Tampon d'insertion de fusion

(2) IO Thread :

Principalement utilisé pour traiter les demandes d'écriture de manière asynchrone.

(3) purge Thread : est utilisé pour supprimer les journaux d'annulation. Il s'agit de la version innodb suivante qui sépare cette question du thread principal.

Enfin, voici l'image mémoire d'Innodb :

Recommandations associées :

Formation php

MySQL est-il monothread ou multithread ?

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn