Bonjour,
Dans le cadre de mon stage de fin d'études (il me reste qques semaines, j'ai passé des mois à faire de la théorie/recherche), j'aimerais faire une application multi tier afin d'optimiser les performances: un client final A sur PDA, un "proxy" B sur PC, un WebService C pour du caching qui utlise un webService D sur un autre PC ou internet.
(L'appli est juste une demo afin de mesurer le gain en perf; si dans ce qui suit, vous trouvez mes suggestions saugrenues, merci de faire part de vos idées).
VisualStudio.NET rend l'integration de tout cela plus facile. Les Web Reference creent un proxy WSDL afin que le module appelant puisse utliser des WebServices distants comme un appli locale en invoquant simplement les méthodes.
Dans mon cas, C peut accéder à D si D est sur l'intranet. Il semble que je me heurte au firewall qd je veux utiliser un web Service sur internet (googleAPI, ou Xmethods.net babelfish par ex.) puisque j'ai une erreur du type "unable to connect to server". Pourtant, de part leur définition, les WebService sont censé utliser HTTP et le port 80 pour passer à travers les firewall... Quelqu'un a t il déjà expérimenté ce genre de problèmes ?
L'acces B-C ne devrait pas poser de probleme. Petite "Web Reference" C dans B et cela devrait etre bon.
La ou cela se corse, c'est que je veux appeler B de A mais sans utiliser de WebService puisque le but de B est de transformer le XML/SOAP en un truc plus basique pour accélerer le transfert entre A et B. (des rapports montrent un overhead soap/xml qui triple la durée de transfert des donnés)
J'avais pensé à des sockets TCP, il suffira juste de transmettre des tableaux de string.
Mais du coup, je ne sais pas trop quel type de projet déclarer pour B : Windows App? (bof car pas besoin d'interface) Windows Service? Class ou Control Library ?
Class library est ptet le plus adaptée, mais peut on s'en servir pour envoyer des donnés via une socket ?
Si j'ajoute une référence de B dans A, cette DLL sera copié sur le PDA donc aucun interet. Je suppose donc qu'il ne faut pas que j'utlise les reference de VisualStudio entre A et B.
En fait, j'sais pas trop par ou commencer pour developper B. Any Ideas?
J'aimerais finir D et C avant en fait, mais comme je bloque sur D, je vais peut etre explorer d'autres voies. Si quelqu'un pouvait me trouver une solution pour D, je lui serait vraiment reconnaissant (j'ai posté un topic la dessus sur le forum asp.net)
Merci de vos contributions.