16 juillet 2006

Les joies de l'intégration

Une servlet avec du joli code Java qui marchait bien sur de l'Intel Core Duo, ne fonctionne plus après déploiement sur un Mac mini PowerPC G4.

Je n'arrive plus à lui dire de lire plusieurs octets à la fois en HTTP :
final InputStream is = socket.getInputStream();
// Ne fonctionne pas sur le Mac mini :
// final int byteCount = is.read(bytes, 0, 4096);
// --> SocketException: Illegal Argument
final int b = is.read(); // Pour le Mac Mini.

Résultat de ce changement : perfs -11%


Ah, et incidemment, toujours sur des tests en LAN, le déploiement de la servlet sur le PowerPC G4 rend l'ensemble 2,6 fois plus lent qu'avec le déploiement sur le Core Duo.
  • PC : Core Duo 2,8 GHz / 2 Go, Windows XP, JDK Sun 1.4.2_11, Tomcat4
  • Mac : G4 1,25 GHz / 512 Mo, NetBSD 3.0, JDK Blackdown 1.3.1, Tomcat4

2 commentaires:

Anonyme a dit…

"Une servlet avec du joli code Java qui marchait bien sur de l'Intel Core Duo, ne fonctionne plus après déploiement sur un Mac mini PowerPC G4"

Est-il possible de te citer dorénavant ?

David Andrianavalontsalama a dit…

Ha ha, je te vois venir.

Mais c'est surtout un problème d'OS : la JRE 1.3 de Blackdown sous NetBSD ne fait vraiment pas des merveilles, or c'est la seule disponible à l'heure actuelle pour NetBSD/PowerPC.

J'attends toujours d'y faire tourner AWT en headless sous Xvfb, par exemple.

En d'autres termes : je n'arrive pas à y utiliser Batik pour faire des GIF / PNG à partir de fichiers XML SVG.

(c'est bien, hein l'informatique. Qu'on soit en haut ou en bas dans les couches techniques, le jargon reste incompréhensible)

Pour en revenir à ton commentaire, il faudrait que je teste sous MacOS X, mais "j'ai bien peur" que ça marche.