Lundi 28 novembre 2005

Comme je vous l'avais dit pendant cet été, j'ai travalllé avec des collègues sur la Bêta test de Websphere 6XD...

Customer and IBM Business Partner Quotes

Unilog IT Services
"Unilog is a major system integrator in Europe and an early adopter of WebSphere software. The relationship has lasted for years as Unilog trusts in IBM software strategy. We decided to get involved in the WebSphere Extended Deployment beta program because many of our customers use WebSphere and we are convinced of all the business value our customers will get by deploying WebSphere Extended Deployment:

  • WebSphere Extended Deployment's dynamic clustering and virtualization of resources give our customers real opportunities to optimize their infrastructure costs by providing the right resources at the right moment."
  • WebSphere Extended Deployment's J2EE batch processing capability will allow the same team to develop and manage various application types, avoiding duplication of resources and saving costs."

--Mehdi Kasmi, Technical Director, Unilog IT Services

http://www-306.ibm.com/software/webservers/appserv/extend/quotes.html

par kasmi publié dans : Webspshere
ajouter un commentaire commentaires (0)    créer un trackback recommander
Mardi 27 septembre 2005

Rappel :

JUnit définit 3 classes principales:

TestCase qui est une classe de test. Chaque classe de test dérive de TestCase qui elle-même dérive de la classe Test qui est une classe de test. Chaque classe de test dérive de qui elle-même dérive de la classe .

TestSuite qui est un ensemble de tests qui dérive de la classe Test et qui contient des instances de la classe Test . Elle peut donc contenir des TestCase ou d'autres TestSuite ( Design Pattern "Composite") qui est un ensemble de tests qui dérive de la classe et qui contient des instances de la classe Test . Elle peut donc contenir des TestCase ou d'autres TestSuite ( "Composite")

TestRunner qui permet de lancer l'exécution d'une liste de Test. qui permet de lancer l'exécution d'une liste de Test.

Pour utiliser ce framework, il suffit donc d'écrire des classes de test dérivées de TestCase, placer une instance de chaque test dans une hiérarchie de TestSuite et enfin donner le tout à un TestRunner pour qu'il l'exécute.

Les méthodes de test

Dans toutes les précédentes versions, Junit utilisait la réflexion et les règles de nommage Sun pour localiser les méthodes de test.

import junit.framework.TestCase;

public class CalculerSalaireTest extends TestCase {

private int salaireMensuel = 1500 ;

private int prime = 5000;

public void testCalculerSalaireAnnuel() {

int salaireAnnuel = salaireMensuel *12 + prime;

assertEquals(23000, salaireAnnuel);

}

}

Dans JUnit 4, les tests sont identifies par l’annotation suivante: @Test

import org.junit.Test;

import junit.framework.TestCase;

public class CalculerSalaireTest extends TestCase {

private int salaireMensuel = 1500 ;

private int prime = 5000;

@Test void testCalculerSalaireAnnuel() {

int salaireAnnuel = salaireMensuel *12 + prime;

assertEquals(23000, salaireAnnuel);

}

}

L’avantage de l’annotation @Test est que vous n’avez plus besoin de nommer vos méthodes testNomDeMaMethode().

Du coup il est possible de renommer les fonctions de test de la manière que l’on veut.

import org.junit.Test;

import junit.framework.TestCase;

public class CalculerSalaireTest extends TestCase {

private int salaireMensuel = 1500 ;

private int prime = 5000;

@Test void SalaireAnnuel() {

int salaireAnnuel = salaireMensuel *12 + prime;

assertEquals(23000, salaireAnnuel);

}

}

Il n’est plus nécessaire d’étendre la classe TestCase pour avoir une classe de test. L’annotation @Test et l’import de la classe d’assertion (junit.Assert) suffit pour pouvoir utiliser les nombreuses methodes assertXXX().

import org.junit.Assert;

public class CalculerSalaireTest{

private int salaireMensuel = 1500 ;

private int prime = 5000;

@Test void salaireAnnuel() {

int salaireAnnuel = salaireMensuel *12 + prime;

assertEquals(23000, salaireAnnuel);

}

}

YoIl est aussi possible d’utiliser la notion d’import statique du JDK 1.5.

 

import static org.junit.Assert.assertEquals;

public class CalculerSalaireTest{

private int salaireMensuel = 1500 ;

private int prime = 5000;

 

@Test void salaireAnnuel() {

int salaireAnnuel = salaireMensuel *12 + prime;

assertEquals(23000, salaireAnnuel);

}

}

Cette approche permet de mieux tester les méthodes protected car la classe de test peut étendre la classe à tester.

 

 

 

 

 

 

