none
Servicio Web como capa de Datos.. RRS feed

  • Pregunta

  • Amigos como estan, necesito nuevamente sus consejos, estoy desarrollando una aplicacion windows par una empresa la cual tiene una sucursal, ahora las dos manejas base de datos locales, y tengo una transaccion que necesito se grabe en la base de datos de la sucursal y automaticamente grabe la misma transaccion en la base de datos de la matriz, para lo cual estoy queriendo usar un servicio web como capa de datos, o la tengo que usar como capa de negocios eso no lo tengo muy claro,este servicio se deberia consumir desde la aplicacion en la sucursal y este grabaria la informacion en la base de datos de la matriz, pero quisiera que me orientes con sus experiencias si esta es la mejor solucion para lo que necesito  y si  tienen algun buen manual en el que pueda guiarme para hacer lo que les indico ya que nunca he realizado un servicio web.

    Saludos
    martes, 18 de agosto de 2009 21:15

Respuestas

  • hola,

    lo primero que puedo aconsejarte si esta en tu posibilidad analiza utilizar WCF, es mil vences mejor que servicios web normales, o sea asmx

    bien por otro lado lo que planteas esta bastante bien, y dependera de como planteate tu arquitectura.

    por lo general puedes hacer una capa de servicio que actue a modo de application server, o sea una capa remota de negocio de tu aplicacion que orqueste toda la logica de negocio.
    si lo haces de esta forma esta sera la encargada de comunicarse con ambas sucursales en una llamada a sus servicio y realizar la actualizacion.

    hay una arquitectura interesante que lleva el nombre de ESB:

    Enterprise service bus

    Enterprise Service Bus Guidance


    pero por ahi esto es mucho de golpe, te recomiendo hacer si uso de WCF, y despues puedes ya sea desde tus clientes, o desde otro servicio concentrador llamar la actualziacion de las sucursales.

    este tema esta muy interesante y me gusta mucho, pero se que no es facil de aprender y requiere conceptos que por ahi no son tan faciles de digerir al principio

    te recomiendo dalre una mirada a este link:
    Application Architecture Guide 2.0


    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 18 de agosto de 2009 21:49
  • hola,

    mira te comento puede encontrar varios links que explican la idea que queiro transmitir que se qno es facil de entender, pero no imposible

    el mejores link son estos dos:

    Chapter 12: Intranet - Windows Forms to Remote WCF Using Transport Security (Original Caller, TCP)

    WCSF Application Architecture 7: Remote Logic with WCF Services

    como veras simpre hay una capa remota entre tu aplicacion cliente y el application server donde estara tu capa de negocio.
    ojo yo le digo datos porque esta puede aplica, pero puede ser que haya caso en donde esta capa que llamamos negovio sea simplemente un apsamano con la de datos, por eso a veces es dificil separarla, ejemplo si quiero desde la presentacion cargar un combo, en el aplication server tendre el servicio de wcf que me exponda esos datos, pero logico son simples datos en ese caso llmarlo negocio o datos es lo mismo.
    la diferencia esta cuando uno crear un servicio de wcf en la capa de apllication server que expone la funcionalidad para liquidar sueldo, bueno alli la cosa cambia ya que esta capa no lamara a una funcionalidad de la capa de datos ino trabajara con muchas entidades la logica ya no es un simple pasaje de datos.


    tambien pude ver este link
    Developing Business Logic using the WCF Service Library with VS2K8 and ASP.NET 3.5

    esta interesante por ahi no es exacto ya que usas una capa de presentacion web, y el servicio lo implementa sobre un host custom, pero si el hosto lo harias sobre iis, y la presentacion seria por medio de forms, seria un buen ejemplo.



    en el post anterior preguntas: Estare revisando los enlaces que me diste pero si quisiera que em orientes un poco mas, ahora si es mejor usar WCF en ves de un web service, en la solucion que tengo deberia agregar un proyecto de tipo Aplicacion de servicios WCF??

    en realidad no exiete un proyecto del tipo "aplicacion de servicio", en realidad este es conceptual, es como armas tu arquitectura, como se comunica, se llama aplication server, porque la logica de negocio esta en un servidor central, y la comunicacion remota la realizas con wcf, ojo te digo wcf porque a la larga es mucho asm simple de utilizar, pero puedes hacerlo con archivos asmx si te sientes mas comodo, o es mas hasta con remoting.


    saludos

    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    miércoles, 19 de agosto de 2009 0:27

