miércoles, 18 de noviembre de 2009

Remoting vs WCF

Debido a un tema de tecnología actualmente en el trabajo hemos tenido que realizar una cantidad importante de pruebas respecto de Remoting y WCF. En principio necesitamos modelar toda una serie de desarrollos orientados a objetos (OO) con una plataforma que nos permita operar los mismos desde cualquier lugar de forma (generalmente) SingleInstance.
En principio pareció simple evaluar y decidir, pero el tema entre Remoting y WCF parece más problemático que un clásico de fútbol. Incluso los foros tienden a sugerir una u otra tecnología basados en datos directos, como ser que uno tiene más performance que otro (lo cual es cierto en general) pero no basándose en cual es la mejor opción según la arquitectura.

En general todo aquel allegado a Microsoft sugiere inmediatamente WCF, para el caso nuestro la realidad es que dicha tecnología, aunque a mi me encanta, no nos sirve del todo y nos trae enormes complicaciones ya que genera un overhead importante, una cantidad de código adicional muy significativo, y ciertas cosas que no son para nada transparentes, como ser el hecho de enviar las excepciones tal cual se produjeron en el servidor.

Uno de mis compañeros abrió un post en Social MSDN y fuimos evaluando y preguntando según el feedback de usuarios y personas relacionadas a Microsoft, pueden seguirlo en la siguiente dirección:

http://social.msdn.microsoft.com/Forums/es-ES/wcf/thread/47948574-a573-4a9b-a470-e234720ba520

De todas maneras el tema es aún mucho más complejo, continuando con las pruebas encontramos pros y contras en ambas tecnologías, a tal punto que al margen de ser Remoting la antigua (pero aún subyacente) y wcf en teoría el futuro, optar por una u otra nos traería gran cantidad de problemas y beneficios.

En sucesivos post's agregaré información relacionada a lo que fui encontrando punto por punto entre ambos. En principio la opinión formal de Microsoft es que Remoting "es lo que es"; nada más se le agregará y tenderá a discontinuarse en el futuro, algo que dudo ya que internamente la tecnología que usa WCF es remoting! El futuro parece ser WCF pero hay una gran diferencia, hay un cambio de paradigma que para arquitecturas fuertemente orientadas a objetos, complica más el desarrollo de lo que ayuda.

Posteriormente desarrollaré el tema para que tengan información al respecto y puedan decidir o guiarse por lo que comentaré de ambas tecnologías. Por mi parte, me gusta mucho WCF y lo use o no en este proyecto, lo tendré en cuenta para todo lo que necesite en cuanto a arquitecturas orientadas a servicios (SOA).

No hay comentarios:

Publicar un comentario