ネットワークアプリケーション¶
HTTP¶
ハイパーテキスト転送プロトコル(HTTP)は、分散された共同のハイパーメディア情報システムのアプリケーションプロトコルです。 HTTPはWorld Wide Webのデータ通信の基盤です。
Requests¶
Pythonの標準urllib2モジュールは必要なHTTP機能のほとんどを提供しますが、APIは完全に壊れています。 これは、異なる時間と異なるウェブのために作られました。最も単純なタスクを実行するには、膨大な作業(メソッドのオーバーライドさえ)が必要です。
RequestsはPython HTTPからすべての作業を取り除き、Webサービスとの統合をシームレスにします。 クエリ文字列をURLに手動で追加したり、POSTデータをフォームエンコードする必要はありません。 キープアライブとHTTP接続ポーリングは、リクエスト内に埋め込まれたurllib3によって100%自動化されます。
分散システム¶
ZeroMQ¶
ØMQ(スペルのあるZeroMQ、0MQ、またはZMQ)は、スケーラブルな分散アプリケーションまたは並行アプリケーションでの使用を目的とした高性能非同期メッセージングライブラリです。 メッセージキューを提供しますが、メッセージ指向のミドルウェアとは異なり、専用メッセージブローカなしでØMQシステムを実行できます。 ライブラリは使い慣れたソケットスタイルのAPIを持つように設計されています。
RabbitMQ¶
RabbitMQは、AMQP(Advanced Message Queuing Protocol)を実装したオープンソースのメッセージブローカーソフトウェアです。 RabbitMQサーバーはErlangプログラミング言語で書かれており、クラスタリングとフェールオーバーのためにOpen Telecom Platformフレームワーク上に構築されています。 ブローカとのインターフェイスをとるクライアントライブラリは、すべての主要なプログラミング言語で使用できます。