apache / incubator-pekko
Components & Dependencies

An overview of source code logical components.

Intro

Logical decomposition is a representation of the organization of the main source code, where every and each file is put in exactly one logical component.

Learn more...
Logical Decompositions Overview

Analyzed system has 1 logical decomposition:

Logical Decomposition #1: PRIMARY

The decompositions is based on the folder structure at level 1 (relative to the source code root).

Bubble Chart | Tree Map
Component Sizes (Lines of Code)
The "primary" logical decomposition has 33 components.
  • 1,366 files, 164,907 LOC (100.0% vs. main code).
  • "actor" is biggest, containing 17.85% of LOC.
  • "plugins" is smallest, containing 0.02% of LOC.


actor29435 LOC (17%) 245 files
stream26637 LOC (16%) 184 files
remote16611 LOC (10%) 100 files
cluster14637 LOC (8%) 94 files
cluster-sharding11779 LOC (7%) 57 files
distributed-data8925 LOC (5%) 39 files
actor-typed7805 LOC (4%) 90 files
persistence-typed6356 LOC (3%) 71 files
bench-jmh5599 LOC (3%) 79 files
cluster-tools5270 LOC (3%) 24 files
persistence4984 LOC (3%) 53 files
cluster-sharding-typed4427 LOC (2%) 35 files
project3090 LOC (1%) 40 files
cluster-typed2875 LOC (1%) 32 files
actor-testkit-typed2535 LOC (1%) 41 files
persistence-testkit2352 LOC (1%) 29 files
testkit2004 LOC (1%) 18 files
cluster-metrics1734 LOC (1%) 17 files
multi-node-testkit1412 LOC (<1%) 8 files
persistence-query1330 LOC (<1%) 45 files
serialization-jackson1103 LOC (<1%) 12 files
persistence-tck858 LOC (<1%) 11 files
stream-testkit800 LOC (<1%) 8 files
ROOT566 LOC (<1%) 1 file
discovery471 LOC (<1%) 5 files
stream-typed411 LOC (<1%) 8 files
coordination237 LOC (<1%) 9 files
osgi202 LOC (<1%) 4 files
pki139 LOC (<1%) 2 files
slf4j130 LOC (<1%) 1 file
kubernetes109 LOC (<1%) 1 file
scripts56 LOC (<1%) 2 files
plugins28 LOC (<1%) 1 file
Static Dependencies
Dependencies among components are static code dependencies among files in different components.
  • Analyzed system has 128 links (arrows) between components.
  • The number on the arrow represents the number of files from referring component that depend on files in referred component.
  • These 128 links contain 3380 dependencies.
  • There is 1 place (2 links) with cyclic dependencies (4 file dependencies).
G serialization-jackson serialization-jackson cluster cluster plugins plugins cluster->plugins 88 bench-jmh bench-jmh cluster->bench-jmh 88 testkit testkit cluster->testkit 88 project project cluster->project 88 actor actor cluster->actor 88 persistence-testkit persistence-testkit persistence-testkit->plugins 27 persistence-testkit->bench-jmh 27 persistence-testkit->testkit 27 persistence-testkit->project 27 persistence-testkit->actor 27 cluster-metrics cluster-metrics cluster-metrics->plugins 12 cluster-metrics->bench-jmh 14 cluster-metrics->testkit 12 cluster-metrics->project 12 cluster-metrics->actor 13 actor-typed actor-typed actor-typed->plugins 54 actor-typed->bench-jmh 54 actor-typed->testkit 54 actor-typed->project 54 actor-typed->actor 54 multi-node-testkit multi-node-testkit multi-node-testkit->plugins 7 multi-node-testkit->bench-jmh 7 multi-node-testkit->testkit 7 multi-node-testkit->project 7 multi-node-testkit->actor 7 coordination coordination coordination->plugins 6 coordination->bench-jmh 7 coordination->testkit 6 coordination->project 6 coordination->actor 7 cluster-typed cluster-typed cluster-typed->plugins 29 cluster-typed->bench-jmh 29 cluster-typed->testkit 29 cluster-typed->project 29 cluster-typed->actor 29 slf4j slf4j stream stream stream->plugins 91 stream->bench-jmh 93 stream->testkit 91 stream->project 91 stream->actor 94 osgi osgi actor-testkit-typed actor-testkit-typed actor-testkit-typed->plugins 35 actor-testkit-typed->bench-jmh 35 actor-testkit-typed->testkit 35 actor-testkit-typed->project 35 actor-testkit-typed->actor 35 discovery discovery discovery->plugins 5 discovery->bench-jmh 5 discovery->testkit 5 discovery->project 5 discovery->actor 5 cluster-tools cluster-tools cluster-tools->plugins 22 cluster-tools->bench-jmh 22 cluster-tools->testkit 22 cluster-tools->project 22 cluster-tools->actor 22 persistence-typed persistence-typed persistence-typed->plugins 61 persistence-typed->bench-jmh 61 persistence-typed->testkit 61 persistence-typed->project 61 persistence-typed->actor 61 persistence-tck persistence-tck persistence-tck->plugins 6 persistence-tck->bench-jmh 6 persistence-tck->testkit 6 persistence-tck->project 6 persistence-tck->actor 6 persistence persistence persistence->plugins 29 persistence->bench-jmh 29 persistence->testkit 29 persistence->project 29 persistence->actor 31 scripts scripts cluster-sharding-typed cluster-sharding-typed cluster-sharding-typed->plugins 32 cluster-sharding-typed->bench-jmh 32 cluster-sharding-typed->testkit 32 cluster-sharding-typed->project 32 cluster-sharding-typed->actor 32 stream-typed stream-typed stream-typed->plugins 8 stream-typed->bench-jmh 8 stream-typed->testkit 8 stream-typed->project 8 stream-typed->actor 8 persistence-query persistence-query persistence-query->plugins 40 persistence-query->bench-jmh 40 persistence-query->testkit 40 persistence-query->project 40 persistence-query->actor 40 distributed-data distributed-data kubernetes kubernetes stream-testkit stream-testkit stream-testkit->plugins 8 stream-testkit->bench-jmh 8 stream-testkit->testkit 8 stream-testkit->project 8 stream-testkit->actor 8 ROOT ROOT cluster-sharding cluster-sharding cluster-sharding->plugins 51 cluster-sharding->bench-jmh 51 cluster-sharding->testkit 52 cluster-sharding->project 51 cluster-sharding->actor 51 remote remote remote->plugins 51 remote->bench-jmh 52 remote->testkit 51 remote->project 51 remote->actor 55 pki pki


Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details about dependencies...




