opensolon / opensolon/solon-flow

【任务发放】优化 solon-flow (有包含结构的)网关的流入流出架构,使不再需要记录栈和计数器

Open
#3 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Java
Stars
37
Forks
11
PR merge metrics
No merged PRs in 30d

Description

目前的处理方式,是在执行时:

按自然的线路去运行。当线路经过流入侧(拦栅)时,需要按流出时计数进行拦阻并只让最后一次通过。

优化方向:

  1. 添加 ChainBuilder 或 ChainDecl,用于申明 Chain
  2. Chain 的构建分为:申明(List 结构) 和 构建(部分 Tree 结构)2部分(或2阶段)。且构建后不允许再调整
  3. 构建时对 Chain 做预转换处理,把网关的“后续”节点,转换为“内部”结点。

示意:

//旧(所有元素并列,用线连接)
包容网关->a->b-包容网关

//新(部分网关,转为包裹关系。更利于运行)
包容网关(a->b)

//有了“包裹”关系后,就不需要栈记录和记数器了。

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the current flow execution and inclusive-gateway handling to understand where stack records and counters are maintained. Then trace how chains are declared and built, and define the required List-to-partial-Tree conversion; done means wrapped gateway relationships execute without stack or counter bookkeeping and existing flow behavior remains covered by tests.

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.