par kasmi publié dans : Java
ajouter un commentaire commentaires (0)    créer un trackback trackback (1)    recommander
Vendredi 3 juin 2005

J'ai decouvert DB2 Alphablox  au IBM Consultant Interchange qui a eu lieu en mai 2005

c'est une solution de reporting "Light", ou plutot un toolkit, permettant de créer des rapports de manière simmple et de les intégrer dans n'importe quelle application J2EE.

Donc pour des solutions simple, ca evite les couts logiciels monstrueux des editeurs du marché et allonge un petit peu le temps de developpement.

Plus d'infos ici: http://www-306.ibm.com/software/data/db2/alphablox/

 

par Mehdi KASMI publié dans : Architecture Technique
ajouter un commentaire commentaires (0)    créer un trackback recommander
Vendredi 3 juin 2005

Voici un petit résumé des nouveautés de Websphere 6 ND (Network deployment)

  • Modèle de programmation
    - Was 6 supporte les J2EE suivants : 1.2, 1.3, 1.4
    - Description J2EE 1.4 : JAX-P 1.2, JAX-R, JAX-RPC, JSR109, SAAJ 1.1
    EJB 2.1, JMS 1.1, JCA 1.5, JMX 1.2 / JSR-077, JSR-088, JACC 1.0
    Servlet 2.4, JSP 2.0, JDBC 3.0, JavaMail 1.3
  • Meilleure prise en compte des Web services:
    • JAX-RPC
      Java API for XML based RPC : permet l ’invocation de méthodes distantes en utilisant SOAP et HTTP
    • WSI Basic Profile
      Basic profile est un ensemble de recommandations visants à faciliter l’interopérabilité
    • WS Security
      Répond au manque de sécurité dont souffrent les Web Services de 1ère génération
  • SDO (Service Data Object)
    Permet une représentation unifiée de données hétérogènes dans un format unique :Graphe XML
    Gestion des verrous, de la pagination et de la mise à jour des données : Diffgram
  • Haute disponibilité
    • Dispo de  99,999 % … avec architecture matérielle adhoc
    • module « High Availability Manager » : Le deployment manager n'est plus un SPOF
    • Système basé sur les mécanismes de tolérance de fautes utilisé en stockage comme les NAS (Network Attached Storage)
    • Hot standby & peer failover pour les services de type singletons
    • Simplification de la gestion de la haute disponibilité
  • Un serveur de messaging totalement J2EE et intégré, en mode synchrone et asynchrone pour JMS et services web
  • Une gateway de Web Services et des fonctionnalitésde médiation
  • WebSphere Rapid Deployment: simplification du deploiement en faisant du cpoier coller par exempl.
  • WRD: Le développeur ajoute des tags de métadonnées dans le source de l’application (Syntax XDoclet) : ceci permet de créer un EJB.grace à des meta données au format Xdoclet
par kasmi publié dans : Webspshere
ajouter un commentaire commentaires (0)    créer un trackback recommander
Samedi 14 mai 2005

Suite au rachat d'Ascential par IBM, la gamme des produits d'Ascential change de noms


Ascential DataStage ==> IBM WebSphere DataStage
Ascential QualityStage ==> IBM WebSphere QualityStage
Ascential ProfileStage ==> IBM WebSphere ProfileStage
Ascential DataStage TX ==> IBM WebSphere DataStage TX
Ascential Enterprise Integration Suite ==> IBM WebSphere Data Integration Suite
Ascential AuditStage ==> IBM WebSphere AuditStage
Ascential MetaStage ==> IBM WebSphere MetaStage


De plus, vers le lien suivant, IBM explique la suite qu'ils vont donner avec la gamme Ascential  http://www.ascential.com/news/products_faq.html

par kasmi publié dans : Architecture Technique
ajouter un commentaire commentaires (0)    créer un trackback recommander
Samedi 30 avril 2005

Commons Configuration est une API qui permet de charger des données de configuration multi-sources :

  • PropertiesConfiguration : à partir d'un fichier properties
  • BaseConfiguration : configuration sous forme d'objet.
  • XMLConfiguration : recupérer des config XML
  • JNDIConfiguration : recuperer des config à partir de JNDI
  • SystemConfiguration recuperer des proprietes systeme
  • ConfigurationConverter prends un  java.util.Properties ou o.a.c.collections.ExtendedProperties et la convertit en  Configuration object.

 

 

par kasmi publié dans : Frameworks Java
ajouter un commentaire commentaires (0)    créer un trackback recommander
Vendredi 29 avril 2005

