API調用太麻煩 eBay推出Web查詢語言
eBay的ql.io開發者Subbu Allamaraju在他的博客中介紹了ql.io,“ql.io減少了編寫多個HTTP APIs請求的代碼量,并且能夠減少網絡的請求延遲和帶寬的占用。”
隨著ql.io的推出,eBay也加入到了大型網絡服務提供商的軟件開發陣營,這其中還包括Twitter的Storm數據流分析工具,LiveJournal的memcached數據緩存軟件,Facebook的Scribe日志工具集,以及Google的SPDY HTTP增強工具。
對于Web網站和Web Apps的開發者來說,編寫復雜的網絡處理代碼通常是一件非常痛苦的事情,Allamaraju曾在他的博客中寫過一篇《APIs are a pain》的文章介紹了相關的問題。
Allamaraju以一個客戶端程序為例進行了說明:一個商業網站的客戶端程序需要將商品的相關數據陳列在一個列表中,這需要使用三個獨立的API請求,一個處理商品搜尋,一個用于獲取商品的詳細信息,一個用于收集用戶的評論。他表示,編寫大量的APIs對程序員來說是一件非常繁重的工作,并且頻繁的API調用往往會產生許多不必要的網絡帶寬,同時對機器的處理能力也是一種浪費。
ql.io幫助開發者將多個請求合并為一個請求,Web服務器通過分析收到的請求將結果打包在一起返回給客戶端。
ql.io是一個事件驅動語言,它松散地依賴于SQL數據庫和JSON(JavaScript Object Notation)數據交換格式。要運行ql.io的腳本,需要在服務器端安裝一個node.js JavaScript解釋器。
Allamaraju在GitHub在線代碼庫中共享了ql.io的源碼,還增加了一些使用示例。
原文:http://www.webapptrend.com/2011/12/760.html
【編輯推薦】