graph {
graph [engine:dot rankdir:TB applyCss:dark clusterize:false intention:full grayscale:false desaturate:true]
mq -> mq__queue_ [reverse: false]
mq -> mq__pattern_ [reverse: false]
mq__pattern_ -> mq__pattern____mq__pattern__serial_queue [reverse: false]
mq__pattern_ -> mq__pattern____mq__pattern__exclusive_run [reverse: false]
mq__pattern_ -> mq__pattern____mq__pattern__contra_stack [reverse: false]
mq__pattern_ -> mq__pattern____mq__pattern__bag_of_tasks [reverse: false]
mq__pattern_ -> mq__pattern____mq__pattern__orchestrator [reverse: false]
mq *= mq__case_ [reverse: false]
mq__case_ *= mq__case____mq__case__paper_edit [reverse: false]
mq__case_ *= mq__case____mq__case__paper_blame [reverse: false]
mq__case_ *= mq__case____mq__case__paper_actualize [reverse: false]
mq__case_ *= mq__case____mq__case__ast_lake [reverse: false]
mq__case_ *= mq__case____mq__case__tile_actualize [reverse: false]
mq__case_ *= mq__case____mq__case__voting [reverse: false]
mq__case____mq__case__voting *= mq__case____mq__case__voting___mq__case____mq__case__completize_ballot [reverse: false]
mq *= mq__actor_ [reverse: false]
mq__actor_ *= mq__actor____mq__actor__tile_actualize [reverse: false]
mq__actor_ *= mq__actor____mq__actor__paper_blame [reverse: false]
mq__actor_ *= mq__actor____mq__actor__paper_actualize [reverse: false]
mq__actor_ *= mq__actor____mq__actor__paper_run [reverse: false]
mq [z: 9.5 @html: "
" nomen: "mq"]
mq__queue_ [z: 4.75 @html: "queue:
|
| • tasks_queue | | • paper_queue | | • tiles_queue |
|
" nomen: "queue:"]
mq__pattern_ [z: 4.75 @html: "" nomen: "pattern:"]
mq__pattern____mq__pattern__serial_queue [z: 2.375 @html: "pattern: serial queue
|
| • singleton consumer | | • must have exactly one consumer |
| | • on nack will stay stale |
|
" nomen: "pattern: serial queue"]
mq__pattern____mq__pattern__exclusive_run [z: 2.375 @html: "pattern: exclusive run
|
| • mutex lock with redis | | • per message | | • per part | | • topic=the message |
| | • to teraz mame v s4-watch |
|
" nomen: "pattern: exclusive run"]
mq__pattern____mq__pattern__contra_stack [z: 2.375 @html: "pattern: contra-stack
|
| • buffered contra stack | • limited by size. but also could be by windowMs | | • can implement lifo |
|
" nomen: "pattern: contra-stack"]
mq__pattern____mq__pattern__bag_of_tasks [z: 2.375 @html: "pattern: bag of tasks
|
| • message pool exists based on bagId | | • a redis list of tasks per bag exists | | • each acked task marks itself done | | • if all are done => bag is completed |
|
" nomen: "pattern: bag of tasks"]
mq__pattern____mq__pattern__orchestrator [z: 2.375 @html: "pattern: orchestrator
|
| • uses >1 queues | • holds program state in namespaced redis keys: flat json | | • structure: serial, exclusive, serial | | • example: | | • 【 serial tasks 】 | | • 【 bag of tasks 】 | | • 【 untiloop 】 |
| | • see more in 【paper:actualize】 | | • could also support eval code ? |
|
" nomen: "pattern: orchestrator"]
mq__case_ [z: 4.75 @html: "" nomen: "case:"]
mq__case____mq__case__paper_edit [z: 2.375 @html: "case: paper:edit
|
| • browser side | | • Mutext for editing files exclusivelly | • zatial je to vlastne webhook: paper-write |
|
" nomen: "case: paper:edit"]
mq__case____mq__case__paper_blame [z: 2.375 @html: "" nomen: "case: paper-blame"]
mq__case____mq__case__paper_actualize [z: 2.375 @html: "case: paper-actualize
|
| • later can evolve towards TOT | | • actor-paper-actualize, actor-paper-run | | • repo:sync | | • repo:ast-lake | | • mdd => graph | | • graph => map-show | | • repo:reindex |
|
|
" nomen: "case: paper-actualize"]
mq__case____mq__case__ast_lake [z: 2.375 @html: "case: ast-lake
|
| • its included already in other program |
|
" nomen: "case: ast-lake"]
mq__case____mq__case__tile_actualize [z: 2.375 @html: "" nomen: "case: tile-actualize"]
mq__case____mq__case__voting [z: 2.375 @html: "" nomen: "case: voting"]
mq__case____mq__case__voting___mq__case____mq__case__completize_ballot [z: 1.1875 @html: "case: completize ballot
|
| • ask the user to finish ballot | | • ask? | | • .... |
|
" nomen: "case: completize ballot"]
mq__actor_ [z: 4.75 @html: "actor:
|
| • mq-declaraticve-consumer |
|
" nomen: "actor:"]
mq__actor____mq__actor__tile_actualize [z: 2.375 @html: "" nomen: "actor: tile-actualize"]
mq__actor____mq__actor__paper_blame [z: 2.375 @html: "" nomen: "actor: paper-blame"]
mq__actor____mq__actor__paper_actualize [z: 2.375 @html: "actor: paper-actualize
|
| • ? TODO | | • queue=? | | • inspect repo and emit program |
|
" nomen: "actor: paper-actualize"]
mq__actor____mq__actor__paper_run [z: 2.375 @html: "actor: paper-run
|
| • ? TODO | | • queue=tasks_queue |
|
" nomen: "actor: paper-run"]
#```subgraphs
# 'mq.pattern:*|': '.'
# 'case:*|': '.'
# 'webhook:*|': '.'
# 'actor:*|': '.'
# 'queue:*|': '.'
#```
```ranks
- [ 'queue*' ]
- [ 'actor__*' ]
- [ 'pattern__*' ]
- [ 'webhook__*', 'case__*' ]
```
}