Todas las respuestas

  • hola,

    lo primero que puedo aconsejarte si esta en tu posibilidad analiza utilizar WCF, es mil vences mejor que servicios web normales, o sea asmx

    bien por otro lado lo que planteas esta bastante bien, y dependera de como planteate tu arquitectura.

    por lo general puedes hacer una capa de servicio que actue a modo de application server, o sea una capa remota de negocio de tu aplicacion que orqueste toda la logica de negocio.
    si lo haces de esta forma esta sera la encargada de comunicarse con ambas sucursales en una llamada a sus servicio y realizar la actualizacion.

    hay una arquitectura interesante que lleva el nombre de ESB:

    Enterprise service bus

    Enterprise Service Bus Guidance


    pero por ahi esto es mucho de golpe, te recomiendo hacer si uso de WCF, y despues puedes ya sea desde tus clientes, o desde otro servicio concentrador llamar la actualziacion de las sucursales.

    este tema esta muy interesante y me gusta mucho, pero se que no es facil de aprender y requiere conceptos que por ahi no son tan faciles de digerir al principio

    te recomiendo dalre una mirada a este link:
    Application Architecture Guide 2.0


    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 18 de agosto de 2009 21:49
  • Gracias leando por tu respuesta, entonces no tengo que crear una capa de datos como servicio web, sino la de negocios??.
    En mi solucion deberia tener un proyecto de servicio web Asp.Net, o debo tener otra solucion, esto no lo tengo muy claro.
    Estare revisando los enlaces que me diste pero si quisiera que em orientes un poco mas, ahora si es mejor usar WCF en ves de un web service, en la solucion que tengo deberia agregar un proyecto de tipo Aplicacion de servicios WCF??, No se si tienes algun enlace a un ejemplo o manual en el que me pueda guiar
    Gracias
    martes, 18 de agosto de 2009 21:54
  • hola,

    mira te comento puede encontrar varios links que explican la idea que queiro transmitir que se qno es facil de entender, pero no imposible

    el mejores link son estos dos:

    Chapter 12: Intranet - Windows Forms to Remote WCF Using Transport Security (Original Caller, TCP)

    WCSF Application Architecture 7: Remote Logic with WCF Services

    como veras simpre hay una capa remota entre tu aplicacion cliente y el application server donde estara tu capa de negocio.
    ojo yo le digo datos porque esta puede aplica, pero puede ser que haya caso en donde esta capa que llamamos negovio sea simplemente un apsamano con la de datos, por eso a veces es dificil separarla, ejemplo si quiero desde la presentacion cargar un combo, en el aplication server tendre el servicio de wcf que me exponda esos datos, pero logico son simples datos en ese caso llmarlo negocio o datos es lo mismo.
    la diferencia esta cuando uno crear un servicio de wcf en la capa de apllication server que expone la funcionalidad para liquidar sueldo, bueno alli la cosa cambia ya que esta capa no lamara a una funcionalidad de la capa de datos ino trabajara con muchas entidades la logica ya no es un simple pasaje de datos.


    tambien pude ver este link
    Developing Business Logic using the WCF Service Library with VS2K8 and ASP.NET 3.5

    esta interesante por ahi no es exacto ya que usas una capa de presentacion web, y el servicio lo implementa sobre un host custom, pero si el hosto lo harias sobre iis, y la presentacion seria por medio de forms, seria un buen ejemplo.



    en el post anterior preguntas: Estare revisando los enlaces que me diste pero si quisiera que em orientes un poco mas, ahora si es mejor usar WCF en ves de un web service, en la solucion que tengo deberia agregar un proyecto de tipo Aplicacion de servicios WCF??

    en realidad no exiete un proyecto del tipo "aplicacion de servicio", en realidad este es conceptual, es como armas tu arquitectura, como se comunica, se llama aplication server, porque la logica de negocio esta en un servidor central, y la comunicacion remota la realizas con wcf, ojo te digo wcf porque a la larga es mucho asm simple de utilizar, pero puedes hacerlo con archivos asmx si te sientes mas comodo, o es mas hasta con remoting.


    saludos

    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    miércoles, 19 de agosto de 2009 0:27