> Windows
Utilisation de fichiers Zip avec Java

Utilisation de fichiers Zip avec Java

par Julian Monypenny
L'utilitaire Archiver unit les fonctionnalités des fichiers zip et le coding Java Le fichier zip est le format d'archivage de fichiers standard sur PC. Un fichier zip peut stocker des milliers de fichiers, et leurs chemins dans un format comprimé. Les fichiers zip font gagner de la place tout en simplifiant la distribution de fichiers multiples. De nombreuses plates-formes, dont l'AS/400 et le RS/6000, possèdent l'outil zip PkZip.

Java 2 accepte les fichiers zip. Plutôt que de fournir une version Java de PkZip, le SDK (Software Development Kit) Java inclut le package java.util.zip, qui contient des classes permettant de créer et de manipuler des fichiers zip.

Dans cet article, je présente Archiver, un outil zip Java côté client. J'explique comment utiliser Archiver et comment il utilise le package java.util.zip. Bien qu'ayant écrit Archiver comme une application côté client, son traitement des fichiers zip est tout aussi bon avec Java côté serveur.

Lire l'article
Microsoft Application Center 2000

Microsoft Application Center 2000

par Tao Zhou
Pour lancer un site Web majeur, la question de sa disponibilité et de ses performances est une considération essentielle à  prendre en compte. La mise à  l'échelle (ou scaling) matérielle ou logicielle sont des stratégies possibles pour traiter les problèmes de disponibilité et de performances. La première consiste à  installer un système multiprocesseur robuste et évolutif, par exemple un serveur à  8 voies avec des composants matériels redondants, comme serveur Web. La seconde permet de mettre en miroir le contenu Web sur plusieurs serveurs Web formant un cluster. Les serveurs en cluster peuvent avoir des configurations matérielles différentes : combinaison de systèmes anciens et nouveaux, de systèmes lents et rapides. Au fur et à  mesure que le trafic augmente sur le site, il est possible d'ajouter des machines au cluster. Pour mettre en oeuvre le scaling logiciel, vous pouvez utiliser un équilibreur de charge de serveur Web (également baptisé équilibreur de charge IP), logiciel qui dirige un client vers le serveur Web le moins occupé ou le plus approprié parmi plusieurs serveurs prenant en charge un contenu en miroir. Par exemple, pour équilibrer et basculer le trafic du client vers un serveur Web en cas d'incident, vous pouvez utiliser des produits comme le service NLB (Network Load Balancing) pour Windows 2000 ou WLBS (Windows NT Load Balancing Service) de Microsoft, le commutateur Web de Cisco Systems, ou celui de Nortel.

Bien que la mise à  l'échelle logicielle soit plus facile à  adopter et donne plus de flexibilité aux applications Web, que celle matérielle, il n'est pas facile de gérer le contenu et les applications Web entre plusieurs serveurs. Tous les changements apportés au contenu et aux composants applicatifs doivent être déployés sur tous les serveurs. Si le contenu des serveurs n'est pas en miroir, les utilisateurs obtiendront des résultats différents des serveurs d'un même site Web. En cas de panne des serveurs d'un cluster, un équilibreur de charge de serveur Web peut rediriger les requêtes des clients vers des serveurs en bonne santé. Mais il faut tout de même un outil pour surveiller la santé et les performances des serveurs

Pour faciliter la gestion des sites Web et des applications, Microsoft a développé Application Center (AppCenter) 2000, qui peut synchroniser le contenu du Web et déployer des applications COM+ entre plusieurs serveurs d'un cluster. AppCenter peut surveiller et communiquer l'état de santé et les performances des serveurs et du cluster. Outre l'utilisation de NLB pour équilibrer la charge des serveurs Web, AppCenter supporte le service CLB (Component Load Balancing), que Microsoft a retiré de Windows 2000 après la RC1 (Release Candidate 1) de la beta 3. Le service CLB peut équilibrer la charge du niveau médian (c'est-à -dire le niveau logique d'entreprise) des applications Windows à  plusieurs niveaux. Nous allons voir comment installer et tirer parti de la capacité d'AppCenter à  mettre en cluster, équilibrer la charge, et surveiller l'état de santé et les performances des serveurs Web.

Application Center 2000 peut synchroniser le contenu du Web et déployer des applications COM+ entre plusieurs serveurs d'un cluster

Lire l'article
Utiliser les MODS pour organiser et stocker des données

Utiliser les MODS pour organiser et stocker des données

