2011-03-06 11 views
6

Estoy trabajando con Erlang y necesito hacer solicitudes HTTP eficientes.Erlang HTTP Client: inets o ibrowse or ...?

¿Cuál es el cliente HTTP "estándar" actual para Erlang/OTP?

¿Es inets o ibrowse o algo completamente distinto?

Cualquier consejo o consejos apreciados.

Respuesta

7

Estamos usando lhttpc, que funciona bien para nuestros casos de uso, pero no lo hemos hecho extensamente puntos de referencia de las alternativas. El "estándar" es, por supuesto, el que se envía con OTP (httpc de inets).

+2

, sí, lhttpc es bastante decente. Lo encontramos escalable en multinúcleo. Lo mejor es que es bastante nuevo y pequeño, fácil de rastrear, sin pérdidas de memoria, etc. No sé nada, pero ya terminé con httpc. – user425720

+0

inets parece haber recibido mucho cariño en las versiones recientes de OTP y tiene soporte para un montón de cosas no incluidas en lttpc. –

-1

Si mi memoria funciona, inets es el servidor HTTP incorporado de OTP, por lo que es más o menos "estándar". En la práctica, sin embargo, no creo que sea preferible a otros servidores HTTP (mochiweb, yaws, etc.)

+0

La pregunta es acerca de las solicitudes http, no las respuestas, por lo que los servidores son irrelevantes. –

+0

También se preguntó específicamente acerca de los inets, por lo que no es necesario el downmark – Alfamale

0

Actualmente se ha incorporado un cliente FTP y un cliente y servidor HTTP en Inets. Inets es solo un servidor web. Algunos de los clientes Http en Inets son Inets Http (d) que es una implementación de Http 1.1.

he utilizado antes ibrowse, es un cliente http 1.1. Puede usar ibrowse para hacer solicitudes http. abra su terminal Erlang e inicie ibrowse, pero asegúrese de tener la carpeta ibrowse en su carpeta de lib de Erlang en C: \ Program Files \ Erlang \ lib. En su tipo de terminal Erlang.

ibrowse: start(). , haga las solicitudes http como. ibrowse: send_req ("http://ajax.googleapis.com/ajax/services/search/web?v=1.0 & q = animal", [], obtener).