@
a523 我不知道你所说的集群各节点是什么,如果你是指微服务的 endpoint 的话
各个 endpoint 通信用的 http, endpoint 和自己的 agent 通过 mq 走 rpc
虽然 endpont 都是 RESTfulAPI, 但是不同组件 api 设计不一样,版本不同也 api 也不一样
现在除了 keystone,几个大组件都走 pecan 了
但是原来的兼容代码也还在,如果不熟悉要看晕去
当然,这也是可以学习的地方,学习怎么在迭代版本的时候兼容旧接口
至于用 pecan
一是把原来部分放 paste-deploy pipline 里的过滤器改放到了 pecan 里
二是路由什么的也用了 pecan, 以前都用 routes 比较乱
openstack 里每个组件写的人不一样,功能也不一样,所以 api 也差异很大
比如 neutron 就非常 RESTfulAPI,而 nova 的就明显不同,应该是 api 的需求不一样
我感觉网络的资源表达更适合 RESTfulAPI, nova 那边如果只用 RESTfulAPI 没法表达
如果你想参考 RESTfulAPI 的 api 设计,看 neutron 的 server 比较好
不过嘛..openstack 这玩意你不熟悉整体,看代码要懵逼,不知道他为什么要这么做