apache / dubbo-go
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 15 components.
  • 693 files, 60,111 LOC (100.0% vs. main code).
  • "xds" is biggest, containing 24.11% of LOC.
  • "imports" is smallest, containing 0.11% of LOC.


xds14492 LOC (24%) 141 files
protocol11642 LOC (19%) 84 files
registry5241 LOC (8%) 47 files
tools4524 LOC (7%) 72 files
config4229 LOC (7%) 40 files
cluster3844 LOC (6%) 83 files
remoting3842 LOC (6%) 38 files
filter3485 LOC (5%) 56 files
common2485 LOC (4%) 49 files
metrics2000 LOC (3%) 25 files
metadata1988 LOC (3%) 25 files
config_center1597 LOC (2%) 24 files
proxy446 LOC (<1%) 5 files
logger228 LOC (<1%) 3 files
imports68 LOC (<1%) 1 file
Static Dependencies
Dependencies among components are static code dependencies among files in different components.
  • Analyzed system has 85 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 85 links contain 498 dependencies.
  • There are 23 places (46 links) with cyclic dependencies (224 file dependencies).
G remoting remoting logger logger remoting->logger 19 config config remoting->config 5 protocol protocol remoting->protocol 7 common common remoting->common 5 xds xds remoting->xds 4 metrics metrics metrics->remoting 1 metrics->logger 2 metrics->common 1 cluster cluster cluster->remoting 5 cluster->logger 21 cluster->config 5 config_center config_center cluster->config_center 4 cluster->protocol 5 cluster->common 29 registry registry cluster->registry 2 cluster->xds 3 tools tools tools->logger 6 tools->config 8 tools->protocol 8 tools->common 8 metadata metadata tools->metadata 1 logger->common 2 proxy proxy proxy->logger 3 proxy->common 2 config->remoting 1 config->metrics 2 config->cluster 3 config->logger 16 config->proxy 1 config->config_center 2 config->protocol 2 config->common 14 filter filter config->filter 2 config->metadata 3 config_center->remoting 4 config_center->metrics 2 config_center->cluster 2 config_center->logger 7 config_center->config 1 config_center->protocol 1 config_center->common 6 config_center->filter 2 protocol->remoting 4 protocol->logger 31 protocol->config 1 protocol->common 9 protocol->filter 1 imports imports common->metrics 1 common->cluster 7 common->logger 4 common->proxy 1 common->config 2 common->config_center 4 common->protocol 1 common->registry 1 common->filter 4 common->xds 3 common->metadata 2 registry->remoting 14 registry->metrics 3 registry->cluster 3 registry->logger 25 registry->config 4 registry->config_center 7 registry->protocol 4 registry->common 20 registry->filter 3 registry->metadata 4 filter->remoting 2 filter->logger 22 filter->config 4 filter->config_center 1 filter->protocol 6 filter->common 29 filter->registry 1 filter->xds 1 xds->logger 7 metadata->metrics 1 metadata->cluster 1 metadata->logger 11 metadata->config 5 metadata->protocol 5 metadata->common 9 metadata->registry 2 metadata->filter 1


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.
registry2036 commits (24%)
common1815 commits (21%)
config1814 commits (21%)
protocol1549 commits (18%)
remoting1257 commits (14%)
config_center785 commits (9%)
metadata543 commits (6%)
cluster513 commits (6%)
filter438 commits (5%)
metrics172 commits (2%)
imports61 commits (<1%)
xds24 commits (<1%)
tools5 commits (<1%)
proxy2 commits (<1%)
logger1 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
xds
42
1146
config
55
235
1715
2972
1192
registry
51
234
1957
3518
1191
1
protocol
29
230
2642
4286
1019
remoting
18
220
1359
1910
468
cluster
28
206
606
512
34
filter
12
201
539
610
31
common
29
147
1260
2946
1145
tools
75
72
metadata
28
61
704
1182
metrics
52
18
71
158
config_center
10
50
642
1576
322
imports
4
21
36
proxy
1
5
logger
3


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 config config config--config 12 common common config--common 10 protocol protocol config--protocol 6 metrics metrics metrics--config 4 metrics--metrics 10 metrics--common 4 common--common 6 registry registry common--registry 7 remoting remoting common--remoting 6 tools tools common--tools 3 registry--config 6 registry--metrics 3 registry--registry 8 registry--protocol 3 registry--remoting 6 filter filter registry--filter 3 cluster cluster registry--cluster 3 config_center config_center registry--config_center 4 imports imports registry--imports 3 protocol--common 6 protocol--protocol 6 protocol--remoting 3 metadata metadata protocol--metadata 3 protocol--filter 3 remoting--config 6 remoting--metadata 4 remoting--filter 3 remoting--config_center 4 metadata--config 6 metadata--common 5 metadata--registry 5 metadata--metadata 4 metadata--filter 3 metadata--config_center 3 filter--config 4 filter--metrics 4 filter--common 5 cluster--config 3 cluster--common 4 cluster--protocol 3 cluster--cluster 4 config_center--config 4 config_center--common 3 config_center--config_center 4 tools--registry 3 tools--protocol 3 imports--config 3 imports--common 3 xds xds xds--protocol 3 xds--xds 3


2023-08-10 21:19