From ffa3ed3dded18d086e72046e89b72b7a0dd60e7f Mon Sep 17 00:00:00 2001 From: doufenghu Date: Sun, 3 Dec 2023 14:22:32 +0800 Subject: [feature][docs] add readme.md for groot stream platform --- docs/develop-guide.md | 41 +++++++++++++++-------------- docs/images/groot_stream_architecture.jpeg | Bin 0 -> 5167458 bytes 2 files changed, 21 insertions(+), 20 deletions(-) create mode 100644 docs/images/groot_stream_architecture.jpeg (limited to 'docs') diff --git a/docs/develop-guide.md b/docs/develop-guide.md index d0bbf6f..ededf14 100644 --- a/docs/develop-guide.md +++ b/docs/develop-guide.md @@ -1,5 +1,22 @@ # Develop Guide +## Modules Overview + +| Module Name | Description | +|:----------------|:-----------------------------------------------------------------------------------------------------------| +| groot-bootstrap | The main module of groot-stream, which is responsible for starting the groot-stream server. | +| groot-common | Common module of groot-stream, which is responsible for providing common functions. | +| groot-core | Core module of groot-stream, which is responsible for providing core functions. | +| groot-connectors| Connector module of groot-stream, which is responsible for providing connectors. | +| groot-formats | Format module of groot-stream, which is responsible for providing the ability of formatting data. | +| groot-shade | Shaded module of groot-stream, which is responsible for providing the ability of solving package conflict. | +| groot-example | Example module of groot-stream, which is responsible for providing examples. | +|groot-test | Test module of groot-stream, which is responsible for providing test cases. | +|groot-docs | Docs module of groot-stream, which is responsible for providing documents. | +|groot-release | Release module of groot-stream, which is responsible for providing release scripts. | + + + ## How to write a high quality Git commit message > [purpose] [module name] [sub-module name] Description (JIRA Issue ID) @@ -25,26 +42,11 @@ When throwing an exception with a hint message and ensure that the exception has } ``` -## How to run a job in IDEA -1. Set `groot-bootstrap` module pom.xml scope to `compile`. -2. Open the `Run/Debug Configurations` window. -3. Choose -cp `groot-bootstrap` -4. Choose Main Class `com.geedgenetworks.bootstrap.main.GrootStreamServer`. -5. Add VM options `-e client --target local -c /...../groot-stream/config/grootstream_job_template.yaml`. -6. Click the `Run` button. - -## How to run a job in command line -- Standalone Mode -```shell -cd "groot-stream-${version}" -./bin/start.sh -c ./config/grootstream_job_template.yaml --target remote -d -n groot-stream-job -``` -- Yarn Per-job Mode -```shell -cd "groot-stream-${version}" -./bin/start.sh -c ./config/grootstream_job_template.yaml --target yarn-per-job -d -n groot-stream-job -``` +## Design Principles +1. Package structure: `com.geedgenetworks.[module].[sub-module]`. `groot-stream` is the parent module, and other modules are dependent on it. +2. Module naming: `groot-[module]`. e.g. `groot-common`, `groot-core`, `groot-connectors`, `groot-bootstrap`, `groot-example`, etc. +3. For unchecked exception (RuntimeException) within the 'groot-common' module, a global exception handling class named 'GrootRuntimeException' is defined. ## Run a job example All examples are in module `groot-stream-example`. You can run the example [ running or debugging a job in IDEA]. @@ -53,4 +55,3 @@ e.g. we use `groot-stream-example/src/main/java/com/geedgenetworks/example/Boots {"ip_string":"8.8.8.9","fqdn_string":"www.geedgenetworks.com","port_int32":80} ``` - diff --git a/docs/images/groot_stream_architecture.jpeg b/docs/images/groot_stream_architecture.jpeg new file mode 100644 index 0000000..7daf2e1 Binary files /dev/null and b/docs/images/groot_stream_architecture.jpeg differ -- cgit v1.2.3