【任务发放】优化 solon-flow (有包含结构的)网关的流入流出架构,使不再需要记录栈和计数器
Open
Nobody has claimed this yet.
enhancement
- Dominant language
- Java
- Stars
- 2.8k
- Forks
- 282
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 1
Description
目前的处理方式,是在执行时:
按自然的线路去运行。当线路经过流入侧(拦栅)时,需要按流出时计数进行拦阻并只让最后一次通过。
优化方向:
- 添加 ChainBuilder 或 ChainDecl,用于申明 Chain
- Chain 的构建分为:申明(List 结构) 和 构建(部分 Tree 结构)2部分(或2阶段)。且构建后不允许再调整
- 构建时对 Chain 做预转换处理,把网关的“后续”节点,转换为“内部”结点。
示意:
//旧(所有元素并列,用线连接)
包容网关->a->b-包容网关
//新(部分网关,转为包裹关系。更利于运行)
包容网关(a->b)
//有了“包裹”关系后,就不需要栈记录和记数器了。
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the current solon-flow gateway execution path, focusing on how stack records and counters handle inclusive gateway entry and exit. Compare that behavior with the proposed ChainBuilder or ChainDecl declaration and build phases. Done means the gateway's following nodes are represented as wrapped internal nodes and the existing stack and counter mechanism is no longer required.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100