Question

Je travaille pour une grande entreprise qui fonctionne beaucoup des serveurs x86 basés sur lesquels nous courons JVMs.

Nous avons expérimenté avec succès avec VMWare ESX pour obtenir une meilleure utilisation de notre centre de données. Mais ceux-ci consomment encore beaucoup d'énergie par unité de traitement.

J'ai eu une idée folle que nous devons ressusciter les ordinateurs centraux, nous pourrions accueillir soit beaucoup de JVMs ou machines virtuelles.

Quelqu'un at-il essayé? Y a-t-il des bons coûts-avantages?

Avez-vous perdu la flexibilité? Par exemple. nous avons mainframes dans d'autres parties de l'entreprise, mais ils semblent avoir une utilisation beaucoup plus rigide des machines .. beaucoup de contrôle des changements, de longs délais, etc

Était-ce utile?

La solution

Tout cela suppose que vous parlez de Java sur Z / OS et Linux ne fonctionne pas VM sur l'ordinateur central pour tirer profit des économies de coûts qui viennent avec moins de machines.

Mes réflexions sur la virtualisation sont à la fin de cette situation et il est probablement l'itinéraire que vous voulez regarder, mais je vais commencer avec Z / OS car il est ce que les ordinateurs centraux sont traditionnellement associés à et ce que j'ai connaissance. J'ai une certaine expérience avec Java central.

La réponse courte est, cela dépend, mais probablement pas. Quelles sont exactement vos applications? Le mainframe est un environnement difficile par rapport aux serveurs x86. Si vous utilisez des charges de travail d'E / S intensive dans quelque chose comme Websphere, il pourrait être utile, en supposant que votre ordinateur central est sous-utilisée.

Dans mon expérience, Java est lent horriblement sur un ordinateur central, mais c'est parce que le système j'été mis en place pour la flexibilité des développeurs plutôt que la performance. Cela va juste pour prouver l'optimisation des performances sur l'ordinateur central est généralement beaucoup plus compliqué sur un serveur moyenne depuis les ordinateurs centraux seront en cours d'exécution beaucoup plus charges de travail alors un serveur générique x86.

Rappelez-vous que l'ordinateur central est conçu principalement pour le débit d'E / S et peut surpasser tous les serveurs x86 normal à cela. Il n'a pas été conçu pour faire beaucoup de calculs de calcul intensif ne sera donc pas surperformer un petit groupe de serveurs x86 si vous faites beaucoup de mathématiques.

Le changement de contrôle sur les ordinateurs centraux sont là pour une bonne raison - si un serveur x86 a un problème, vous le redémarrer. Si un ordinateur central a un problème, chaque seconde que c'est est en baisse coûte de l'argent de l'entreprise. Vous devez également tenir compte de tout code natif vos applications dépendent ou bibliothèques de tiers qui peuvent utiliser le code natif. Tout ce que le code devrait être porté.

Configuration d'un ordinateur central prend également beaucoup plus longtemps en moyenne alors sur un serveur x86. Je suggère que, si vous voulez regarder sérieusement, vous faites une meilleure analyse de rentabilisation que les économies d'énergie, telles que l'intégration étroite avec les applications d'entreprise actuelles et commencer petit soit avec une preuve de concept ou une nouvelle application. Celui qui n'est pas critique d'affaires, qui peuvent être mis en œuvre pour tirer parti des points forts des ordinateurs centraux.

IBM mainframes peuvent également exécuter Linux en mode natif ou un environnement virtualisé similaire à VMWare. À moins que votre entreprise est l'exception à la règle, vos instances Linux courrais comme des machines virtuelles. Je ne l'ai pas eu beaucoup d'expérience avec cela, mais, si votre application dépend pas du code natif et fonctionne sous Linux, il serait probablement travailler sur un ordinateur central sous Linux. Pour plus d'informations sur Linux sur mainframes voir ce lien .

Autres conseils

IBM fait un co-processeur spécial Java que vous devriez sérieusement considérer. Je ne fonctionne pas Java sur les moteurs généraux car cela pourrait augmenter les frais de MPU pour les logiciels sous licence.

Nous avons une vaste expérience en cours d'exécution Java sous Windows, Linux et IBM SystemI (ou iSeries ou AS / 400, selon l'humeur d'IBM cette année-là) des mini-ordinateurs. Je suis d'avis que la plate-forme mini-ordinateur semble offrir beaucoup moins pour votre argent contre x86 multi-core moderne CPU.

Notez que Java bénéficie plus facilement d'avoir plusieurs cœurs disponibles que les logiciels typiques d'aujourd'hui, en raison de sa nature intrinsèquement multithread -. Ce serait encore plus vrai que vous exécutez plusieurs JVMs

Cela dit, vous serez généralement capable d'obtenir beaucoup plus de cœurs de processeur disponibles avec une meilleure bande passante pour accéder à la mémoire sur un mini ou mainframe, et un meilleur débit sur les sous-systèmes de disques (ensemble) de sorte que ces systèmes peuvent très bien beaucoup mieux l'échelle que vous lancer plus JVMs sur eux.

IBM permet. Certains de leurs ordinateurs centraux peuvent contenir des processeurs d'accélérateur Java qui exécutent le bytecode en mode natif pour plus de performance. Ils ont aussi des accélérateurs DB2, et peut-être quelques-unes pour les opérations XML.

Je ne l'ai jamais appris à jouer avec l'un d'eux, mais je vous aime.

Bien que je suis dans l'industrie depuis 1975, je ne suis plus sûr de ce qu'un « mainframe » est. Ma machine de développement en cours a quatre processeurs 3GHz en elle, 8 Go de RAM et 750 Go d'espace disque (RAID 1, il est donc vraiment que le double), et deux moniteurs à écran plat de 19 pouces.

C'est parce que je suis là sur un contrat. Les employés ont tous boîtes beaucoup plus puissants que le mien.

Je comprends que les machines serveurs, en particulier les serveurs de bases de données, sont beaucoup plus rapides.

Mainframe?

Selon vous la charge de travail cela vaut regarder!

Il y a un nombre ahurissant d'options disponibles pour vous simplement en utilisant le matériel IBM:

  1. Son vaut vraiment la peine compte tenu de l'ajouter sur les processeurs java. (Ce sont en fait pas sous une forme différente de la norme CPUs sa juste qu'ils sont limité à des charges de travail Java jvm - et - le plus important sont exclus licence du logiciel à base de cpu prix).

  2. Vous pouvez exécuter Linux multple machines virtuelles chaque ruuning Thier propre application Java.

  3. Vous pouvez exécuter plusieurs machines virtuelles en natif Thier système d'exploitation minimaliste utilisé pour être appelé DOS, mais ils changent le nom tous les deux ans. Les licences de logiciels sont moins chers que le principal système d'exploitation, mais il a très limité fonctionnalité qui se révèle être un avantage si vous utilisez AUTONOME applications.

  4. Vous pouvez exécuter dans l'environnement monstre z / OS soit: -

a. Au sein de l'USS (Unix System Services) qui est à peu près plein UNIX       OS fonctionnant dans la z / OS parent.

b. Lancez votre application java dans sa propre tâche a commencé (== démon unix).

c. Lancez votre application à l'intérieur CICS.       (Probablement pas que vous devez utiliser l'API CICS / Java où vous le feriez        normalement utiliser Servlet / API J2EE donc vous besoin d'une application de réécriture.)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top