A voir également:
- Multithreading vs multiprocessing hardware
- Udp vs tcp - Guide
- Test hardware pc - Guide
- Psp street vs psp 3000 - Forum PSP
- Hardware monitor - Télécharger - Divers Utilitaires
- Dual core vs i5 ✓ - Forum Processeur
4 réponses
Bonjour,
Le multithreading a surtout de l'intérêt pour les étapes à courte constante de temps.
Dans une architecture trois tiers il faut l'utiliser au premier tiers (interactivité réactive). En troisième tiers on a des calculs et des accès aux bases de données qui sont plus longs et qu'il faut souvent sérialiser (surtout pour les bases de données dynamiques). Le multithreading a moins d'intérêt.
La différence de comportement entre premier et dernier tiers conduit aussi à déconseiller des les mettre sur une même machine. Les optimisations ne sont pas les mêmes.
Bien sûr ça dépend beaucoup des caractéristiques des applications.
Manu
Le multithreading a surtout de l'intérêt pour les étapes à courte constante de temps.
Dans une architecture trois tiers il faut l'utiliser au premier tiers (interactivité réactive). En troisième tiers on a des calculs et des accès aux bases de données qui sont plus longs et qu'il faut souvent sérialiser (surtout pour les bases de données dynamiques). Le multithreading a moins d'intérêt.
La différence de comportement entre premier et dernier tiers conduit aussi à déconseiller des les mettre sur une même machine. Les optimisations ne sont pas les mêmes.
Bien sûr ça dépend beaucoup des caractéristiques des applications.
Manu
Hi, et merci pour cette réponse.
Notre architecture nous permet une séparation ferme des applications. frontaux sur une barre de machines, moteurs java (enhydra) sur une autre, et bases de données sur un cluster sybase (+ des interrogations de flux en temps réel sur des vips-repartiteurs de charge-)
Les back-end assemblent les pages grace au mod_perl, generant tout ce qui est graphique et assimilé par l'intermédiaire de servlet java.
Etant donné l'activité sur ces back-ends, il me semblait intéressant d'activer ce support multithreat materiel, afin de le combiner avec le fait que nous avons désormais du bi-pro dualcore... (optims...)
Ca a l'air de coller ? :)
Notre architecture nous permet une séparation ferme des applications. frontaux sur une barre de machines, moteurs java (enhydra) sur une autre, et bases de données sur un cluster sybase (+ des interrogations de flux en temps réel sur des vips-repartiteurs de charge-)
Les back-end assemblent les pages grace au mod_perl, generant tout ce qui est graphique et assimilé par l'intermédiaire de servlet java.
Etant donné l'activité sur ces back-ends, il me semblait intéressant d'activer ce support multithreat materiel, afin de le combiner avec le fait que nous avons désormais du bi-pro dualcore... (optims...)
Ca a l'air de coller ? :)
Rebonjour,
Si je comprends bien, ce que vous appelez backend, c'est à la fois le deuxième tiers (assemblage de pages, servlet Java) et le troisième tiers (Sybase). Si vous voulez des performances, ce n'est pas conseillé d'avoir des machines qui fassent les deux (je ne suis pas sûr d'avoir compris votre description, j'ai peut-être mal interprété).
En tout état de cause, vous ne gagnerez pas beaucoup en multithreadant au troisième tiers, vous allez perturber l'ordonnancement déjà bien fait par Sybase. Vous gagnerez plus en deuxième tiers, et encore plus en premier tiers.
Je dis cela dans un cas général, mais il faut vérifier dans votre cas particulier.
Manu
Si je comprends bien, ce que vous appelez backend, c'est à la fois le deuxième tiers (assemblage de pages, servlet Java) et le troisième tiers (Sybase). Si vous voulez des performances, ce n'est pas conseillé d'avoir des machines qui fassent les deux (je ne suis pas sûr d'avoir compris votre description, j'ai peut-être mal interprété).
En tout état de cause, vous ne gagnerez pas beaucoup en multithreadant au troisième tiers, vous allez perturber l'ordonnancement déjà bien fait par Sybase. Vous gagnerez plus en deuxième tiers, et encore plus en premier tiers.
Je dis cela dans un cas général, mais il faut vérifier dans votre cas particulier.
Manu
Hi :)
Non, nos backends ne supportent que les moteurs applicatifs java, les bases de données étant localisées sur un cluster externe, et les flux temps réels sur des vips externes.
En l'occurence, si je suis votre réflexion, il pourrait être intéressant de jouer avec le mutlithreading au deuxième tier, qui est la question originelle... :)
Quoi qu'il en soit, il me semble que des tests d'imposent :)
Merci beaucoup pour vos réponse et bonne journée
Emeric
Non, nos backends ne supportent que les moteurs applicatifs java, les bases de données étant localisées sur un cluster externe, et les flux temps réels sur des vips externes.
En l'occurence, si je suis votre réflexion, il pourrait être intéressant de jouer avec le mutlithreading au deuxième tier, qui est la question originelle... :)
Quoi qu'il en soit, il me semble que des tests d'imposent :)
Merci beaucoup pour vos réponse et bonne journée
Emeric