Selenium 4.x Grid各组件功能和执行流程
-
Node注册的时候,是通过Event Bus向 Distributor发消息
-
一个请求来了之后,会经过Router(Router也是唯一一个向外暴露的组件),Router就像路由器一样,判断Session是否存在
-
如果Session存在
- 3.1 Router会查询Session Map,得到Session对应的Node
- 3.2 Router发请求到Node处理
- 如果Session不存在
- 4.1 Router会将请求发到 Session Queue
- 4.2 Distributor会轮询 Session Queue, 然后看有没有合适的Node去创建Session(也是定时查看Node才能知道Node的状态)
- 4.3 如果没有Node可以创建Session
- 4.3.1 Distributor返回给Session Queue
- 4.3.2 Session Queue 返回给 Router
- 4.4 如果可以创建Session
- 4.4.1 Distributor返回给Session Map (更新map)
- 4.4.2 Distributor返回给Session Queue
- 4.4.3 Session Queue 返回给 Router
- 4.4.4 Router 再执行 #3