Maison  >  Article  >  Tutoriel système  >  Le projet Linux : insuffler une nouvelle vie au projet

Le projet Linux : insuffler une nouvelle vie au projet

王林
王林avant
2024-01-03 15:54:14513parcourir
Présentation Après un échec très public au début du projet, l'équipe informatique d'une université prestigieuse a décidé de déployer son système d'enregistrement Web sous Linux, une décision qui a presque triplé le nombre maximum de visites d'utilisateurs sur le serveur.
Cause

En 1998, je travaillais pour une nouvelle équipe Web à l'Université du Minnesota, gérant leur groupe d'administration de serveur. L'Université du Minnesota est une très grande université, avec près de 6 000 étudiants de premier cycle dans chacun de ses collèges. À cette époque, l’école utilisait un système mainframe plus ancien comme système de gestion des dossiers des élèves. Ce système était obsolète, des changements devaient donc être apportés.

Ce système n'est pas de type Y2K (traduction LCTT : utilisez uniquement deux chiffres lors de la sauvegarde de l'année, ce qui oblige l'ordinateur à enregistrer l'année 2000 comme 1900, voir Que signifie la conformité à l'an 2000 ? pour plus de détails), nous allons donc en construire un alimenté par la société PeopleSoft Software pour fournir un nouveau système de gestion des dossiers des étudiants. Ce nouveau système fait beaucoup pour l'Université du Minnesota, non seulement en gérant les dossiers des étudiants, mais en fournissant également d'autres fonctions. Cependant, il manque une fonctionnalité clé : vous ne pouvez pas inscrire votre classe sur le Web à partir de votre navigateur.

Selon les normes actuelles, il s’agit d’un oubli majeur, mais dans les années 1990, Internet était encore un concept naissant. Amazon vient tout juste d'être créé, eBay n'existe que depuis un an, Google vient de naître et Wikipédia n'a pas encore vu le jour. Il n’est donc pas surprenant que PeopleSoft n’ait pas pris en charge la fonction d’inscription en ligne des cours sur le Web en 1998. Cependant, étant donné que l'Université du Minnesota est le berceau du réseau Gopher et qu'elle a développé un ensemble d'interfaces fonctionnelles Web pour le système mainframe précédent, nous pensons que la fonction d'inscription en ligne sur le Web est cruciale pour ce nouveau système de gestion des dossiers des étudiants.

Notre tâche dans cette équipe web est de mettre en œuvre la fonction d'inscription web en ligne de ce système de gestion.