par Jef Sutherland
Qui utilise les MODS dans les applications RPG III ? (à‡a y est, encore une abréviation !) Les structures de données à  occurrences multiples (en anglais, multiple-occurrence data structures ou MODS) sont des outils efficaces mais assez peu utilisés en RPG. Dans le présent article, nous couvrirons les principes de base de la déclaration des MODS et la manière d'écrire et d'extraire des informations dans des structures de données de ce type. Dans un prochain article, nous analyserons un sujet plus pointu : l'utilisation des MODS pour extraire et afficher des enregistrements. Pour déclarer une MODS, il faut créer une structure de données classique puis préciser le nombre d'occurrences

Lire l'article
Jeune et déterminée

Jeune et déterminée

par Isabelle Nougier
Le marché des logiciels libres croit évidemment de façon vertigineuse ces derniers temps, et des sociétés comme IdealX apparaissent aujourd'hui sur le devant de la scène pour promouvoir ces logiciels libres et accompagner les entreprises dans leurs projets Open Source

Lire l'article
Résolution de problèmes avec SQL Profiler

Résolution de problèmes avec SQL Profiler

par Itzik Ben-Gan
Retrouvez le coupable en reconstituant le crime… L'utilisation de l'outil de traçage SQL Profiler de SQL Server 7.0 est comparable à  l'aide qu'apporterait un enquêteur privé, permettant d'optimiser, de dépanner et de gérer un environnement SQL Server. L'article "Comment suivre un événement à  la trace avec SQL Server Profiler" présente l'architecture de suivi de SQL Server 7.0, et indique comment définir au moyen d'une interface graphique une fonction de suivi avec Profiler. Désormais, vous êtes prêt à  plonger dans des eaux plus profondes, et à  réexécuter les actions enregistrées par Profiler, et définir des actions de suivi automatique avec les procédures cataloguées étendues de suivi de SQL Server 7.0. Avec ces bases solides, on peut mettre à  profit Profiler et les procédures cataloguées étendues pour examiner différents cas de figure, allant des requêtes dont l'exécution est anormalement longue aux situations de blocage.

Si on souhaite réexécuter des traces, il faut d'abord mener quelques tâches préliminaires à  bien

Lire l'article
Initiation aux concepts de l’OO (Orienté Objet)

Initiation aux concepts de l’OO (Orienté Objet)

par Sharon L. Hoffman
En apprenant les concepts de base de l'orienté objet, on peut peser le pour et le contre de cette technologieLa technologie OO (Orientée Objet) a la réputation bien méritée d'être gourmande en temps et en argent. Pourtant, ses défenseurs affirment qu'elle permet de freiner la hausse des coûts de maintenance applicative. On comprend donc parfaitement que beaucoup d'utilisateurs hésitent à  investir dans cette technologie sans en avoir au préalable bien cerné les avantages et les risques potentiels. Il ne saurait être question d'expliquer la programmation OO dans un seul article. Cependant, en s'écartant quelques instants des détails de mise en oeuvre de Java et des complications du langage UML (Unified Modeling Language), on voit qu'il y a quelques concepts OO de base permettant de comprendre l'idée fondamentale et d'évaluer l'investissement nécessaire pour récolter les fruits que promet cette méthode de programmation.

Lire l'article
Le triple objectif du commerce électronique

Le triple objectif du commerce électronique

par Nahid Jilovec
Le succès du e-business est subordonné à  un plan d'action à  trois volets : retenir, élargir et étendre Décider comment intégrer le commerce électronique dans une organisation peut s'avérer être une entreprise très décourageante. Avant même d'envisager la création ou l'achat d'une solution, il est indispensable de définir précisément les futures fonctions des applications de commerce électronique.
Celles-ci peuvent varier considérablement en fonction de la nature de l'entreprise, mais les programmes d'action de commerce électronique doivent se fonder sur trois principes de base : élargir la marge de manoeuvre des employés, retenir les clients et étendre l'entreprise.

Lire l'article
Sept éléments à  connaître sur l’écriture de programmes RPG modulaires

Sept éléments à  connaître sur l’écriture de programmes RPG modulaires

par Bryan Meyers
Utilisez au mieux les techniques ILE pour écrire du RPG performant et facile à  gérer

La conversion des programmes RPG existants à  la syntaxe RPG IV n'est que la première phase du remaniement des applications nécessaires pour exploiter ILE (Integrated Language Environment). Il faut aussi concevoir et construire les applications au moyen de techniques et outils de modularisation ILE. Des modules contenant une ou plusieurs procédures présentent de nombreux avantages : meilleure productivité, code plus fiable, maintenance plus facile et, parfois, applications plus performantes que le modèle monolithique traditionnel. Je propose ici quelques pistes sur la manière d'examiner les applications existantes et de repenser les techniques de développement pour écrire un code RPG modulaire.

Des modules contenant une ou plusieurs procédures présentent de nombreux avantages

Lire l'article
Consolidation de serveurs: pour quoi faire ?

Consolidation de serveurs: pour quoi faire ?

par Sharon Hoffman
Tirez parti de la technologie AS/400 pour réduire les coûts induits d'administration des serveurs et améliorez par la même occasion l'efficacité de la gestion de vos systèmes. La consolidation de serveurs englobe toutes les stratégies et technologies capables de réduire le nombre ou la répartition géographique des serveurs que possède et gère une entreprise. Lorsqu'on minimise le nombre de serveurs et les connexions entre eux, les systèmes d'information fonctionnent de façon plus limpide.

Bien que le principal intérêt de la consolidation de serveurs soit de simplifier l'administration des systèmes, cette démarche peut également induire d'autres avantages allant de la réduction des coûts salariaux associés au personnel informatique à  une amélioration de la disponibilité des systèmes.

Bien que le principal intérêt de la consolidation de serveurs soit la simplification de l'administration, elle peut aussi induire d'autres avantage.

La consolidation des serveurs est un sujet d'actualité au sein de l'ensemble de la communauté informatique. Une rapide recherche sur Internet indique qu'IBM, Hewlett-Packard, Sun et Unisys plaident tous en sa faveur. Au départ, ces constructeurs utilisent tous le même raisonnement de base pour promouvoir leurs solutions de consolidation, à  savoir : la consolidation des serveurs contribue à  réduire le coût de revient global des systèmes.

L'AS/400 est une cible intéressante pour la consolidation des serveurs parce que ses points forts classiques, notamment un potentiel d'évolutivité et une fiabilité très élevés, sont essentiels pour la réussite de tout projet de consolidation de serveurs. Les fonctions d'administration système intégrées à  l'AS/400 contribuent également à  faire de cette plate-forme un concurrent efficace sur le marché de la consolidation des serveurs. Ces atouts, qui ont fait leur preuve depuis longtemps, sont désormais secondés par plusieurs nouvelles technologies AS/400, notamment le partitionnement logique, le clustering, le serveur NetFinity intégré, l'AS/400 NetServer et Domino for AS/400. Ces technologies améliorent d'autant le positionnement de l'AS/400 dans l'arène de la consolidation des serveurs.

Faut-il se lancer dans cette voie ? En fait, la réponse à  cette question dépend d'une corrélation complexe entre plusieurs facteurs dont les coûts et la fiabilité des communications, les prix des licences d'utilisation des logiciels, les possibilités d'évolution du matériel et l'attitude des utilisateurs.

Lire l'article
Les BSD, ou quand « logiciels libres » riment avec « fiabilité, performance et sécurité »

Les BSD, ou quand « logiciels libres » riment avec « fiabilité, performance et sécurité »

par René Beretz
Loin des feux de l'actualité, les Unix BSD offrent une fiabilité à  toute épreuve et poussent la spécialisation très loin. Derrière la vague médiatique de Linux, d'autres systèmes d'exploitation jouent, de manière plus discrète, un rôle important. Les Unix BSD occupent une place de choix sur de nombreux serveurs critiques, en particulier dans le monde de l'Internet, grâce à  des caractéristiques inégalées de stabilité. On les appelle aussi la famille *BSD.

L'origine de BSD remonte à  des travaux sur Unix réalisés par le Computer System Research Group à  l'Université de Berkeley, en Californie, dans les années 70. D'où son nom : Berkeley Software Distribution. En s'appuyant sur cette base, une communauté de volontaires s'est créée au début des années quatre-vingt-dix dans le but de fournir un système d'exploitation fiable, performant et sûr. Unix BSD a évolué de version en version jusqu'à  la version 4.4 (4.4BSD) dont les sources ont été publiés en 1994. Entre temps, plusieurs projets ont vu le jour : FreeBSD et NetBSD, auquel s'est ajouté OpenBSD en 1995. Une solution commerciale a également profité du mouvement : BSD/OS. Outre 4.4BSD, les projets intègrent d'autres modules bien rôdés comme le micro noyau Mach de l'Université de Carnegie Mellon et plusieurs outils GNU.

Unix BSD a évolué de version en version jusqu'à  la version 4.4 (4.4BSD) dont les sources ont été publiés en 1994

Chaque BSD poursuit un objectif précis : performance, portabilité ou sécurité. Même si le risque de divergence a existé à  une époque, la tendance est maintenant à  la complémentarité : il existe des passerelles entre les divers développements. Certains développeurs contribuent même à  plusieurs projets. Nicolas Souchu, d'Alcôve, insiste sur cette originalité : " Cette pluralité est un atout pour les entreprises. Il n'existe pas de BSD meilleur que les autres ; mais pour un besoin précis, il existe un BSD mieux adapté que les autres. "

Lire l'article
Des ponts vers le e-Business

Des ponts vers le e-Business

par Sharon L. Hoffman
Le nouveau middleware iSeries Connect d'IBM simplifie l'écriture de solutions e-business Pour les développeurs AS/400, l'élément logiciel le plus intéressant de l'annonce du 3 octobre 2000 d'IBM est un nouveau produit programme sous licence (LPP) (Licensed Program Product) appelé Connect for iSeries ou iSeries Connect. Dans le cadre du changement des noms IBM annoncé le 3 octobre, les derniers modèles AS/400 sont rebaptisés modèles e-Server iSeries 400. Pour en savoir plus sur iSeries 400, voir l'encadré. Le but d'iSeries Connect est de simplifier l'écriture de solutions e-business en facilitant l'accès aux ressources iSeries 400, comme les données stockées dans DB2 Universal Database for AS/400 (DB2 UDB) et les programme RPG existants. A l'aide de plug-ins et de connecteurs iSeries Connect, on peut développer des applications capables de transférer des informations entre la logique de gestion back-end et une interface utilisateur du type Web frontale, comme un catalogue en ligne.

Il est important de permettre la communication entre les différentes composantes des applications, les applications e-business présentent en effet généralement une structure à  trois niveaux dans laquelle les différentes parties de l'application s'exécutent sur des systèmes différents. Ainsi, le navigateur Web qui constitue le point d'entrée d'un catalogue en ligne fonctionne généralement sur un PC client, le traitement du caddie peut fort bien se faire sur un RS/6000 ou un iSeries400 jouant le rôle de serveur Web, et la logique de gestion chargée d'honorer les commandes fonctionne souvent sur un serveur back-end comme un iSeries400. Cette construction multiniveaux justifie le partitionnement d'une application afin de créer des programmes indépendants pour chaque fonction majeure. Mais pour que le partitionnement de l'application soit efficace, il faut que la transmission d'informations entre les partitions se fasse par une méthode, de préférence hautement standardisée. C'est précisément le rôle que joue iSeries Connect pour des applications e-business. Voyons donc de plus près cet outil et en quoi il simplifie le passage au e-business.

Les applications e-business présentent généralement une structure à  trois niveaux, dans laquelle les différentes parties s'exécutent sur des systèmes différents

Lire l'article
Issu de Monterey, AIX 5 L rallie Caldera et les OEM Intel

Issu de Monterey, AIX 5 L rallie Caldera et les OEM Intel

par Mireille Boris
Le projet Monterey qui a réuni IBM, SCO et Intel pour le développement d'un Unix 64 bits standard donne naissance à  un AIX 5 L. Volens nolens, tous les OEM Intel, de Compaq à  Unisys, vont supporter de l'AIX…IBM l'avait-il imaginé il y a un an? Monterey a été le nom de code de l'action concertée entre IBM, SCO et Intel. Au coeur du programme de développement, un Unix 64 bits dont AIX d'IBM, flanqué d'Unixware de SCO et de Dynix ptx de Sequent, était l'élément le plus important. Objectif : approcher en OEM les machines Intel.

Or, il s'est avéré que le nom le plus porteur était… AIX

Cet Unix collectif étant prêt à  sortir en juillet dernier, il s'est agi de le baptiser. Des agences de communication ont été consultées. Or, il s'est avéré que le nom le plus porteur était… AIX. "Avec le succès du S80, AIX avait une image très forte sur le marché", note Jean-Marc Ferré d'IBM. AIX 5, à  cause de sa composante Power PC dont l'AIX en était à  la V4 et AIX 5 L pour bien indiquer que l'affinité Linux est incluse dans cette nouvelle version. AIX 5L for Power, AIX 5L for IA 64 en attente de machines Itanium prévues pour le 10 octobre étaient disponibles en août. Mais les 2000 machines 64 bits Intel en circulation étant toujours considérées comme expérimentales et leur sortie en volume étant une fois de plus retardées jusqu'en avril 2001, la décision fut prise de ne pas se presser. Aix 5.0L for Power, 5.0L IA-64 restent des versions d'évaluation pour éditeurs. Les versions de production d'Aix 5.1L for Power et for IA-64 sortiront en avril en même temps que les serveurs Intel.

"Notre objectif premier est toujours un Unix standard, partagé par un marché plus large, avec un Unix qui a déjà  fait ses preuves sur Power", affirme Jean-Marc Ferré. Rien de changé dans l'accord avec Intel, qui apporte de l'argent pour financer les approches des éditeurs, ni dans l'adhésion d'un certain nombre de constructeurs. Compaq a communiqué sur ce sujet. Les Proliant supporteront AIX. Il n'y a pas d'autre alternative, Compaq ayant cessé de développer Tru64 sur plate-forme Intel. SCO apporte à  AIX 5 L un support constant. La stratégie de Caldera est de supporter des plates-formes Linux 32 bits, mais la composante SCO est plus robuste. Il va falloir un certain temps pour que Linux 64 bits monte en puissance de la même manière.

Benoît Maillard, de SCO-Caldera, confirme : "La division Serveurs et Professional Services de SCO est devenue Caldera Inc.. Le travail continue. Quand le nommage de l'OS Monterey 64 a été décidé, le choix s'est porté sur AIX 5L, malgré une petite résistance de la part de SCO. Mais prendre un nouveau nom aurait été perturbant dans un marché Unix en phase de consolidation. La bannière AIX est haut de gamme, ouverte, avec une connotation Linux. La filiation AIX est rassurante, et l'ouverture multiplates-formes d'IBM réelle à  tous les OEM du marché. Les OEM ont fait un peu la tête. Mais le business Unix sur Intel est profitable. Le volume des ventes de matériel avec SCO a dépassé les 4 milliards de $. Cela ne peut que continuer vers le haut. Unisys, Dell, Compaq, Bull, Fujitsu ou encore Acer jouent dans la pièce, et avalisent ce support. Plutôt que de fragmenter, ils participent à  la consolidation. "

Une partie importante du travail de Monterey a porté sur les applications. Oracle, BEA, BMC, CA, Cygnus pour les outils de développement, IBM logiciel, JDEdwards, I2, Informix, Software AG, Brio, Candle, Sybase, etc.., ont adopté la plate-forme très tôt. Actuellement, un système accessible à  distance depuis le Web est mis en place pour les développeurs. De leur centre de portage, IBM et Bull reçoivent les développeurs de logiciels avec représentation locale des programmes de recrutement des partenaires. Des centres semblables utilisant des octoprocesseurs Intel ont ouvert à  San Mateo, dans le Massachussets, en Allemagne et en Angleterre. Le catalogue de logiciels sera prêt en même temps que la V 5.1 et les machines Intel.

Les fonctionnalités NUMA et LPart sont inscrites dans AIX 5.0 L

Lire l'article
La revanche des I/O

La revanche des I/O

par Frank G. Soltis
Un système équilibré exige une mémoire et des entrées/sorties rapides Depuis toujours, les entrées/sorties (I/O : Input/Output) ont été les parents pauvres des modèles des systèmes informatiques. La vedette étant presque toujours le processeur. Pourquoi ? A cause de la suprématie du Mégahertz (MHz), la mesure des performances informatiques la plus répandue. Comme il est impossible de mesurer la qualité du système des I/O d'un ordinateur avec des MHz, les concepteurs ont le plus souvent ignoré cet aspect pour se concentrer sur les performances du processeur. Après tout, c'est quand même le MHz qui fait vendre. Qui, devant un nouvel ordinateur cherche à  savoir quelle est la bande passante des I/O plutôt que les prouesses en MHz du processeur ?
Pourtant, un ordinateur sans I/O, c'est comme une voiture sans roues, malgré toute la puissance du moteur, elle n'ira pas loin. Au même titre que la mémoire, le système des I/O détermine le temps de réponse et le débit de la plupart des ordinateurs. Ce sont ces mesures qui intéressent le plus les clients, même si les concepteurs de processeurs ne l'admettent pas.

La puissance des I/O pourrait alors bien devenir le seul critère distinctif

Heureusement, les choses sont en train de changer. Dans un futur proche, tous les ordinateurs, des PC d'entrée de gamme aux superordinateurs les plus rapides, utiliseront les mêmes briques de microprocesseur. La puissance des I/O pourrait alors bien devenir le seul critère distinctif.
Même les concepteurs de processeurs commencent à  prendre les I/O plus au sérieux. C'est ainsi que les concepteurs de la prochaine génération de puces microprocesseur PowerPC (appelées POWER4) mettent davantage en avant les largeurs de bande de leurs nouvelles puces plutôt que leur performance en MHz. La situation s'est inversée, et les I/O ont enfin leur heure de gloire. Et comme le système des I/O de la nouvelle iSeries 400 est très différent de celui de l'AS/400, il convient d'examiner les modifications apportées pour juger de leurs conséquences sur nos modèles de systèmes futurs.

Lire l'article
Linux : anatomie

Linux : anatomie

par Xavier Facélina
Cet article aborde le système Linux non pas par son histoire ou par son positionnement philosophique, politique ou économique, mais par sa structure technique. En traitant différents aspects de Linux, en allant du plus proche de la machine au plus éloigné, nous devrions arriver à  une compréhension globale de ce qu'est réellement Linux. Au coeur du système : un noyau (kernel). Tout est là . Linux s'articule tout entier autour de ce noyau dont le développement est réalisé par la communauté des kernel-developers, sous l'oeil vigilant de Linus Torvald en personne.

Lire l'article
Comment suivre un événement à  la trace

Comment suivre un événement à  la trace

par Itzik Ben-Gan
Tracez les problèmes de base de données avec les puissants outils de suivi inclus dans SQL Server 7.0 Suivre à  la trace les requêtes des clients et les réponses du serveur n'est pas chose facile avec les versions de SQL Server antérieures à  la version 6.5. Un outil de suivi freeware, appelé SQLEye, analyseur de trames réseau ODS (Open Data Services) peut permettre de s'en sortir mais il est difficile à  configurer et compliqué à  utiliser, même pour des opérations de suivi de base.

SQL Server 6.5 a apporté un outil graphique, SQL Trace, facilitant l'utilisation de SQLEye. SQL Trace, qui peut sauvegarder ses résultats dans un fichier trace ou un fichier script SQL, peut gérer un nombre limité d'événements et de filtres ; il indique également, par exemple, les instructions SQL passées par un client et les procédures cataloguées exécutées par le serveur. En revanche, on ne pourra pas savoir ce qui se passe à  l'intérieur du serveur. On ne saura pas par exemple quelles procédures cataloguées ont été appelées par d'autres procédures cataloguées, ou quand une connexion a mis en place ou libéré un verrouillage (à  moins d'utiliser SQL Server 7.0).

Profiler capture des informations détaillées à  propos des événements se produisant sur le serveur

Les puissantes fonctions de suivi de SQL Server, et en particulier de son nouvel outil de traçage, SQL Profiler, améliorent les fonctionnalités de SQL Trace et introduisent de nouvelles fonctions de suivi, d'analyse et d'optimisation de SQL Server. Profiler capture des informations détaillées à  propos des événements se produisant sur le serveur. Cela permet ainsi de passer dans les coulisses du problème ; on peut découvrir les requêtes aboutissant à  un blocage, les raisons de la lenteur de certaines requêtes, les opérations effectuées dans une procédure cataloguée, etc... Non seulement peut-on déterminer si un événement s'est produit, mais on peut également analyser les opérations ayant conduit à  cet événement. Outre l'interception des requêtes client et des réponses du serveur, Profiler enregistre les événements générés par les composants internes du serveur.

La configuration d'une trace Profiler de base est relativement simple. Mais on peut rapidement se retrouver noyé dans la masse des données générées par cet outil. Profiler résout le problème en fournissant des filtres permettant de contrôler la quantité et le type des données incluses dans le suivi. Le présent article permet de se familiariser avec SQL Profiler, et montre comment définir graphiquement une trace. L'encadré "Boîte noire SQL Server", décrit la fonction Flight Recorder de SQL Server, qui trace les 100 dernières requêtes. L'article "Résolution de problèmes avec SQL Profiler", analyse plus en détail les fonctions de suivi de Profiler et de SQL Server.


Boîte noire SQL Server


Les traces permettent d'analyser le comportement du système. Toutefois, l'analyse d'un problème donné peut se révéler difficile, car les événements ayant conduit au problème se sont déjà  produits. Pour parer à  toute éventualité, on peut créer une trace qui fonctionne en tâche de fond et de façon permanente. En plus de consommer des ressources systèmes, une telle trace génère trop d'informations difficiles à  analyser efficacement. Une autre alternative consiste à  essayer de reproduire le problème. Cependant, la solution la plus simple consiste à  utiliser la fonction Flight Recorder de SQL Server, qui enregistre les 100 dernières requêtes traitées. Les informations de Flight Recorder sont particulièrement utiles lorsque le système s'arrête brutalement.

Pour démarrer Flight Recorder, exécutez la procédure cataloguée étendue xp_trace_setqueryhistory 1. Cette procédure démarre automatiquement la fonction Flight Recorder à  chaque fois que SQL Server démarre. Pour arrêter la trace, exécutez xp_trace_setque

Lire l'article
Optimiser les performances batch de l’AS/400

Optimiser les performances batch de l’AS/400

par Rick Turner
Structurer les applications et optimiser l'environnement d'exécution batch pour une efficacité maximale Au cours des derniers mois, je suis intervenu sur certains sites AS/400 qui devaient multiplier par cinq voire même 50 leur charge de travail batch en back office. Le premier cas concernait une application de paie devant traiter 500.000 employés alors qu'elle en traitait 100.000 auparavant. Pour le deuxième cas, il s'agissait d'une banque qui, par suite d'un regroupement, devait passer de 600.000 comptes à  30 millions. Dans les deux cas, le traitement des nouvelles charges de travail devait être effectué dans le même laps de temps qu'auparavant.

Pour atteindre leurs objectifs au niveau des temps de traitement, ces clients devaient modifier leurs programmes applicatifs pour qu'ils exploitent au mieux la puissance de l'AS/400. La méthode consistait à  utiliser plusieurs copies des jobs de traitement, chacune travaillant sur des parties distinctes des données en entrée, pour effectuer davantage de travaux dans le même temps et en mettant davantage la CPU à  contribution. C'est tout à  fait possible puisque l'AS/400 traite parfaitement plusieurs jobs à  la fois.

Pourtant, malgré les modifications, les utilisateurs ne parvenaient pas toujours à  pousser le débit de leurs applications batch jusqu'aux limites des ressources du système. Et donc, ils ne pouvaient pas tenir les délais alloués. D'où leur question, "Comment effectuer beaucoup plus de travail dans un laps de temps identique?"

On peut apporter deux éléments de réponse : Utiliser au maximum la CPU et utiliser le disque jusqu'aux plus hautes valeurs de seuil recommandées. Cet article explique quelques méthodes de traitement susceptibles d'améliorer le débit d'un travail en batch. Je propose quelques idées générales sur la manière de structurer une application et de créer un environnement d'exécution optimal (pour le matériel et le logiciel), afin de réaliser le maximum de travail utile dans le minimum de temps.

Lire l'article
Exceptionnels ! Les Gestionnaires d’exceptions du RPG !

Exceptionnels ! Les Gestionnaires d’exceptions du RPG !

par Gary Guthrie
Passez en revue les possibilités de traitement des exceptions en RPG. Et voyez comment les gestionnaires de conditions et d'annulation de ILE pallient certaines des limitations du RPG/400Dring . . . dring . . . .

"Informatique. Francis à  l'appareil."

"Salut, Francis. C'est André du Service Financier. Un message d'erreur est apparu sur mon terminal il y a quelques instants, et maintenant plus rien ne fonctionne correctement !"

D'une voix calme, Francis demande, "Quel était ce message ?"

"Quelque chose à  propos d'un fichier ayant quelque chose, ou quelque chose de ce genre, je pense" répond André avec confiance.

"Pas de problème, je m'en occupe" répond Francis. Puis elle raccroche le téléphone et murmure "Bien, bien".

 Vous avez sûrement déjà  entendu çà , n'est-ce pas ? Heure après heure et franc après franc, les ressources de l'informatique s'amenuisent dès lors que les programmeurs consacrent un temps précieux aux réparations, après le crash d'une application. Or, on peut éviter les coûts et les migraines entraînés par les problèmes applicatifs, en plaçant le traitement des exceptions en tête de la liste des considérations en matière de conception d'applications.

Il existe de nombreux types d'exceptions et leurs techniques de traitement diffèrent en fonction de leur type, du langage utilisé, et du l'environnement modèle de programme (OPM et EPM vs ILE). Je classerai donc les exceptions en trois groupes distincts :

  • Exceptions concernant les fichiers. Il s'agit d'erreurs, comme les I/O sur des fichiers non encore ouverts, des types d'enregistrement indéfinis, des erreurs de programmes triggers et des erreurs d'unités.

  • Exceptions concernant les programmes applicatifs. Ce sont des exceptions comme des erreurs d'index de tableaux invalides, les divisions par zéro et les erreurs lors de l'appel de sous-programmes. La liste des erreurs de programmes possibles est énorme.

  • Exceptions associées au système. Il s'agit d'événements comme des défaillances de lignes de communications, des programmes annulés par les utilisateurs et une défaillance du code du système d'exploitation.

            Le plus souvent, des techniques de coding appropriées empêchent ces exceptions de provoquer des fins anormales. Les exceptions associées au système sont les plus délicates, parce qu'on les maîtrise parfois fort peu au niveau applicatif. Il est ainsi impossible d'écrire un code suffisamment parfait pour qu'il évite toute erreur du système d'exploitation.

            Quant aux langages évolués (HLL), chacun d'entre eux possède ses propres mécanismes de traitement des erreurs. Le CL par exemple, utilise abondamment la commande MONMSG (Monitor Message) pour piéger les exceptions. Les gestionnaires d'exceptions du RPG comportent des indicateurs d'erreur ou l'extension E sur certai

Lire l'article
Accéder aux membres de fichiers

Accéder aux membres de fichiers

par Jef Sutherland
Comment gérer les membres de fichiers, et quelques astuces de programmation CL pour générer un nom de membre unique Dans un récent article, nous avons vu les chemins d'accès indexés pour fichiers physiques et logiques, et comment lire des enregistrements à  partir d'un fichier avec clé. Aujourd'hui, nous allons examiner un autre aspect des fichiers AS/400 : les membres de fichiers. Nous allons aussi évoquer quelques astuces de programmation CL pour générer un nom de membre unique.

Lire l'article
XML: langage d’avenir du commerce électronique

XML: langage d’avenir du commerce électronique

XML fait actuellement son apparition dans de nombreux projets de commerce électronique XML (Extensible Markup Language) jouera probablement un rôle primordial dans le développement du commerce électronique. Sa capacité à  décrire les données dans un format ouvert standard aidera les consommateurs à  rechercher des informations produits sur le Web et simplifiera les échanges de données interentreprises par Internet. A n'en pas douter, XML transformera radicalement la manière d'acheter des consommateurs et, plus particulièrement pour les entreprises, celle d'acheter et de vendre des biens.

Dans cet article, nous allons examiner l'impact de XML sur le e-commerce.
Pourquoi suscite-t-il autant d'intérêt ?
Comment s'assurer de participer au devenir de XML et du commerce électronique ?
Les entreprises qui sont actuellement en train de mettre sur pied des transactions HTML devraient commencer sans tarder à  envisager XML.

A n'en pas douter, XML transformera radicalement la manière d'acheter des consommateurs

Lire l'article
HP et VA Linux optimisent les techniques d’impression Open Source

HP et VA Linux optimisent les techniques d’impression Open Source

par Mireille Boris
L'amélioration des techniques d'impression Open Source fait de Linux un OS crédible en bureautique et en pré-presse. Le code développé pour les pilotes d'imprimantes est de plus utilisé dans le logiciel embarqué des imprimantes. HP et VA Linux veillent sur ces travaux. La première conférence sur les techniques d'impression Open Source, organisée en août 2000 à  Sunnyvale en Californie, a connu un tel succès qu'il a été décidé d'en faire une manifestation annuelle, relayée par un sommet européen en février 2001. Organisée par Hewlett-Packard (HP) US et VA Linux, elle a réuni des représentants d' IBM, Sun, Canon, Epson, Lexmark, Okidata, Xerox, Microsoft et des développeurs appartenant à  Samba, Ghostscript, LPRng, CUPS, PDQ, SysAPS, Linux Internationalization Initiative, Xfree86, GIMP, GNOME, KDE, Red Hat, Suse, le groupe d'impression IETF.
HP a présenté la méthodologie de développement collaboratif de pilotes d'impression qu'il déploie en interne. Pour ce faire, il a fait appel à  plusieurs projets de développement de pilotes pour imprimantes HP présentés sur Sourceforge (exactement printing.sourceforge.net), le site que VA Linux dédie aux développeurs. Les services professionnels de VA Linux travaillent en conjonction avec HP dans le but d'améliorer le support d'impression de l'imprimante LaserJet de HP sous Linux et Samba (couche logicielle d'échange de fichiers Windows et Linux) et font évoluer la qualité et les fonctionnalités de l'ensemble des techniques d'impression Open Source.
Les pilotes disponibles pour la plupart des imprimantes sont le fruit d'un effort continu. Elles font partie intégrante de la distribution standard, de Suse, Red Hat à  Caldera. On les trouve également sur le site Sourceforge.
La qualité croissante de l'impression sous Linux s'ajoute à  l'existence de cartes graphiques de très bon niveau, en particulier les cartes N'Vidia. Linux ne se limite plus au back office; il devient un OS crédible en bureautique et en pré-presse. Une typographie de type nouveau est en train de naître, les Linuxiens rejetant celle des outils Microsoft, voire Macintosh.

