-
Notifications
You must be signed in to change notification settings - Fork 22
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #874 from eclipse-tractusx/chore/concept-scalability
chore(docs): add sequence diagrams for improvements in scalability
- Loading branch information
Showing
3 changed files
with
105 additions
and
0 deletions.
There are no files selected for viewing
35 changes: 35 additions & 0 deletions
35
docs/src/uml-diagrams/runtime-view/scaling-edc-processing.puml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
@startuml | ||
skinparam monochrome true | ||
skinparam shadowing false | ||
skinparam defaultFontName "Architects daughter" | ||
|
||
|
||
autonumber "<b>[00]" | ||
|
||
participant "EDC Client" as IRS | ||
participant "EDC Cache" as edc_cache | ||
participant "EDC" as EDC | ||
|
||
IRS -> EDC: Request Contract Offers {filter": "type=digitalTwinRegistry"} | ||
IRS <-- EDC: Contract Offer | ||
|
||
IRS -> edc_cache: get EDR Token | ||
|
||
group EDC negotiation and transfer process | ||
rnote right edc_cache | ||
replace traditional token negotiation with EDR API | ||
this makes reuse of existing negotiations more efficient | ||
end note | ||
|
||
edc_cache -> EDC: Negotiate Contract for Offer | ||
edc_cache <-- EDC: Contract Negotiation (Contract Agreement ID)) | ||
|
||
edc_cache -> EDC: Initiate Transfer with Agreement ID | ||
edc_cache <-- EDC: Transfer Process ID | ||
|
||
edc_cache <-- EDC : EDR Token callback | ||
end | ||
|
||
IRS <-- edc_cache: EDR Token | ||
|
||
@enduml |
34 changes: 34 additions & 0 deletions
34
docs/src/uml-diagrams/runtime-view/scaling-job-batch-processing.puml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
@startuml | ||
skinparam monochrome true | ||
skinparam shadowing false | ||
skinparam defaultFontName "Architects daughter" | ||
autonumber "<b>[00]" | ||
|
||
actor IrsApiConsumer | ||
|
||
|
||
box "IRS" #LightGrey | ||
|
||
IrsApiConsumer -> BatchController : POST /irs/orders | ||
rnote left | ||
200k digital twin ids | ||
end note | ||
IrsApiConsumer <- BatchController : order id | ||
|
||
BatchController --> CreationBatchService: create batches | ||
CreationBatchService -> CreationBatchService: split into parallel executable working packages | ||
|
||
rnote right | ||
As is: parallel processes are not limited | ||
To be: limit of e.g. 5 jobs in parallel | ||
end note | ||
|
||
loop | ||
rnote right CreationBatchService | ||
sequentially | ||
end note | ||
CreationBatchService -> JobEventLinkedQueueListener: execute working packages | ||
JobEventLinkedQueueListener --> IrsApiConsumer: callback on completed batch | ||
end | ||
|
||
@enduml |
36 changes: 36 additions & 0 deletions
36
docs/src/uml-diagrams/runtime-view/scaling-job-processing.puml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
@startuml | ||
skinparam monochrome true | ||
skinparam shadowing false | ||
skinparam defaultFontName "Architects daughter" | ||
autonumber "<b>[00]" | ||
|
||
actor IrsApiConsumer | ||
|
||
|
||
box "IRS" #LightGrey | ||
|
||
IrsApiConsumer -> IrsController : POST /irs/jobs | ||
rnote right IrsApiConsumer | ||
id instead of globalAssetId | ||
end rnote | ||
IrsApiConsumer <- IrsController : job id | ||
|
||
participant "blackbox IRS processing" as irs_process | ||
|
||
IrsController -> irs_process | ||
irs_process -> DTR: get twin by id | ||
rnote right irs_process | ||
1 call instead of 2 | ||
end rnote | ||
irs_process <- DTR: twin | ||
|
||
irs_process -> irs_process: globalAssetId of twin is saved in job response | ||
rnote right irs_process | ||
As is: the id with which the Job was started is saved as globalAssetId in the job | ||
To be: Job contains the globalAssetId instead of the id | ||
end rnote | ||
|
||
IrsApiConsumer -> IrsController : GET /irs/jobs/<id> | ||
IrsApiConsumer <- IrsController : job | ||
|
||
@enduml |