|
La Communauté Webmaster 
| Pages: [1] |
 |
|
|
|
Auteur |
Sujet: Flux concurrentiels (Lu 779 fois) |
|
 |
Flux concurrentiels
« sur: le 11-02-2005 a 16:15:50 » |
|
|
|
|
|
|
 |
Re:Flux concurrentiels
« Répondre #1 sur: le 15-02-2005 a 18:35:09 » |
|
gobmok
Membre récent

Hors-Ligne
Sexe: 
Messages: 23

Je ne suis pas un lama!
|
c'est ce qui s'appelle du multi-threading en programmation: en gros le programmeur divise certaines partie de programme en thread, celle-ci sont comme des fonctions, mais peuvent s'éxécuter à des moments différents et sont indépendantes du programme.
chacune des opérations (ajouter un nouvel utilisateur, modifier une donnée, pour une base de donnée, ou additionner quelque chose pour un programme classique) se font une à une et sont stockés dans une queu(en fait il y a plusieurs queus de différents niveaux) que le processeur gére
chacune de ces opérations ont des niveaux d'importance, un thread(une opération) au niveau plus important passera avant les autres( comme quand tu appuyes désespéremment sur ctrl-alt-del, logiquement, c'est une opération prioritaire et s'éxécutera avant un programme déja lancé )
de plus l'avantage de ce systéme c'est que tant que le thread est dans la queu, on peut l'arréter, le mettre en pause pour l'activer plus tard.
ta base de donnée utilise ce systéme à chaque fois qu'un utilisateur active un script qui modifie une base de donnée, cette modification crée un thread qui est stocké sur le serveur dans la queu de thread (générallement en mém cache)et ceux-ci sont éxécutés une à une selon leur importance
c'est comme ça qu'aucune collision(deux informations se réalisant en même temps) ne se passe pour ta base de donnée |
plus grand tu es, plus l'horizon est loin (proverbe viking) |
|
|
 |
Re:Flux concurrentiels
« Répondre #2 sur: le 16-02-2005 a 19:56:48 » |
|
|
|
|
 |
Re:Flux concurrentiels
« Répondre #3 sur: le 16-02-2005 a 23:27:44 » |
|
gobmok
Membre récent

Hors-Ligne
Sexe: 
Messages: 23

Je ne suis pas un lama!
|
éxact, dans le fichier de configuration de MysQL:
set-variable = thread_stack=64K
elle est aussi limité dans le nombre de connecté en même temps, ainsi que dans la taille de ses tables( ceci pour mysql j'en suis sur, pour oracle, c'est toi qui décide de la taille maximum pour chaque table par ex )
je tiens à signaler que MySQL posséde également un service de journalisation de ces opérations. Celui-ci valide une opération lorsque celle-ci est terminé, c'est ce qui permet à la bd de 'revenir en arrière', le systéme n'est pas infaillible, et ill 'oublie' certaines de ces opérations dont il n'a pas de détail suffisant ( note que la façon dont MySQL récupère ses données sont variables selon la table que tu as choisi en MySQL, certaines n'ont même pas de systéme de journalisation )
mais ne me faites pas dire ce que je n'ai pas dit: le multithreading n'est pas seulement utile à MySQL, mais aussi apache, ie, un jeu vidéo, et tout autres programme un peu neuf qui soit, c'est juste un mécanisme qui permet d'augmenter la capacité du processeur, puisqu'il permet de gérer et subdiviser les taches qu'il a à réaliser, et donc également permet de gérer des services multiclient( donc serveur web, jeu en ligne, etc ) avec grande efficacité en évitant les problèmes de collision des données dans le temps
pour compléter ma réponse du premier message:
chacune de ces opérations s'éxécutent de manière asynchrone (indépendante dans le temps) ce qui fait qu'il y a parfois de légère incohérence:
première opération dans le temps: +10% dans commande.produit.prix deuxième opération dans le temps: +5 dans commande.produit.prix
imaginons la valeur de base:10 si tu applique dans l'ordre l'opération tu obtiens:16
cependant , des opérations peuvent se passer dans le désordre, et dans ce cas tu obtiens: 16,5
sache que quelques soient la façon dont les opérations se déroule: LES DEUX SONT CONCIDERE BONNES
tant qu'une opération se déroule en entier(celle-ci pouvant comporter plusieurs petites opérations qui elles ont un ordre précis) et validé par le systéme de journal cité plus haut, l'opération est considéré comme valide
j'espère que ce dernier message aura servi à quelqu'un par ce que là je crois que je me suis un peu emporté.......... |
plus grand tu es, plus l'horizon est loin (proverbe viking) |
|
|
| Pages:
[1] |
|
|
|
| |
|
|