Linux ne se limite plus au back office; il devient un OS crédible en bureautique et en pré-presse.

Le code des pilotes sous Linux sert parallèlement au développement de code embarqué dans les imprimantes elles-mêmes. Le noyau Linux y est souvent utilisé par défaut en raison de sa petite taille. Depuis un an, par exemple, eCOS, OS embarqué de Red Hat, fonctionne avec les imprimantes laser HL-2400CeN et HL-3400CN de Brother International. La portabilité et la conception d'eCOS lui permettent de transposer des applications créées pour la famille d'imprimantes HL-2400CeN et HL-3400CN vers de futures plates-formes, quelque soit le choix d'unité centrale.
Larry Augustin, PDG de VA Linux, a une formation de graphiste. "Notre compétence en stations de travail, nous permet de comprendre les problèmes de pré-presse et de post-presse dans les besoins de stockage multimédia. D'où la maturité de notre offre NAS 2905, plate-forme ouverte, Mac, NT, Linux ", précise Renaud Larsen, VA Linux Europe. Un secteur où VA Linux se retrouve en vive concurrence avec HP.
Rassembleur des initiatives Open Source, VA Linux a lancé l'OSDN Open Source Development Network, un réseau communautaire qui intègre les principaux sites Internet consacrés aux forums de discussions, au développement et à  la distribution des logiciels OpenSource dont www.sourceforge.net, questionexchange.com, www.freshmeat.net, www.themes.org, ww.thinkgeek.com, www.slashdot.org, www.linux.com, etc…

Lire l'article