HTTP effizienter nutzen mit WWW::Curl::UserAgent (Lightningtalk)
HTTP effizienter nutzen mit WWW::Curl::UserAgent aimed at Any and is held in Deutsch. This talk starts on 2014-03-26 at 17:30 for minutes. It takes place at the Stage.
Webseiten und REST APIs werden über das Protokoll HTTP abgewickelt. Mit
Parallelität und der Wiederverwendung bestehender TCP-Verbindungen
(KeepAlive) können große Mengen an Anfragen schneller abgearbeitet
werden. Durch eine Callback basierte Schnittstelle, wird der
Programmcode bei gleichzeitigen Anfragen optimal durchlaufen und so
Zeitverluste durch IO minimiert. Mit Vergleichen zu bestehenden User
Agents wie LWP::UserAgent, LWP::Parallel::UserAgent und
WWW::Curl::Simple können Vor- und Nachteile der Neuimplementation
beschrieben werden.
Das Modul WWW::Curl::UserAgent wurde bei XING entwickelt, dem sozialen
Netzwerk für berufliche Kontakte mit 14 Millionen Mitgliedern. Mit cURL
wird dort bereits, basierend auf dem Rubygem Typhoeus, ein REST Client
betrieben, der effizient einige hundert Millionen Requests am Tag
abarbeitet. Um diesen Durchsatz und die Stabilität ebenso zu erreichen,
wurde ein UserAgent entwickelt, welcher parallele Verbindungen mit
KeepAlive unterstützt und dafür auf die Bibliothek cURL zurückgreift.