Request Routing

流量分配 #

流量分配是一种操作流量走向的功能,是能够完全配置流量如何在服务网状结构中流动。这种路由规则在应用层工作,让你可以根据URI、端口或HTTP header配置灵活的规则。

通过solarmesh,可以方便的在页面为服务分配流量。选择已接入sidecar的服务,配置它的流量比例到不同的版本上。在配置生效后,您对该服务的HTTP请求将会按照比例分配到版本实例上。

试试看 #

假设我们已经部署过bookinfo示例项目(见 快速开始/安装/使用solarctl安装示例项目),并且为bookinfo示例项目的服务接入了sidecar(见 快速开始/接管服务)

访问我们事先部署好的示例项目bookinfo的页面,多刷新几次,您会发现在没有任何策略干预的情况下,页面中 Book Reviews 一栏呈现三种状态: 红星、黑星和无星,它们的出现概率约为1:1:1。

bookinfo-productpage

此时进入SolarMesh的流量视图界面,您可以看到这样的一幅流量拓扑图。

流量视图

此时可以发现,reviews 服务有3个版本对应着3种状态,我们先在 DestinationRule 上配置 reviews 的版本。

dr版本号

然后在 VirtualService 创建一份http策略,配置流量分配,我们为 reviews 服务的 v1 版本分配100%的流量。

流量视图-reviews-v1-流量分配

此时访问示例项目bookinfo的页面时可以发现,无论我们怎么刷新,页面中 Book Reviews 一栏只会呈现出无星的状态。

bookinfo-productpage-v1