|
|
Unix, RPC y XML
(19856 lectures)
Por Ricardo Galli Granada
gallir
(http://mnm.uib.es/gallir/)
Creado el 21/02/2001 00:00 modificado el 21/02/2001 00:00
|
Eric Raymond da su opinión acerca del proyecto XML-RPC | Pagina1/1 |
Aunque muchos crean que XML es "Windozera" (por la plataforma .NET), estoy convencido que está cambiando y cambiará muchas cosas en computación distribuida.
ESR da su opinión sobre el proyecto y dice es XML-RPC es mas "Unix friendly" que otras implementaciones más complicadas como el CORBA y DCOM de Microsoft. Creo que para los fanáticos del grep, awk y regexp no es ninguna novedad que los formatos "textos", aunque un poco mas costosos de interpretar, son los preferidos en el entorno UNIX.
Microsoft, Mozilla, y muchos otros ya se han dado cuenta. Espero que Gnome se replantee su uso de Corba. Llevo varios años intentando entenderlo, pero todavía no he podido pasar de los primeros capítulos. Cuando empiezan con el ORB, IIOP, POA e IDL ya estoy totalmente perdido. ;-)
Por otro lado, quizás ya no nos tengamos que aprender esos formatos rarísimos y diversos de algunos programas como el ftpaccess, sendmail.cf, named.conf, smb.conf, syslog.conf...
Aunque será una pena perderlos.
Lo bueno de los estándares es que hay muchos para elegir.
--ricardo
|
|
|
|
|
|
Comentarios Es posible que se hayan omitido algunos comentarios considerados poco constructivos
| 1. Re:Unix, RPC y XML (21/02/2001 22:38, #812) Por: Mateu Batle |
Yo también quiero opinar ;)
Como supongo que nadie lo va a hacer por estos lares, quisiera ser yo el abogado defensor de CORBA :)
1) Estoy bastante a favor de XML, pero según para que cosas. Lo encuentro una buena solución como formato universal para exportar / importar datos.
2) Tampoco confundiria CORBA con XML-RPC, son cosas diferentes. De hecho CORBA puede ir sobre XML-RPC (o SOAP), o al menos ya se ha empezado a redactar el estandard en la OMG. CORBA es bastante más que un protocolo de comunicación, es una arquitectura de objetos y servicios distribuidos. Con XML-RPC por si solo no basta, hay que poner algunas capas encima para poder ofrecer algo que se puede usar en aplicaciones de una forma mas o menos integrada.
En un principio, CORBA ni siquiera tenia un protocolo estandard, cada vendedor implementaba uno. Pero claro, asi no había interoperabilidad. Después se estandarizó el IIOP, y ya se arreglo la situación bastante. IIOP estaba bastante optimizado para su uso en entornos distribuidos. En cambio XML-RPC al ser texto con tags y todo esas historias siempre ocupará más, aunque también se podría comprimir, pero en este caso pierde bastante de gracia (y creo que tampoco está contemplado en el estandard de XML-RPC).
Una de las cosas que menos me gusta del XML-RPC es a la hora de transmitir datos binarios. Se han de codificar en base 64 (6 bits de datos utiles en cada caracter). O sea que aún más overhead. Imaginaos que rendimiento tendriamos para transmitir video, audio, ficheros binarios, etc. Esta claro que no se usará para estas cosas, al menos yo no lo usaría, a mi me gusta bastante la mirar la eficiencia :)
3) Es cierto que cuesta un poco meterse con CORBA.
Pero DCOM tampoco es moco de pavo.
Pero tampoco es para tanto, yo aconsejaría empezar a usar CORBA con java o mejor aún con lenguajes de scripting tipo Python o Corbascript. Se pueden probar ideas muy rápido y sin esfuerzo. Y el código es mucho más claro que en C++. Pero para cosas más serias, si que lo haría en C++. Lo más duro del C++ es la gestión de memoria, pero todo es empezar.
Si quereis un buen libro para programar en C++ con CORBA, mirad el "Advanced CORBA Progamming in C++". Es la biblia y lo que dice va a Misa. Los autores son Vinoski y Henning.
Un saludo,
Mateu | No es pot respondre |
2. Re:Unix, RPC y XML (21/02/2001 22:50, #813) Por: gallir (http://m3d.uib.es/~gallir/) |
En ningún momento "confundimos" XML-RPC con CORBA.
Pero CORBA _es_ una forma de RPC, es decir, ejecutar un procedimiento remoto/externo que puede o no estar en el mismo ordenador: la ubicación es lo de menos.
Siendo medio bestia es como decir que el C++, al ser um OOL no se hacen "llamadas" a funciones, sino que se "envían" mensajes. Aunque todos sabemos que el "envío" de mensajes es al fin y al cabo una llamada a un procedimiento (local) con una interfaz distinta (y otro paradigma de diseño e implementación), pero el C++ sigue siendo un lenguaje procedural, secuencial y con "llamadas a funciones", como el viejo Pascal o C.
O sea, la misma relación entre RPC-CORBA...
--ricardo | No es pot respondre |
3. Re:Unix, RPC y XML (22/02/2001 01:10, #814) Por: Mateu Batle |
| OK. Sólo quería exponer mi opinión de que CORBA estaba a más alto nivel que XML-RPC, y que de hecho CORBA puede usar XML-RPC como transporte de las llamadas. Esta claro que CORBA es básicamente RPC, pero hay más cosas que no he visto en la specificación de XML-RPC, que por cierto es muy simple, sólo tiene apenas media docena de páginas. Pero también supongo que ese era el objetivo, hacer algo menos pesado que CORBA y más fácil de usar. Aunque la de SOAP ya es bastante más extensa. | No es pot respondre |
4. Re:Unix, RPC y XML (22/02/2001 01:28, #815) Por: gallir (http://m3d.uib.es/~gallir/) |
Es que el truco está en el formato de datos y su estructura (XML). Puedes generar una estructura muy compleja de datos y usar siempre el mismo parser. Para hacer los mismo en DCOM o CORBA hay que definir protocolos de negociación e interfaces muy complejas.
Toda la "magia" reside sólo en eso. Nada tecnológicemente nuevo, sólo un estándard flexible y simple.
--ricardo | No es pot respondre |
5. Re:Unix, RPC y XML (22/02/2001 09:38, #816) Por: Mateu Batle |
XML está muy bién y es una buena idea. Pero en este caso creo que es una buena solución aplicada al problema equivocado.
- Es más ineficiente en términos de espacio y tiempo (el parsing también es más complejo)
- XML está muy bién para que la gente lo pueda leer y editar, pero para algo que es exclusivamente entre máquinas como el RPC, hay soluciones más adecuadas y flexibles.
- En mi opinión para RPC tampoco es necesaria tanta flexibilidad. En general, las llamadas remotas son bastante simples, pocos parámetros y de tipo conocido. Puede haber casos excepcionales en que se necesite información semiestructurada jerárquica (como XML), en ese caso podria pasarse siempre un string en formato XML. Por lo tanto XML sólo se usaría cuando fuera realmente necesario. Además los lenguajes de progamación tampoco soportan tanta flexibilidad a la hora de pasar parámetros a funciones o métodos.
- CORBA tiene muchas más cosas como transparencia, transacciones, seguridad, servicio de nombres, eventos, orientación a objetos, etc. Cuando XML incorporé esto se hará más complicado.
- XML-RPC es más simple visto sólo como eso. Pero hay más cosas que deben ser añadidas para que funcione: DOM, SAX, SOAP, etc.
- CORBA funciona transparentemente tanto si la llamada es distribuida como local. Y fue diseñado para que fuera eficiente. En XML-RPC no he visto nada de transparencia. Me tendría que mirar SOAP ...
- En caso de comunicar con "objetos locales", la ineficiencia de XML-RPC se notaría mucho más ya que para hacer una simple llamada local tendrá que hacer marshalling a XML, parsing de XML dos veces. Además los buffers necesarios son más grandes, más copias de memoria, ...
Mi conocimiento de XML-RPC y SOAP es bastante pobre. Por tanto es bastante probable que me haya equivocado en alguna de mis conclusiones.
Resumiendo, no digo que XML-RPC o SOAP no triunfen (Microsoft está detrás). Pero no creo que vaya a ser una solución universal válida para programación distribuida. Supongo que tendrá bastante éxito en Internet, pero para aplicaciones más grandes CORBA aún se va a usar. De todas formas, todo esto está muy verde aún, hace muy poco que ha salido y hay poca cosa funcionando. Ya hablaremos dentro de unos meses o años, igual sale alguna empresa con una solución mejor ;) | No es pot respondre |
6. Re:Unix, RPC y XML (22/02/2001 10:14, #817) Por: Mateu Batle |
Uy, que largo me ha quedado esto.
Me parece que no se lo va leer nadie.
A este paso ya podemos ir poniendo otro disco duro ;-)
Un saludo,
Mateu | No es pot respondre |
7. Re:Unix, RPC y XML (18/06/2001 19:05, #1632) Por: Alberto |
| Nada, nada, que pongan otro disco duro :) que gracias a comentarios como este nos ahoramos muchas horas de lectura de manuales en inglés | No es pot respondre |
8. Re: Unix, RPC y XML (27/01/2003 15:42, #11806) Por: Lino Figueroa |
Esto... un pequeño inciso... sobre la estandarización de CORBA... eso existe?
Intentar ejecutar un cliente corba Visibroker (por poner un ejemplo) sobre un Broker MICO (otro ejemplo) y veremos qué pasa... o mucho han cambiado las cosas en el último año o lo más probable es que se quede colgado (o que pase de nosotros).
Personalmente, y aunque M$oft este en medio, prefiero utilizar SOAP.
Saludoxxx | No es pot respondre |
9. Re: Unix, RPC y XML (22/09/2003 21:55, #17189) Por: TALO |
| Bueno de lo que recuerdo de CORBA y las PRUEBAS que se eralizaron con diferentes TECNOLOGIAS. CORBA esra una de las mas robustas he interesates, pero esto fue hace mucho tiempo, quisiera saber si alguien a realizado comparaciones recientes entre lo que es CORBA, y Microsoft (COM, COM+, DCOM, NET).
Quiero nuevamente ponerme al dia y realizar pruebas para que los comentarios que se den asi sean largos sean fundamentados.. | No es pot respondre |
|
10. Re: Unix, RPC y XML (13/06/2005 00:58, #27086) Por: Anónimo |
| Cobra ? Umm .... si esta bien, sobretodo para amantes del Silvester Stallone ese | No es pot respondre |
11. Re: Unix, RPC y XML (06/09/2005 20:44, #28214) Por: Hector Hidalgo Sepulveda |
| Yo agradezco mucho el tema, más creo que falto alguien que se pusiera con comentarios sobre SOAP vs XML-RPC que es algo que a varios nos podria ayudar a tomar desiciones por uno u otro.
Gracias. | No es pot respondre |
12. LLego .Net (18/04/2006 00:39, #32028) Por: rene |
| Lei el articulo, me parece buena la discucion y quisiera poder aportar con mi humilde opinion. Comenzando apenas a leer y trabajar con .Net pienso que el futuro de las aplicaciones distribuidas va en ese enfoque, el usar la tecnologia .Net como plataforma para construir aplicaciones en diferentes lenguajes que se puedan comunicar y compartir informacion de una manera transparente y estandar. Los web Services desarrollados en .Net resultan faciles de implementar y es que con el uso de XML y la seriabilizacion de objetos las cosas se facilitan bastante. Me queda decir que Java y sus tecnolagia de JavaBeans no esta sola en el mercado. Que estas tecologias(.net y javabeans) han de desplazar el uso de CORBA y similares. | No es pot respondre |
13. Re: LLego .Net (16/06/2006 13:37, #33236) Por: Uno |
| Estoy de acuerdo, aunque 5 años después del inicio de la discusión, incluso los que la empezaron lo estarán. | No es pot respondre |
|
|
|
|
|---|
|
|
|
|
Calificacion
    Vots: 18 |
Danos tu opinion:
|
|
|
|
|
|
|
|