Heureusement, nous ne sommes pas seuls. Nous avons contacté IBM et avons commencé à travailler ensemble pour créer ce nouveau système d'inscription en ligne au cours de la deuxième année. IBM est responsable de fournir l'environnement matériel et logiciel pour exécuter le système Web : 3 nœuds informatiques SP exécutant le dernier système AIX (système d'exploitation de type UNIX), les plates-formes IBM Java et IBM WebSphere, et l'utilisation d'un équilibreur de charge IBM pour implémenter les 3 partage de charge des nœuds.
Le projet Linux : insuffler une nouvelle vie au projet

Après plus d'un an de développement et de tests, notre système est enfin en ligne ! Mais malheureusement, les échecs ont suivi.

La charge est trop importante

Pendant le processus de développement, nous n'avons pas pu simuler et tester avec précision des scénarios réels dans lesquels de nombreux étudiants se connectent en même temps. La raison n'est pas qu'il n'existe pas d'environnement de test. L'Université du Minnesota dispose d'un progiciel de test de charge Web personnalisé et IBM dispose de ses propres outils pour le compléter. Cependant, ce système Web nous était si peu familier à l'époque que nous l'avons fait. Je ne réalise pas que ces outils de test ne peuvent pas répondre aux exigences.

Après plusieurs mois de tests, nous avons ajusté la charge attendue de ce système web à 240 utilisateurs simultanés. Malheureusement, notre utilisation réelle a été environ deux fois supérieure à celle prévue. Le premier jour de mise en ligne du système, plus de 400 étudiants se sont immédiatement connectés au système en même temps. La charge dépassant largement la valeur attendue, trois serveurs Web ont été mis en service. vers le bas directement. En raison de la charge élevée et soutenue, le serveur plantait constamment et devait être constamment redémarré. Une machine vient de redémarrer, et l'autre est tombée en panne et a redémarré. Cette situation a en fait duré un mois.

L'inscription ne pouvant se faire efficacement via le web, les étudiants ne peuvent s'inscrire que par la méthode originale : se présenter au bureau d'inscription, s'inscrire avec un stylo, puis sortir. Le journal local s'est également réjoui et moqué : "La panne des logiciels informatiques a obligé les étudiants à s'inscrire en présentiel !"
Le projet Linux : insuffler une nouvelle vie au projet

Face à l'échec, nous avons fait de notre mieux pour améliorer les performances du logiciel lors du prochain cycle de développement. Au cours des 6 mois suivants, nous avons frénétiquement essayé d'améliorer la capacité de charge de ce système. Malgré l'ajout de code supplémentaire et l'ajustement de plusieurs configurations, il ne pouvait toujours pas prendre en charge davantage d'utilisateurs. J'ai fait de mon mieux, mais j'ai quand même été confronté à l'échec.

Comme prévu, après le cycle d'itération suivant, nous étions toujours confrontés à un échec. Les serveurs tombaient en panne à maintes reprises en raison de problèmes de charge. Cette fois, le titre est devenu : « Le système d'enregistrement sur le Web est une connerie ».

Nous étions désespérés avant de commencer la prochaine itération de 6 mois. Personne ne sait pourquoi le serveur continue de tomber en panne, et nous nous attendons déjà à ce que ce problème soit désormais insoluble. Nous devons prendre certaines mesures pour résoudre ce problème, mais comment ? Voici comment nous en avons discuté.

Avez-vous besoin de passer à une nouvelle plateforme ?

IBM a introduit Linux à cette époque et a réalisé un développement secondaire pour ses plates-formes Java et WebSphere. Tous les produits sont certifiés RHEL par Red Hat et plusieurs fonctionnent déjà sur nos systèmes de bureau. Nous réalisons qu'il existe désormais un écosystème complet sous Linux pour faire fonctionner notre système de gestion web, mais est-il plus performant qu'AIX ?

Après avoir configuré un serveur de test et effectué des tests de charge de base, nous avons été surpris de constater qu'un serveur Linux pouvait facilement supporter la charge que les trois serveurs AIX précédents ne pouvaient pas supporter, en utilisant le même code Web, les plates-formes IBM Java et WebSphere, un un seul serveur Linux peut prendre en charge plus de 200 utilisateurs.

Nous avons informé le registraire et le CIO de cette nouvelle, et ils ont accepté de basculer le système d'enregistrement Web vers la plateforme Linux. Même si c'est la première fois que nous utilisons Linux à l'Université du Minnesota, l'échec est devenu une habitude et nous n'avons plus peur. AIX échouera, Linux est notre seul espoir.

Nous développerons immédiatement sur la base de Linux. Des collègues d'un autre groupe nous ont également fourni plusieurs serveurs Intel. Nous avons installé des systèmes Red Hat et les composants IBM associés sur les serveurs, puis avons effectué des tests de charge continus sur les nouveaux systèmes. Pour notre plus grand plaisir, il n'y a aucun problème avec le serveur Linux. .

Après deux mois de développement et de tests intensifs, notre nouveau système est enfin en ligne, et c'est un énorme succès ! Sous une charge énorme, le système d’enregistrement Web fonctionne parfaitement sous Linux. Le nombre maximal d’utilisateurs en ligne au même moment a même dépassé les 600. Linux a sauvé le système d'inscription en ligne de l'Université du Minnesota~

Expérience réussie

Quand je repense à ce projet, je vois que vous pouvez utiliser les points suivants pour présenter Linux à votre équipe :

1. Résolvez le problème, ne vous trompez pas ni ne trompez les autres

Lorsque nous avons proposé d’utiliser Linux en entreprise, ce n’était pas parce que nous pensions que Linux était cool. Bien sûr, nous sommes des passionnés de Linux et l'avons exécuté dans nos propres environnements, mais nous sommes dans l'entreprise pour résoudre les problèmes. Nous pouvons utiliser Linux parce que nos bureaux d'enregistrement et nos bailleurs de fonds conviennent que Linux est une solution au problème, pas seulement parce que Linux est cool et que nous voulons l'utiliser.

2. Apportez des modifications aussi minimes que possible

Notre succès repose sur le fait qu'IBM a déjà réalisé ses produits Java et WebSphere basés sur Linux. Cela nous permet de passer le système web d'AIX à Linux sans faire trop de modifications et d'adaptations. Par rapport aux deux, seuls le matériel et le système d’exploitation ont changé, tandis que les autres composants liés au système sont restés cohérents. Ce sont les pierres angulaires d’un changement de plate-forme réussi.
Le projet Linux : insuffler une nouvelle vie au projet
Le projet Linux : insuffler une nouvelle vie au projet

3. Soyez honnête sur les risques et les récompenses

Notre problème est évident : le système d'inscription en ligne a échoué lors des deux premières itérations et échouera probablement à nouveau. Lorsque nous avons fait part de notre idée à nos sponsors (passer d'AIX à Linux), nous étions pleinement conscients des risques et des récompenses impliqués. Si nous ne faisons rien, nous ne ferons qu'échouer. Si nous essayons de passer à la plate-forme Linux, nous pourrions réussir, et à en juger par les premiers résultats des tests, la probabilité de succès est plus élevée que l'échec.

Et même si le projet échoue toujours sous la plateforme Linux, on peut rapidement revenir sur le serveur AIX. Grâce à ces analyses et mesures minutieuses, le registraire a finalement pu nous permettre d'essayer Linux à l'aise.

4. Communiquez de manière concise et concise

Dans le processus de changement de plateforme de projet, nous avons élaboré un plan global. Nous avons écrit exactement ce que nous avions prévu de faire et pourquoi sur une feuille de papier vierge. La clé du succès de cette approche est la simplicité du plan. Les dirigeants n’aiment pas lire les idées techniques comme un roman ; ils ne veulent pas s’enliser dans les détails techniques. Nous planifions donc intentionnellement au niveau de l'exécution et décrivons au niveau du cadre.

Lorsque nous changerons de plateforme, nous informerons régulièrement les investisseurs des progrès en cours. Une fois le nouveau système terminé, nous soumettrons des mises à jour quotidiennes indiquant le nombre d'étudiants qui se sont inscrits avec succès via le système et les problèmes rencontrés.

Même si près de 20 ans se sont écoulés depuis ce projet, les enseignements tirés sont toujours d’actualité. Bien que Linux joue un rôle essentiel à cet égard, le plus important est que nous ayons réussi à canaliser les objectifs de chacun pour résoudre des problèmes courants. Je pense que cette expérience peut être appliquée à de nombreuses choses auxquelles vous êtes confronté.


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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer