Openstack的web管理端相關

CL.TANG發表於2016-10-18

openstack的web管理端技術方面要關注的問題。

同步?非同步

先說瀏覽器的同步和非同步,我們知道的瀏覽器可以使用ajax實現非同步請求,就是瀏覽器在請求資料的時候,我們管理員還能對瀏覽器就行其他操作。 而不是一直等待瀏覽器相應回傳資料。

對於openstack的管理端來說,實際上涉及了3方面的"端"。

瀏覽器

瀏覽器是直接呈現給使用者的,所以主要關注方向應該是使用者體驗,流程清晰度。

 

dashboard介面


這裡的dashboard介面對於瀏覽器來說是伺服器端,對於openstack給我們暴露的API介面來說是客戶端。既然瀏覽器有非同步的請求方式,那麼我們這裡 的dashboard之於openstack的API來說也應該有非同步的請求方式,否則,如果採用同步請求API方式,將在頁面會有的效果是:一個請求沒有完成,dashboard 的程式不響應其他請求!

openstackAPI


openstack的API是遵循RESTFUL方式,包括nova-client,keystone-client,glance-client等等元件,他們共同為dashboard的元件提供了管理雲的介面。

框架

我們採用python的tornado框架實現,因為他的高併發,支援非同步,簡單精簡的原始碼,一個python程式設計師只需要大致1個星期就能使用tornado來進行開發web應用。 對比django需要在django中有比較長時間的開發經驗,程式設計師陷入框架內部錯誤,內部程式碼時間太多。

相關文章