-
Notifications
You must be signed in to change notification settings - Fork 467
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create a rough division of components into systems and subsystems #5007
Comments
KatarinaKeti
added this to the Onboarding and supporting the Venus team in writing the catalog milestone
Jun 30, 2022
Hello,team,@hunxijin has come up with a rough idea on how venus can be divided into different systems as following... (folders @hunjixin thinks might be suitable for system is marked in between ** text like **xxxxx system**) .
├── app
│ ├── node // 节点初始化的一些东西;Node initialization related code
│ │ └── test
│ ├── paths
│ └── submodule
│ ├── blockstore //配置大模快的包;configuration for different modules
│ ├── chain //配置大模快的包;configuration for different modules
│ ├── config
│ ├── dagservice
│ ├── discovery
│ ├── market
│ ├── mining
│ ├── mpool
│ ├── multisig
│ │ └── v0api
│ ├── network
│ │ └── v0api
│ ├── paych
│ │ └── v0api
│ ├── storagenetworking
│ ├── syncer
│ └── wallet
│ └── remotewallet
├── bin
├── build-dep
├── cmd
│ └── tablewriter
├── docker
│ └── script
├── documentation
│ ├── en
│ ├── images
│ ├── misc
│ └── zh
├── fixtures
│ ├── networks //网络配置相关; network configuration related code
│ └── test
├── pkg
│ ├── beacon //beacon随机数; beacon rand
│ ├── chain
│ ├── chainsync //同步部分 可独立一个系统; **chainsync system**: syncing related code
│ │ ├── dispatcher
│ │ ├── exchange
│ │ ├── slashfilter
│ │ ├── syncer
│ │ └── types
│ ├── clock //时间计算相关 可独立一个系统; **clock system**: time related calculations
│ ├── config //这个包可以不做,以后可能会优化掉; not needed, might depreciate in the future
│ ├── consensus //这个包可以作为consensus系统部分; **consensus system**
│ ├── consensusfault //这个包可以作为consensus系统部分; Also **consensus system**
│ ├── constants //定义一些const2量, 不作为系统; constants, probably not needed as a system
│ ├── crypto //签名验证包,可作为一个系统; **crypto system**: used for signature verifications
│ │ ├── bls
│ │ └── secp
│ ├── discovery //可作为net系统的一个子系统; could be a subsystem of **network system**
│ ├── events //可作为一个系统; **events system**
│ │ └── state
│ │ └── mock
│ ├── fork //可作为一个系统 **fork system**
│ ├── fvm //可作为一个系统 **fvm system**
│ ├── gen //这个以后可能会优化掉,可以先不做; not needed, might depreciate soon;
│ │ └── genesis
│ ├── genesis //这个以后可能会优化掉,可以先不做; not needed, might depreciate soon;
│ ├── journal //可作为一个系统; **journal system**
│ ├── jwtauth //可不做,未来会改这一块; not needed, might make changes in the future;
│ ├── market //未来会发生改变,会重写这一块代码, 咱是命名为fundmgr模块; might refactor in the future;
│ ├── messagepool //可作为一个系统; **messagepool system**
│ │ ├── gasguess
│ │ └── journal //不做,未来会删除; not needed, might depreciate soon;
│ ├── metrics //不做,未来会重写; not needed, might refactor in the future;
│ │ └── tracing
│ ├── migration //独立系统; **migration system**
│ ├── net //network系统 **network system**
│ │ ├── blocksub //子系统 **network blocksub subsystem**
│ │ ├── msgsub //子系统 **network msgsub subsystem**
│ │ └── pubsub //子系统 **network pubsub subsystem**
│ ├── paychmgr //paychmgr系统 **paychmgr system**
│ │ └── settler
│ ├── repo //repo系统; **repo system**
│ │ └── fskeystore
│ ├── state //state系统; **state system**
│ │ └── tree
│ ├── statemanger //不做,考虑删除; not needed, might remove soon;
│ ├── testhelpers //helper 不做; not needed, mostly helper functions;
│ │ └── testflags
│ ├── util //工具部分
│ │ ├── blockstoreutil
│ │ ├── convert
│ │ ├── dag
│ │ │ └── oldpath
│ │ │ └── oldresolver
│ │ ├── ffiwrapper
│ │ │ ├── basicfs
│ │ │ └── impl
│ │ ├── fr32
│ │ ├── fsm
│ │ ├── fsutil
│ │ ├── hasher
│ │ ├── moresync
│ │ ├── paralle
│ │ ├── storiface
│ │ ├── test
│ │ └── ulimit
│ ├── vm //vm系统 **vm system**
│ │ ├── dispatch
│ │ ├── gas
│ │ ├── register
│ │ ├── runtime
│ │ └── vmcontext
│ ├── vmsupport //vm系统 **vm system**
│ └── wallet //钱包系统 **wallet system**
├── scripts
│ └── build
├── tools //tools下面不要; nothing significant under tools folder;
│ ├── conformance
│ │ └── chaos
│ │ └── gen
│ ├── gen_cbor
│ ├── genesis-file-server
│ ├── gengen
│ │ ├── gencfg
│ │ └── util
│ ├── prerelease-tool
│ └── seed
├── venus-component
│ └── libp2p
│ └── exchange
│ └── client
├── venus-devtool
│ ├── api-gen
│ ├── bundle-gen
│ ├── cborgen
│ ├── compatible
│ │ ├── actors
│ │ └── apis
│ ├── inline-gen
│ └── util
└── venus-shared
├── actors
│ ├── adt
│ ├── aerrors
│ ├── builtin
│ │ ├── account
│ │ ├── cron
│ │ ├── init
│ │ ├── market
│ │ ├── miner
│ │ ├── multisig
│ │ ├── paych
│ │ │ └── mock
│ │ ├── power
│ │ ├── reward
│ │ ├── system
│ │ └── verifreg
│ └── policy
├── api
│ ├── chain
│ │ ├── v0
│ │ │ └── mock
│ │ └── v1
│ │ └── mock
│ ├── gateway
│ │ ├── v0
│ │ │ └── mock
│ │ └── v1
│ │ └── mock
│ ├── market
│ │ ├── client
│ │ │ └── mock
│ │ └── mock
│ ├── messager
│ │ └── mock
│ ├── permission
│ └── wallet
│ └── mock
├── bazaar
├── builtin-actors
│ └── actors
├── compatible-checks
├── internal
├── libp2p
│ ├── exchange
│ └── hello
├── localstore
├── logging
├── testutil
├── types //types系统 下面每个放自己的子系统; **types system**
│ ├── gateway // **types gateways subsystem**
│ ├── market // **types market subsystem**
│ │ └── client // **types client subsystem**
│ ├── messager **types messager subsystem**
│ ├── params // **types param subsystem**
│ └── wallet // **types wallet subsystem**
├── typeutil
└── utils Hope it helps and let us know if you have any questions! Thank you! |
feel free to reopen if above is not enough. |
This was referenced Aug 5, 2022
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
No description provided.
The text was updated successfully, but these errors were encountered: