说Horizon简单,是指它的部署架构简单,就是个单纯的基于django的网站,后台甚至没有使用数据库。不像Swift,Nova这些项目,有非常多的组件(xxx-server,xxx-api…),理清楚各个组件之间的关系,数据流的走向都要费一番功夫。Horizon用到的技术也比较传统,没有异步非阻塞,消息队列,websocket这些比较时髦的东西(目前没有),前端也只是bootstrap+jquery+less,没有什么很前卫的东西。
Horizon的复杂性分成两方面看:
Horizon需要和几乎所有的OpenStack service api打交道, 而且各个服务可能就还有多个api版本,api多版本的兼容不是都能在client里完成的(比如Keystone),Horizon还需要针对各个api的多版本做兼容。
Horizon
代码本身很复杂,抽象,利用了django相当多的高级特性,可以说把oop的概念运用到了极致,但这也为
过度自定制Horizon带来了麻烦。
链接: https://fly63.com/nav/835