Saturday 2:40 p.m.–3:10 p.m.

XML-RPC : Pythonが「電池付属」と呼ばれる理由 (ja)

Ransui Iso

Audience level:
Intermediate
Category:
Libraries and Extensions / ライブラリや拡張

Description

Python標準ライブラリには数多くの有用な機能が含まれていて、いわゆる「電池付属なのですぐに遊べるよ!」を体現しているわけです。中でもXML-RPCライブラリは、その機能と応用範囲において突出しているものの1つですが、いまいち知名度が高くないようにも見えます。このセッションではPythonに付属するXML-RPCライブラリの使い所、実際にこれを使用したシステムを開発・稼働させているシステム開発者の視点からのTipsや改造方法、具体的なシステムの構築事例を紹介します。

Abstract

XML-RPCライブラリは、とても簡単に使いはじめることができ、そのままの状態でも様々なタスクをこなすことができます。このライブラリ自身も、SocketServerを始めとした有用な標準ライブラリをベースにしており、しかもPure Pythonで書かれているのですから、用途に応じた改造もまた簡単です。 真に高効率・ハイパフォーマンス・低レイテンシを求められる応用には向かないことは確かですが、簡便さ、柔軟性、そしてCPythonがインストールされている環境であれば、apacheやuWSGI等のサーバを必要とせず、どこでも利用できるという大きなメリットがあります。ちょっとしたリモートのリソースコントロールAPIをでっち上げたいというような場面において、このライブラリを使いこなせることは、様々な場面において大いなる武器となるでしょう。 このセッションでは、XML-RPCライブラリの基本的な使い方から始まり、スレッド対応、素の状態では送り込めないよりリッチなデータをやりとりする方法、サーバ側で発生したエラー状態をよりよくクライアントに伝える方法、サーバ側とクライアント側でPython2.xと3.xが混在する場合の注意点等、実用するためのTips及び改造方法、さらに、階層構造を持ち、約30万サイトが登録されているWebカタログシステムや、広告配信サーバの制御部分にどのように応用しているのか等の事例も紹介します。