Component Commits
Components ordered by number of commits
Total Commits per Component
All commits, some commits may include files from multiple components.
project1555 commits (5%)
ROOT276 commits (1%)
actor49 commits (<1%)
stream23 commits (<1%)
remote17 commits (<1%)
cluster14 commits (<1%)
actor-typed13 commits (<1%)
distributed-data13 commits (<1%)
cluster-sharding12 commits (<1%)
persistence12 commits (<1%)
actor-testkit-typed11 commits (<1%)
bench-jmh11 commits (<1%)
cluster-sharding-typed11 commits (<1%)
cluster-tools11 commits (<1%)
persistence-typed8 commits (<1%)
cluster-typed8 commits (<1%)
persistence-query8 commits (<1%)
serialization-jackson7 commits (<1%)
multi-node-testkit7 commits (<1%)
kubernetes6 commits (<1%)
persistence-testkit6 commits (<1%)
osgi6 commits (<1%)
testkit6 commits (<1%)
discovery6 commits (<1%)
stream-typed6 commits (<1%)
cluster-metrics5 commits (<1%)
scripts5 commits (<1%)
persistence-tck5 commits (<1%)
coordination4 commits (<1%)
slf4j4 commits (<1%)
stream-testkit4 commits (<1%)
plugins3 commits (<1%)
pki3 commits (<1%)
Yearly File Updates Trend per Components
The number of file changes in commits
animated commit history: all time cumulative | 12 months window
2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011
actor
891
stream
658
9
project
253
159
243
229
285
161
298
372
187
74
28
91
31
remote
355
cluster
307
actor-typed
296
bench-jmh
245
persistence-typed
227
cluster-sharding
185
persistence
181
persistence-query
147
distributed-data
142
actor-testkit-typed
137
cluster-sharding-typed
123
cluster-typed
100
persistence-testkit
93
cluster-tools
82
testkit
62
cluster-metrics
56
ROOT
34
9
13
47
72
47
33
2
6
2
5
6
serialization-jackson
40
persistence-tck
40
multi-node-testkit
33
coordination
28
stream-typed
28
stream-testkit
25
discovery
18
osgi
17
pki
6
slf4j
4
plugins
2
1
kubernetes
1
5
scripts
2
1
2


Dependencies between components in same commits (past 180 days)
The number on the lines shows the number of shared commits.
See detailed temporal dependencies report...

G project project project--project 30 remote remote project--remote 7 actor actor actor--project 10 actor--actor 23 actor--remote 10 actor-typed actor-typed actor--actor-typed 8 ROOT ROOT ROOT--project 20 stream stream stream--actor 8 stream--stream 12 stream--remote 6 persistence persistence stream--persistence 8 cluster-sharding-typed cluster-sharding-typed stream--cluster-sharding-typed 6 distributed-data distributed-data stream--distributed-data 8 cluster-sharding cluster-sharding stream--cluster-sharding 6 remote--remote 12 remote--cluster-sharding-typed 7 remote--cluster-sharding 8 cluster cluster remote--cluster 7 persistence--actor 9 persistence--remote 7 persistence--persistence 6 persistence--actor-typed 6 persistence--distributed-data 7 persistence--cluster-sharding 7 actor-typed--project 6 actor-typed--remote 7 actor-typed--actor-typed 8 cluster-sharding-typed--actor 8 cluster-sharding-typed--persistence 7 cluster-sharding-typed--actor-typed 7 cluster-sharding-typed--cluster-sharding-typed 6 distributed-data--actor 7 distributed-data--cluster-sharding-typed 6 distributed-data--distributed-data 6 cluster-tools cluster-tools distributed-data--cluster-tools 6 cluster-sharding--actor 8 cluster-sharding--actor-typed 7 cluster-sharding--cluster-sharding-typed 7 cluster-tools--actor 7 cluster-tools--remote 7 cluster-tools--actor-typed 6 cluster-tools--cluster-sharding-typed 6 cluster-tools--cluster-sharding 6 bench-jmh bench-jmh bench-jmh--actor 7 cluster--project 6 cluster--actor 7 cluster--actor-typed 7 cluster--cluster-sharding 7 cluster--cluster-tools 6 persistence-typed persistence-typed persistence-typed--actor 6


2023-08-11 02:34