Les "Alteon Application Switches" de  Nortel permettent de gérer la haute disponibilité et à équibrer  la charge d'applications ou de périphériques perfectionnés, de gérer le trafic de manière intelligente, de rediriger  des applications , de mieux gérer la sécurité et la gestion de la bande passante.C'est la solution idéale pour les entreprises, les sites de e-commerce, les fournisseurs de contenu et les prestataires de services qui veulent disposer de fermes de serveurs  performantes et à haute disponibilité.

par kasmi publié dans : Architecture Technique
ajouter un commentaire commentaires (0)    créer un trackback recommander
Vendredi 29 avril 2005

Authentification Forte URL
CRYPTOCard - Token Authentication www.cryptocard.com
RSA SecurID  http://www.rsasecurity.com/node.asp?id=1156
Safeword - Secure Computing http://www.securecomputing.com/index.cfm?skey=643
Vasco Digipass http://www.vasco.com/

par kasmi publié dans : Architecture Technique
ajouter un commentaire commentaires (0)    créer un trackback recommander
Mercredi 13 avril 2005

 

Répartition de charge entre serveurs HTTP

avec Websphere Network Dispatcher

-Part1-

 

Composant Network Dispatcher

Supposons que nous sommes en environnement demandant de disposer de plusieurs machines Web en frontal. Le composant Network Dispatcher va intercepter les requêtes clientes et les transmettre au serveur le plus adapté pour fournir une réponse. Il équilibre donc la charge des requêtes entrantes sur un ensemble de machines qui traitent le même type de requêtes.

Network Dispatcher peut répartir les requêtes entre plusieurs serveurs (notamment HTTP et Caching Proxy) en donnant des règles bien spécifiques à suivre.

 

Le Network dispatcher contient plusieurs modules que nous allons décrire brièvement dans les lignes suivantes.

• Dispatcher

Composant permettant de réaliser une redirection vers les serveurs en utilisant les méthodes :

à         MAC

à         NAT (Network Address Translation)

à         CBR : description ci dessous

 

• Content Based Routing (CBR)

CBR travaille avec Caching Proxy pour faire passer les requêtes des clientes aux serveurs http.

CBR permet de :

à         déterminer un ensemble de serveurs qui prendra en charge une requête en fonction de son contenu.

à         paramétrer plusieurs serveurs pour chaque type de requête.

à         détecter les incidents survenant sur un serveur et arrêter la direction de la requête vers le serveur défaillant.

 

 

• Site Selector

 

Un client envoie une requête à un serveur de noms appartenant au réseau.

Le serveur de noms achemine la requête vers le serveur contenant le service Site Selector qui résout le nom de domaine en adresse IP de l'un des serveurs cible et qui la lui renvoie. Le serveur de noms renvoie ensuite l'adresse IP au client.

Site Selector utilise le composant Metric server (installé sur chaque noeud) du dispatcher  pour

à         surveiller la charge d'un serveur

à         identifier les serveurs les moins chargés

à         identifier la défaillance d’un serveur

 

 

• Cisco CSS Controller & Nortel Alteon Controller

 

Ces contrôleurs font appel au Network Dispatcher et Metric Server pour déterminer la charge du serveur. Ils utilisent les informations fournies par ND et Metric Server pour calculer la pondération qu’ils envoient aux CSS Switch a Alteon .

Les serveurs Switch et Alteon utilisent les données fournies pour gérer la matrice des décisions d'équilibrage de charge.

 

par mehdi KASMI publié dans : Architecture Technique
ajouter un commentaire commentaires (0)    créer un trackback recommander
Mardi 12 avril 2005

Stratégies de cache
Strategie Explication
LRU(Least Recently Used)  Cette stratégie consiste à supprimer les fichiers les moins récents dans le cache. 
LRU-MIN  Stratégie LRU qui supprime les fichiers les plus volumineux et les moins récents
LRU-THOLD  Stratégie LRU qui ne copie pas les fichiers au delà d’une taille fixée.
LFU(Least Frequently Used) Cette strategie permet de supprimer les fichiers les moins utilisés.
GDS(Greedy Dual Size)  Stratégie permettant de calculer le rapport entre un critère  paramétrable (comme par exemple le temps de réponse) et la volumétrie de l’élément en cache..Ceux qui ont le plus petit rapport, sont éliminés.

par Mehdi KASMI publié dans : Architecture Technique
ajouter un commentaire commentaires (0)    créer un trackback recommander

Calendrier

Mai 2008
L M M J V S D
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
<< < > >>
Créer un blog sur over-blog.com - Contact - C.G.U. - Rémunération en droits d'auteur avec TF1 Network - Signaler un abus