diff --git a/README.md b/README.md index 392d2aca035acb50ab58527a70007ac0b2fb6121..b64ce4973d6df5efcb560058b857d455e6371a57 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,6 @@ Finished List: - Transport: HTTP, TCP - Codec: JsonRPC v2, Hessian v2 - Registry: ZooKeeper -- Routing: Rule(dubbo v2.6.x) - Configure Center: Zookeeper - Cluster Strategy: Failover - Load Balance: Random, RoundRobin, LeastActive diff --git a/config/testdata/consumer_config.yml b/config/testdata/consumer_config.yml index 85e0eb2fe980b461c3eea1741d53c3b5064b8d47..373871dccbc6c3f7272b7abcb1a9a104c8f13090 100644 --- a/config/testdata/consumer_config.yml +++ b/config/testdata/consumer_config.yml @@ -56,6 +56,12 @@ protocol_conf: session_timeout: "20s" pool_size: 64 pool_ttl: 600 + # gr_pool_size is recommended to be set to [cpu core number] * 100 + gr_pool_size: 1200 + # queue_len is recommended to be set to 64 or 128 + queue_len: 64 + # queue_number is recommended to be set to gr_pool_size / 20 + queue_number: 60 getty_session_param: compress_encoding: false tcp_no_delay: true @@ -63,7 +69,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/config/testdata/consumer_config_with_configcenter.yml b/config/testdata/consumer_config_with_configcenter.yml index 1a33ec3971c231012265d0ce078aedf2f851a215..c6505e4492887cc6602ab0b2ee9a9fbd9fdce9c9 100644 --- a/config/testdata/consumer_config_with_configcenter.yml +++ b/config/testdata/consumer_config_with_configcenter.yml @@ -30,7 +30,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/config/testdata/provider_config.yml b/config/testdata/provider_config.yml index 3b6e43a51adabfa5ed2abbc3ef0f261ade576127..e135860c208ff4d386a1abd658049e0e0aac73a3 100644 --- a/config/testdata/provider_config.yml +++ b/config/testdata/provider_config.yml @@ -56,6 +56,12 @@ protocol_conf: dubbo: session_number: 700 session_timeout: "20s" + # gr_pool_size is recommended to be set to [cpu core number] * 10 + gr_pool_size: 120 + # queue_len is recommended to be set to 64 or 128 + queue_len: 64 + # queue_number is recommended to be set to gr_pool_size / 20 + queue_number: 6 getty_session_param: compress_encoding: false tcp_no_delay: true @@ -63,7 +69,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/dubbo/with-configcenter-go-client/app/client.go b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/app/client.go similarity index 100% rename from examples/dubbo/with-configcenter-go-client/app/client.go rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/app/client.go diff --git a/examples/dubbo/with-configcenter-go-client/app/user.go b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/app/user.go similarity index 100% rename from examples/dubbo/with-configcenter-go-client/app/user.go rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/app/user.go diff --git a/examples/dubbo/go-client/app/version.go b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/app/version.go similarity index 100% rename from examples/dubbo/go-client/app/version.go rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/app/version.go diff --git a/examples/dubbo/go-client/assembly/bin/load.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/bin/load.sh similarity index 100% rename from examples/dubbo/go-client/assembly/bin/load.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/bin/load.sh diff --git a/examples/dubbo/go-client/assembly/common/app.properties b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/common/app.properties similarity index 100% rename from examples/dubbo/go-client/assembly/common/app.properties rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/common/app.properties diff --git a/examples/dubbo/go-client/assembly/common/build.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/common/build.sh similarity index 100% rename from examples/dubbo/go-client/assembly/common/build.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/common/build.sh diff --git a/examples/dubbo/go-client/assembly/linux/dev.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/linux/dev.sh similarity index 100% rename from examples/dubbo/go-client/assembly/linux/dev.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/linux/dev.sh diff --git a/examples/dubbo/go-client/assembly/linux/release.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/linux/release.sh similarity index 100% rename from examples/dubbo/go-client/assembly/linux/release.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/linux/release.sh diff --git a/examples/dubbo/go-client/assembly/linux/test.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/linux/test.sh similarity index 100% rename from examples/dubbo/go-client/assembly/linux/test.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/linux/test.sh diff --git a/examples/dubbo/go-client/assembly/mac/dev.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/mac/dev.sh similarity index 100% rename from examples/dubbo/go-client/assembly/mac/dev.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/mac/dev.sh diff --git a/examples/dubbo/go-client/assembly/mac/release.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/mac/release.sh similarity index 100% rename from examples/dubbo/go-client/assembly/mac/release.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/mac/release.sh diff --git a/examples/dubbo/go-client/assembly/mac/test.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/mac/test.sh similarity index 100% rename from examples/dubbo/go-client/assembly/mac/test.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/mac/test.sh diff --git a/examples/dubbo/go-client/assembly/windows/dev.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/windows/dev.sh similarity index 100% rename from examples/dubbo/go-client/assembly/windows/dev.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/windows/dev.sh diff --git a/examples/dubbo/go-client/assembly/windows/release.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/windows/release.sh similarity index 100% rename from examples/dubbo/go-client/assembly/windows/release.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/windows/release.sh diff --git a/examples/dubbo/go-client/assembly/windows/test.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/windows/test.sh similarity index 100% rename from examples/dubbo/go-client/assembly/windows/test.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/assembly/windows/test.sh diff --git a/examples/dubbo/with-configcenter-go-client/profiles/release/client.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/dev/client.yml similarity index 97% rename from examples/dubbo/with-configcenter-go-client/profiles/release/client.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/dev/client.yml index 1ebdf5bb5c97c3f45d9a0b551afd78866868d4d0..c8e7bd0b053f797f3a5320451f08dcc590832330 100644 --- a/examples/dubbo/with-configcenter-go-client/profiles/release/client.yml +++ b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/dev/client.yml @@ -30,7 +30,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/dubbo/go-client/profiles/dev/log.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/dev/log.yml similarity index 100% rename from examples/dubbo/go-client/profiles/dev/log.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/dev/log.yml diff --git a/examples/dubbo/with-configcenter-go-client/profiles/test/client.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/release/client.yml similarity index 97% rename from examples/dubbo/with-configcenter-go-client/profiles/test/client.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/release/client.yml index 1ebdf5bb5c97c3f45d9a0b551afd78866868d4d0..c8e7bd0b053f797f3a5320451f08dcc590832330 100644 --- a/examples/dubbo/with-configcenter-go-client/profiles/test/client.yml +++ b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/release/client.yml @@ -30,7 +30,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/dubbo/go-client/profiles/release/log.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/release/log.yml similarity index 100% rename from examples/dubbo/go-client/profiles/release/log.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/release/log.yml diff --git a/examples/dubbo/with-configcenter-go-client/profiles/dev/client.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/test/client.yml similarity index 97% rename from examples/dubbo/with-configcenter-go-client/profiles/dev/client.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/test/client.yml index 1ebdf5bb5c97c3f45d9a0b551afd78866868d4d0..c8e7bd0b053f797f3a5320451f08dcc590832330 100644 --- a/examples/dubbo/with-configcenter-go-client/profiles/dev/client.yml +++ b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/test/client.yml @@ -30,7 +30,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/dubbo/go-client/profiles/test/log.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/test/log.yml similarity index 100% rename from examples/dubbo/go-client/profiles/test/log.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-client/profiles/test/log.yml diff --git a/examples/dubbo/with-configcenter-go-server/app/server.go b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/app/server.go similarity index 100% rename from examples/dubbo/with-configcenter-go-server/app/server.go rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/app/server.go diff --git a/examples/dubbo/with-configcenter-go-server/app/user.go b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/app/user.go similarity index 100% rename from examples/dubbo/with-configcenter-go-server/app/user.go rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/app/user.go diff --git a/examples/dubbo/go-server/app/version.go b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/app/version.go similarity index 100% rename from examples/dubbo/go-server/app/version.go rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/app/version.go diff --git a/examples/dubbo/go-server/assembly/bin/load.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/bin/load.sh similarity index 100% rename from examples/dubbo/go-server/assembly/bin/load.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/bin/load.sh diff --git a/examples/dubbo/go-server/assembly/common/app.properties b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/common/app.properties similarity index 100% rename from examples/dubbo/go-server/assembly/common/app.properties rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/common/app.properties diff --git a/examples/dubbo/go-server/assembly/common/build.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/common/build.sh similarity index 100% rename from examples/dubbo/go-server/assembly/common/build.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/common/build.sh diff --git a/examples/dubbo/go-server/assembly/linux/dev.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/linux/dev.sh similarity index 100% rename from examples/dubbo/go-server/assembly/linux/dev.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/linux/dev.sh diff --git a/examples/dubbo/go-server/assembly/linux/release.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/linux/release.sh similarity index 100% rename from examples/dubbo/go-server/assembly/linux/release.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/linux/release.sh diff --git a/examples/dubbo/go-server/assembly/linux/test.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/linux/test.sh similarity index 100% rename from examples/dubbo/go-server/assembly/linux/test.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/linux/test.sh diff --git a/examples/dubbo/go-server/assembly/mac/dev.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/mac/dev.sh similarity index 100% rename from examples/dubbo/go-server/assembly/mac/dev.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/mac/dev.sh diff --git a/examples/dubbo/go-server/assembly/mac/release.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/mac/release.sh similarity index 100% rename from examples/dubbo/go-server/assembly/mac/release.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/mac/release.sh diff --git a/examples/dubbo/go-server/assembly/mac/test.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/mac/test.sh similarity index 100% rename from examples/dubbo/go-server/assembly/mac/test.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/mac/test.sh diff --git a/examples/dubbo/go-server/assembly/windows/dev.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/windows/dev.sh similarity index 100% rename from examples/dubbo/go-server/assembly/windows/dev.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/windows/dev.sh diff --git a/examples/dubbo/go-server/assembly/windows/release.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/windows/release.sh similarity index 100% rename from examples/dubbo/go-server/assembly/windows/release.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/windows/release.sh diff --git a/examples/dubbo/go-server/assembly/windows/test.sh b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/windows/test.sh similarity index 100% rename from examples/dubbo/go-server/assembly/windows/test.sh rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/assembly/windows/test.sh diff --git a/examples/dubbo/go-server/profiles/dev/log.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/dev/log.yml similarity index 100% rename from examples/dubbo/go-server/profiles/dev/log.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/dev/log.yml diff --git a/examples/dubbo/with-configcenter-go-server/profiles/release/server.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/dev/server.yml similarity index 97% rename from examples/dubbo/with-configcenter-go-server/profiles/release/server.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/dev/server.yml index a2ae2fe5d89519056e07fbc11d7d34407d449fed..cdaaca4c3803cf6126f00d67631dd1507d14505c 100644 --- a/examples/dubbo/with-configcenter-go-server/profiles/release/server.yml +++ b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/dev/server.yml @@ -31,7 +31,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/dubbo/go-server/profiles/release/log.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/release/log.yml similarity index 100% rename from examples/dubbo/go-server/profiles/release/log.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/release/log.yml diff --git a/examples/dubbo/with-configcenter-go-server/profiles/test/server.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/release/server.yml similarity index 97% rename from examples/dubbo/with-configcenter-go-server/profiles/test/server.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/release/server.yml index a2ae2fe5d89519056e07fbc11d7d34407d449fed..cdaaca4c3803cf6126f00d67631dd1507d14505c 100644 --- a/examples/dubbo/with-configcenter-go-server/profiles/test/server.yml +++ b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/release/server.yml @@ -31,7 +31,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/dubbo/go-server/profiles/test/log.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/test/log.yml similarity index 100% rename from examples/dubbo/go-server/profiles/test/log.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/test/log.yml diff --git a/examples/dubbo/with-configcenter-go-server/profiles/dev/server.yml b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/test/server.yml similarity index 97% rename from examples/dubbo/with-configcenter-go-server/profiles/dev/server.yml rename to examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/test/server.yml index a2ae2fe5d89519056e07fbc11d7d34407d449fed..cdaaca4c3803cf6126f00d67631dd1507d14505c 100644 --- a/examples/dubbo/with-configcenter-go-server/profiles/dev/server.yml +++ b/examples/configcenter/zookeeper/dubbo/with-configcenter-go-server/profiles/test/server.yml @@ -31,7 +31,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/jsonrpc/with-configcenter-go-client/app/client.go b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/app/client.go similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/app/client.go rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/app/client.go diff --git a/examples/jsonrpc/with-configcenter-go-client/app/user.go b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/app/user.go similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/app/user.go rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/app/user.go diff --git a/examples/dubbo/with-configcenter-go-client/app/version.go b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/app/version.go similarity index 100% rename from examples/dubbo/with-configcenter-go-client/app/version.go rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/app/version.go diff --git a/examples/dubbo/with-configcenter-go-client/assembly/bin/load.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/bin/load.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/bin/load.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/bin/load.sh diff --git a/examples/dubbo/with-configcenter-go-client/assembly/common/app.properties b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/common/app.properties similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/common/app.properties rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/common/app.properties diff --git a/examples/jsonrpc/go-client/assembly/common/build.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/common/build.sh similarity index 100% rename from examples/jsonrpc/go-client/assembly/common/build.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/common/build.sh diff --git a/examples/dubbo/with-configcenter-go-client/assembly/linux/dev.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/linux/dev.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/linux/dev.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/linux/dev.sh diff --git a/examples/dubbo/with-configcenter-go-client/assembly/linux/release.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/linux/release.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/linux/release.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/linux/release.sh diff --git a/examples/dubbo/with-configcenter-go-client/assembly/linux/test.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/linux/test.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/linux/test.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/linux/test.sh diff --git a/examples/dubbo/with-configcenter-go-client/assembly/mac/dev.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/mac/dev.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/mac/dev.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/mac/dev.sh diff --git a/examples/dubbo/with-configcenter-go-client/assembly/mac/release.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/mac/release.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/mac/release.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/mac/release.sh diff --git a/examples/dubbo/with-configcenter-go-client/assembly/mac/test.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/mac/test.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/mac/test.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/mac/test.sh diff --git a/examples/dubbo/with-configcenter-go-client/assembly/windows/dev.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/windows/dev.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/windows/dev.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/windows/dev.sh diff --git a/examples/dubbo/with-configcenter-go-client/assembly/windows/release.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/windows/release.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/windows/release.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/windows/release.sh diff --git a/examples/dubbo/with-configcenter-go-client/assembly/windows/test.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/windows/test.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/windows/test.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/assembly/windows/test.sh diff --git a/examples/jsonrpc/with-configcenter-go-client/profiles/dev/client.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/dev/client.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/profiles/dev/client.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/dev/client.yml diff --git a/examples/dubbo/with-configcenter-go-client/profiles/dev/log.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/dev/log.yml similarity index 100% rename from examples/dubbo/with-configcenter-go-client/profiles/dev/log.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/dev/log.yml diff --git a/examples/jsonrpc/with-configcenter-go-client/profiles/release/client.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/release/client.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/profiles/release/client.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/release/client.yml diff --git a/examples/dubbo/with-configcenter-go-client/profiles/release/log.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/release/log.yml similarity index 100% rename from examples/dubbo/with-configcenter-go-client/profiles/release/log.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/release/log.yml diff --git a/examples/jsonrpc/with-configcenter-go-client/profiles/test/client.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/test/client.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/profiles/test/client.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/test/client.yml diff --git a/examples/dubbo/with-configcenter-go-client/profiles/test/log.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/test/log.yml similarity index 100% rename from examples/dubbo/with-configcenter-go-client/profiles/test/log.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-client/profiles/test/log.yml diff --git a/examples/jsonrpc/with-configcenter-go-server/app/server.go b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/app/server.go similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/app/server.go rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/app/server.go diff --git a/examples/jsonrpc/with-configcenter-go-server/app/user.go b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/app/user.go similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/app/user.go rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/app/user.go diff --git a/examples/dubbo/with-configcenter-go-server/app/version.go b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/app/version.go similarity index 100% rename from examples/dubbo/with-configcenter-go-server/app/version.go rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/app/version.go diff --git a/examples/dubbo/with-configcenter-go-server/assembly/bin/load.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/bin/load.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/bin/load.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/bin/load.sh diff --git a/examples/dubbo/with-configcenter-go-server/assembly/common/app.properties b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/common/app.properties similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/common/app.properties rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/common/app.properties diff --git a/examples/dubbo/with-configcenter-go-server/assembly/common/build.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/common/build.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/common/build.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/common/build.sh diff --git a/examples/dubbo/with-configcenter-go-server/assembly/linux/dev.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/linux/dev.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/linux/dev.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/linux/dev.sh diff --git a/examples/dubbo/with-configcenter-go-server/assembly/linux/release.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/linux/release.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/linux/release.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/linux/release.sh diff --git a/examples/dubbo/with-configcenter-go-server/assembly/linux/test.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/linux/test.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/linux/test.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/linux/test.sh diff --git a/examples/dubbo/with-configcenter-go-server/assembly/mac/dev.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/mac/dev.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/mac/dev.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/mac/dev.sh diff --git a/examples/dubbo/with-configcenter-go-server/assembly/mac/release.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/mac/release.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/mac/release.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/mac/release.sh diff --git a/examples/dubbo/with-configcenter-go-server/assembly/mac/test.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/mac/test.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/mac/test.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/mac/test.sh diff --git a/examples/dubbo/with-configcenter-go-server/assembly/windows/dev.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/windows/dev.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/windows/dev.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/windows/dev.sh diff --git a/examples/dubbo/with-configcenter-go-server/assembly/windows/release.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/windows/release.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/windows/release.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/windows/release.sh diff --git a/examples/dubbo/with-configcenter-go-server/assembly/windows/test.sh b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/windows/test.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-server/assembly/windows/test.sh rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/assembly/windows/test.sh diff --git a/examples/dubbo/with-configcenter-go-server/profiles/dev/log.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/dev/log.yml similarity index 100% rename from examples/dubbo/with-configcenter-go-server/profiles/dev/log.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/dev/log.yml diff --git a/examples/jsonrpc/with-configcenter-go-server/profiles/dev/server.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/dev/server.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/profiles/dev/server.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/dev/server.yml diff --git a/examples/dubbo/with-configcenter-go-server/profiles/release/log.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/release/log.yml similarity index 100% rename from examples/dubbo/with-configcenter-go-server/profiles/release/log.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/release/log.yml diff --git a/examples/jsonrpc/with-configcenter-go-server/profiles/release/server.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/release/server.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/profiles/release/server.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/release/server.yml diff --git a/examples/dubbo/with-configcenter-go-server/profiles/test/log.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/test/log.yml similarity index 100% rename from examples/dubbo/with-configcenter-go-server/profiles/test/log.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/test/log.yml diff --git a/examples/jsonrpc/with-configcenter-go-server/profiles/test/server.yml b/examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/test/server.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/profiles/test/server.yml rename to examples/configcenter/zookeeper/jsonrpc/with-configcenter-go-server/profiles/test/server.yml diff --git a/examples/dubbo/go-client/app/client.go b/examples/general/dubbo/go-client/app/client.go similarity index 100% rename from examples/dubbo/go-client/app/client.go rename to examples/general/dubbo/go-client/app/client.go diff --git a/examples/dubbo/go-client/app/user.go b/examples/general/dubbo/go-client/app/user.go similarity index 100% rename from examples/dubbo/go-client/app/user.go rename to examples/general/dubbo/go-client/app/user.go diff --git a/examples/jsonrpc/go-client/app/version.go b/examples/general/dubbo/go-client/app/version.go similarity index 100% rename from examples/jsonrpc/go-client/app/version.go rename to examples/general/dubbo/go-client/app/version.go diff --git a/examples/jsonrpc/go-client/assembly/bin/load.sh b/examples/general/dubbo/go-client/assembly/bin/load.sh similarity index 100% rename from examples/jsonrpc/go-client/assembly/bin/load.sh rename to examples/general/dubbo/go-client/assembly/bin/load.sh diff --git a/examples/jsonrpc/go-client/assembly/common/app.properties b/examples/general/dubbo/go-client/assembly/common/app.properties similarity index 100% rename from examples/jsonrpc/go-client/assembly/common/app.properties rename to examples/general/dubbo/go-client/assembly/common/app.properties diff --git a/examples/dubbo/with-configcenter-go-client/assembly/common/build.sh b/examples/general/dubbo/go-client/assembly/common/build.sh similarity index 100% rename from examples/dubbo/with-configcenter-go-client/assembly/common/build.sh rename to examples/general/dubbo/go-client/assembly/common/build.sh diff --git a/examples/jsonrpc/go-client/assembly/linux/dev.sh b/examples/general/dubbo/go-client/assembly/linux/dev.sh similarity index 100% rename from examples/jsonrpc/go-client/assembly/linux/dev.sh rename to examples/general/dubbo/go-client/assembly/linux/dev.sh diff --git a/examples/jsonrpc/go-client/assembly/linux/release.sh b/examples/general/dubbo/go-client/assembly/linux/release.sh similarity index 100% rename from examples/jsonrpc/go-client/assembly/linux/release.sh rename to examples/general/dubbo/go-client/assembly/linux/release.sh diff --git a/examples/jsonrpc/go-client/assembly/linux/test.sh b/examples/general/dubbo/go-client/assembly/linux/test.sh similarity index 100% rename from examples/jsonrpc/go-client/assembly/linux/test.sh rename to examples/general/dubbo/go-client/assembly/linux/test.sh diff --git a/examples/jsonrpc/go-client/assembly/mac/dev.sh b/examples/general/dubbo/go-client/assembly/mac/dev.sh similarity index 100% rename from examples/jsonrpc/go-client/assembly/mac/dev.sh rename to examples/general/dubbo/go-client/assembly/mac/dev.sh diff --git a/examples/jsonrpc/go-client/assembly/mac/release.sh b/examples/general/dubbo/go-client/assembly/mac/release.sh similarity index 100% rename from examples/jsonrpc/go-client/assembly/mac/release.sh rename to examples/general/dubbo/go-client/assembly/mac/release.sh diff --git a/examples/jsonrpc/go-client/assembly/mac/test.sh b/examples/general/dubbo/go-client/assembly/mac/test.sh similarity index 100% rename from examples/jsonrpc/go-client/assembly/mac/test.sh rename to examples/general/dubbo/go-client/assembly/mac/test.sh diff --git a/examples/jsonrpc/go-client/assembly/windows/dev.sh b/examples/general/dubbo/go-client/assembly/windows/dev.sh similarity index 100% rename from examples/jsonrpc/go-client/assembly/windows/dev.sh rename to examples/general/dubbo/go-client/assembly/windows/dev.sh diff --git a/examples/jsonrpc/go-client/assembly/windows/release.sh b/examples/general/dubbo/go-client/assembly/windows/release.sh similarity index 100% rename from examples/jsonrpc/go-client/assembly/windows/release.sh rename to examples/general/dubbo/go-client/assembly/windows/release.sh diff --git a/examples/jsonrpc/go-client/assembly/windows/test.sh b/examples/general/dubbo/go-client/assembly/windows/test.sh similarity index 100% rename from examples/jsonrpc/go-client/assembly/windows/test.sh rename to examples/general/dubbo/go-client/assembly/windows/test.sh diff --git a/examples/dubbo/go-client/profiles/dev/client.yml b/examples/general/dubbo/go-client/profiles/dev/client.yml similarity index 98% rename from examples/dubbo/go-client/profiles/dev/client.yml rename to examples/general/dubbo/go-client/profiles/dev/client.yml index e1131df77e0709b78e897c8a2686c60f2b3bd8e5..ff696688416dc1e77f87d7831922894979d78da2 100644 --- a/examples/dubbo/go-client/profiles/dev/client.yml +++ b/examples/general/dubbo/go-client/profiles/dev/client.yml @@ -75,7 +75,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/jsonrpc/go-client/profiles/dev/log.yml b/examples/general/dubbo/go-client/profiles/dev/log.yml similarity index 100% rename from examples/jsonrpc/go-client/profiles/dev/log.yml rename to examples/general/dubbo/go-client/profiles/dev/log.yml diff --git a/examples/dubbo/go-client/profiles/release/client.yml b/examples/general/dubbo/go-client/profiles/release/client.yml similarity index 98% rename from examples/dubbo/go-client/profiles/release/client.yml rename to examples/general/dubbo/go-client/profiles/release/client.yml index dabde06c753174e41a3655833877169a124f4ee3..b4d897fda2b78e30dd912eab9f5a43bbcef9f595 100644 --- a/examples/dubbo/go-client/profiles/release/client.yml +++ b/examples/general/dubbo/go-client/profiles/release/client.yml @@ -75,7 +75,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/jsonrpc/go-client/profiles/release/log.yml b/examples/general/dubbo/go-client/profiles/release/log.yml similarity index 100% rename from examples/jsonrpc/go-client/profiles/release/log.yml rename to examples/general/dubbo/go-client/profiles/release/log.yml diff --git a/examples/dubbo/go-client/profiles/test/client.yml b/examples/general/dubbo/go-client/profiles/test/client.yml similarity index 98% rename from examples/dubbo/go-client/profiles/test/client.yml rename to examples/general/dubbo/go-client/profiles/test/client.yml index e0b742eff4c4652114bc43cbf315365cac41d242..c8b5c58691a0b35b55adb8f27cd1108433655b45 100644 --- a/examples/dubbo/go-client/profiles/test/client.yml +++ b/examples/general/dubbo/go-client/profiles/test/client.yml @@ -75,7 +75,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/jsonrpc/go-client/profiles/test/log.yml b/examples/general/dubbo/go-client/profiles/test/log.yml similarity index 100% rename from examples/jsonrpc/go-client/profiles/test/log.yml rename to examples/general/dubbo/go-client/profiles/test/log.yml diff --git a/examples/dubbo/go-server/app/app b/examples/general/dubbo/go-server/app/app similarity index 100% rename from examples/dubbo/go-server/app/app rename to examples/general/dubbo/go-server/app/app diff --git a/examples/dubbo/go-server/app/server.go b/examples/general/dubbo/go-server/app/server.go similarity index 100% rename from examples/dubbo/go-server/app/server.go rename to examples/general/dubbo/go-server/app/server.go diff --git a/examples/dubbo/go-server/app/user.go b/examples/general/dubbo/go-server/app/user.go similarity index 100% rename from examples/dubbo/go-server/app/user.go rename to examples/general/dubbo/go-server/app/user.go diff --git a/examples/dubbo/go-server/app/user_provider.go b/examples/general/dubbo/go-server/app/user_provider.go similarity index 100% rename from examples/dubbo/go-server/app/user_provider.go rename to examples/general/dubbo/go-server/app/user_provider.go diff --git a/examples/dubbo/go-server/app/user_provider1.go b/examples/general/dubbo/go-server/app/user_provider1.go similarity index 100% rename from examples/dubbo/go-server/app/user_provider1.go rename to examples/general/dubbo/go-server/app/user_provider1.go diff --git a/examples/dubbo/go-server/app/user_provider2.go b/examples/general/dubbo/go-server/app/user_provider2.go similarity index 100% rename from examples/dubbo/go-server/app/user_provider2.go rename to examples/general/dubbo/go-server/app/user_provider2.go diff --git a/examples/jsonrpc/go-server/app/version.go b/examples/general/dubbo/go-server/app/version.go similarity index 100% rename from examples/jsonrpc/go-server/app/version.go rename to examples/general/dubbo/go-server/app/version.go diff --git a/examples/jsonrpc/go-server/assembly/bin/load.sh b/examples/general/dubbo/go-server/assembly/bin/load.sh similarity index 100% rename from examples/jsonrpc/go-server/assembly/bin/load.sh rename to examples/general/dubbo/go-server/assembly/bin/load.sh diff --git a/examples/jsonrpc/go-server/assembly/common/app.properties b/examples/general/dubbo/go-server/assembly/common/app.properties similarity index 100% rename from examples/jsonrpc/go-server/assembly/common/app.properties rename to examples/general/dubbo/go-server/assembly/common/app.properties diff --git a/examples/jsonrpc/go-server/assembly/common/build.sh b/examples/general/dubbo/go-server/assembly/common/build.sh similarity index 100% rename from examples/jsonrpc/go-server/assembly/common/build.sh rename to examples/general/dubbo/go-server/assembly/common/build.sh diff --git a/examples/jsonrpc/go-server/assembly/linux/dev.sh b/examples/general/dubbo/go-server/assembly/linux/dev.sh similarity index 100% rename from examples/jsonrpc/go-server/assembly/linux/dev.sh rename to examples/general/dubbo/go-server/assembly/linux/dev.sh diff --git a/examples/jsonrpc/go-server/assembly/linux/release.sh b/examples/general/dubbo/go-server/assembly/linux/release.sh similarity index 100% rename from examples/jsonrpc/go-server/assembly/linux/release.sh rename to examples/general/dubbo/go-server/assembly/linux/release.sh diff --git a/examples/jsonrpc/go-server/assembly/linux/test.sh b/examples/general/dubbo/go-server/assembly/linux/test.sh similarity index 100% rename from examples/jsonrpc/go-server/assembly/linux/test.sh rename to examples/general/dubbo/go-server/assembly/linux/test.sh diff --git a/examples/jsonrpc/go-server/assembly/mac/dev.sh b/examples/general/dubbo/go-server/assembly/mac/dev.sh similarity index 100% rename from examples/jsonrpc/go-server/assembly/mac/dev.sh rename to examples/general/dubbo/go-server/assembly/mac/dev.sh diff --git a/examples/jsonrpc/go-server/assembly/mac/release.sh b/examples/general/dubbo/go-server/assembly/mac/release.sh similarity index 100% rename from examples/jsonrpc/go-server/assembly/mac/release.sh rename to examples/general/dubbo/go-server/assembly/mac/release.sh diff --git a/examples/jsonrpc/go-server/assembly/mac/test.sh b/examples/general/dubbo/go-server/assembly/mac/test.sh similarity index 100% rename from examples/jsonrpc/go-server/assembly/mac/test.sh rename to examples/general/dubbo/go-server/assembly/mac/test.sh diff --git a/examples/jsonrpc/go-server/assembly/windows/dev.sh b/examples/general/dubbo/go-server/assembly/windows/dev.sh similarity index 100% rename from examples/jsonrpc/go-server/assembly/windows/dev.sh rename to examples/general/dubbo/go-server/assembly/windows/dev.sh diff --git a/examples/jsonrpc/go-server/assembly/windows/release.sh b/examples/general/dubbo/go-server/assembly/windows/release.sh similarity index 100% rename from examples/jsonrpc/go-server/assembly/windows/release.sh rename to examples/general/dubbo/go-server/assembly/windows/release.sh diff --git a/examples/jsonrpc/go-server/assembly/windows/test.sh b/examples/general/dubbo/go-server/assembly/windows/test.sh similarity index 100% rename from examples/jsonrpc/go-server/assembly/windows/test.sh rename to examples/general/dubbo/go-server/assembly/windows/test.sh diff --git a/examples/jsonrpc/go-server/profiles/dev/log.yml b/examples/general/dubbo/go-server/profiles/dev/log.yml similarity index 100% rename from examples/jsonrpc/go-server/profiles/dev/log.yml rename to examples/general/dubbo/go-server/profiles/dev/log.yml diff --git a/examples/dubbo/go-server/profiles/dev/server.yml b/examples/general/dubbo/go-server/profiles/dev/server.yml similarity index 98% rename from examples/dubbo/go-server/profiles/dev/server.yml rename to examples/general/dubbo/go-server/profiles/dev/server.yml index 2f0decaec6b1ad8bc46d1cea5f3c3d04dc8bc144..79c2cb2cc22a1b626a631009a0a4c6f29a8f9127 100644 --- a/examples/dubbo/go-server/profiles/dev/server.yml +++ b/examples/general/dubbo/go-server/profiles/dev/server.yml @@ -84,7 +84,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/jsonrpc/go-server/profiles/release/log.yml b/examples/general/dubbo/go-server/profiles/release/log.yml similarity index 100% rename from examples/jsonrpc/go-server/profiles/release/log.yml rename to examples/general/dubbo/go-server/profiles/release/log.yml diff --git a/examples/dubbo/go-server/profiles/release/server.yml b/examples/general/dubbo/go-server/profiles/release/server.yml similarity index 98% rename from examples/dubbo/go-server/profiles/release/server.yml rename to examples/general/dubbo/go-server/profiles/release/server.yml index 92306b706785c55e03c5a496b613b32ca361875c..6890ed3bdb5048b02578ca8eba1620464378463c 100644 --- a/examples/dubbo/go-server/profiles/release/server.yml +++ b/examples/general/dubbo/go-server/profiles/release/server.yml @@ -83,7 +83,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/jsonrpc/go-server/profiles/test/log.yml b/examples/general/dubbo/go-server/profiles/test/log.yml similarity index 100% rename from examples/jsonrpc/go-server/profiles/test/log.yml rename to examples/general/dubbo/go-server/profiles/test/log.yml diff --git a/examples/dubbo/go-server/profiles/test/server.yml b/examples/general/dubbo/go-server/profiles/test/server.yml similarity index 98% rename from examples/dubbo/go-server/profiles/test/server.yml rename to examples/general/dubbo/go-server/profiles/test/server.yml index 03140d6bde21b79bd63719328cff0a5732ab47b3..b6dd41da448d7531a3c5f4f24a8f460e5d1775bc 100644 --- a/examples/dubbo/go-server/profiles/test/server.yml +++ b/examples/general/dubbo/go-server/profiles/test/server.yml @@ -83,7 +83,6 @@ protocol_conf: keep_alive_period: "120s" tcp_r_buf_size: 262144 tcp_w_buf_size: 65536 - pkg_rq_size: 1024 pkg_wq_size: 512 tcp_read_timeout: "1s" tcp_write_timeout: "5s" diff --git a/examples/dubbo/java-client/build.sh b/examples/general/dubbo/java-client/build.sh similarity index 100% rename from examples/dubbo/java-client/build.sh rename to examples/general/dubbo/java-client/build.sh diff --git a/examples/dubbo/java-client/pom.xml b/examples/general/dubbo/java-client/pom.xml similarity index 100% rename from examples/dubbo/java-client/pom.xml rename to examples/general/dubbo/java-client/pom.xml diff --git a/examples/dubbo/java-client/src/main/assembly/assembly.xml b/examples/general/dubbo/java-client/src/main/assembly/assembly.xml similarity index 100% rename from examples/dubbo/java-client/src/main/assembly/assembly.xml rename to examples/general/dubbo/java-client/src/main/assembly/assembly.xml diff --git a/examples/dubbo/java-client/src/main/assembly/conf/dubbo.properties b/examples/general/dubbo/java-client/src/main/assembly/conf/dubbo.properties similarity index 100% rename from examples/dubbo/java-client/src/main/assembly/conf/dubbo.properties rename to examples/general/dubbo/java-client/src/main/assembly/conf/dubbo.properties diff --git a/examples/dubbo/java-client/src/main/assembly/conf/log4j.properties b/examples/general/dubbo/java-client/src/main/assembly/conf/log4j.properties similarity index 100% rename from examples/dubbo/java-client/src/main/assembly/conf/log4j.properties rename to examples/general/dubbo/java-client/src/main/assembly/conf/log4j.properties diff --git a/examples/dubbo/java-client/src/main/java/com/ikurento/user/Consumer.java b/examples/general/dubbo/java-client/src/main/java/com/ikurento/user/Consumer.java similarity index 100% rename from examples/dubbo/java-client/src/main/java/com/ikurento/user/Consumer.java rename to examples/general/dubbo/java-client/src/main/java/com/ikurento/user/Consumer.java diff --git a/examples/dubbo/java-client/src/main/java/com/ikurento/user/Gender.java b/examples/general/dubbo/java-client/src/main/java/com/ikurento/user/Gender.java similarity index 100% rename from examples/dubbo/java-client/src/main/java/com/ikurento/user/Gender.java rename to examples/general/dubbo/java-client/src/main/java/com/ikurento/user/Gender.java diff --git a/examples/dubbo/java-client/src/main/java/com/ikurento/user/User.java b/examples/general/dubbo/java-client/src/main/java/com/ikurento/user/User.java similarity index 100% rename from examples/dubbo/java-client/src/main/java/com/ikurento/user/User.java rename to examples/general/dubbo/java-client/src/main/java/com/ikurento/user/User.java diff --git a/examples/dubbo/java-client/src/main/java/com/ikurento/user/UserProvider.java b/examples/general/dubbo/java-client/src/main/java/com/ikurento/user/UserProvider.java similarity index 100% rename from examples/dubbo/java-client/src/main/java/com/ikurento/user/UserProvider.java rename to examples/general/dubbo/java-client/src/main/java/com/ikurento/user/UserProvider.java diff --git a/examples/dubbo/java-client/src/main/resources/META-INF/spring/dubbo.consumer.xml b/examples/general/dubbo/java-client/src/main/resources/META-INF/spring/dubbo.consumer.xml similarity index 100% rename from examples/dubbo/java-client/src/main/resources/META-INF/spring/dubbo.consumer.xml rename to examples/general/dubbo/java-client/src/main/resources/META-INF/spring/dubbo.consumer.xml diff --git a/examples/dubbo/java-client/src/main/resources/META-INF/spring/service.xml b/examples/general/dubbo/java-client/src/main/resources/META-INF/spring/service.xml similarity index 100% rename from examples/dubbo/java-client/src/main/resources/META-INF/spring/service.xml rename to examples/general/dubbo/java-client/src/main/resources/META-INF/spring/service.xml diff --git a/examples/dubbo/java-client/src/main/resources/log4j.properties b/examples/general/dubbo/java-client/src/main/resources/log4j.properties similarity index 100% rename from examples/dubbo/java-client/src/main/resources/log4j.properties rename to examples/general/dubbo/java-client/src/main/resources/log4j.properties diff --git a/examples/dubbo/java-server/build.sh b/examples/general/dubbo/java-server/build.sh similarity index 100% rename from examples/dubbo/java-server/build.sh rename to examples/general/dubbo/java-server/build.sh diff --git a/examples/dubbo/java-server/pom.xml b/examples/general/dubbo/java-server/pom.xml similarity index 100% rename from examples/dubbo/java-server/pom.xml rename to examples/general/dubbo/java-server/pom.xml diff --git a/examples/dubbo/java-server/script/debug.sh b/examples/general/dubbo/java-server/script/debug.sh similarity index 100% rename from examples/dubbo/java-server/script/debug.sh rename to examples/general/dubbo/java-server/script/debug.sh diff --git a/examples/dubbo/java-server/src/main/assembly/assembly.xml b/examples/general/dubbo/java-server/src/main/assembly/assembly.xml similarity index 100% rename from examples/dubbo/java-server/src/main/assembly/assembly.xml rename to examples/general/dubbo/java-server/src/main/assembly/assembly.xml diff --git a/examples/dubbo/java-server/src/main/assembly/conf/dubbo.properties b/examples/general/dubbo/java-server/src/main/assembly/conf/dubbo.properties similarity index 100% rename from examples/dubbo/java-server/src/main/assembly/conf/dubbo.properties rename to examples/general/dubbo/java-server/src/main/assembly/conf/dubbo.properties diff --git a/examples/dubbo/java-server/src/main/assembly/conf/log4j.properties b/examples/general/dubbo/java-server/src/main/assembly/conf/log4j.properties similarity index 100% rename from examples/dubbo/java-server/src/main/assembly/conf/log4j.properties rename to examples/general/dubbo/java-server/src/main/assembly/conf/log4j.properties diff --git a/examples/dubbo/java-server/src/main/java/com/ikurento/user/Gender.java b/examples/general/dubbo/java-server/src/main/java/com/ikurento/user/Gender.java similarity index 100% rename from examples/dubbo/java-server/src/main/java/com/ikurento/user/Gender.java rename to examples/general/dubbo/java-server/src/main/java/com/ikurento/user/Gender.java diff --git a/examples/dubbo/java-server/src/main/java/com/ikurento/user/Provider.java b/examples/general/dubbo/java-server/src/main/java/com/ikurento/user/Provider.java similarity index 100% rename from examples/dubbo/java-server/src/main/java/com/ikurento/user/Provider.java rename to examples/general/dubbo/java-server/src/main/java/com/ikurento/user/Provider.java diff --git a/examples/dubbo/java-server/src/main/java/com/ikurento/user/Response.java b/examples/general/dubbo/java-server/src/main/java/com/ikurento/user/Response.java similarity index 100% rename from examples/dubbo/java-server/src/main/java/com/ikurento/user/Response.java rename to examples/general/dubbo/java-server/src/main/java/com/ikurento/user/Response.java diff --git a/examples/dubbo/java-server/src/main/java/com/ikurento/user/User.java b/examples/general/dubbo/java-server/src/main/java/com/ikurento/user/User.java similarity index 100% rename from examples/dubbo/java-server/src/main/java/com/ikurento/user/User.java rename to examples/general/dubbo/java-server/src/main/java/com/ikurento/user/User.java diff --git a/examples/dubbo/java-server/src/main/java/com/ikurento/user/UserProvider.java b/examples/general/dubbo/java-server/src/main/java/com/ikurento/user/UserProvider.java similarity index 100% rename from examples/dubbo/java-server/src/main/java/com/ikurento/user/UserProvider.java rename to examples/general/dubbo/java-server/src/main/java/com/ikurento/user/UserProvider.java diff --git a/examples/dubbo/java-server/src/main/java/com/ikurento/user/UserProviderAnotherImpl.java b/examples/general/dubbo/java-server/src/main/java/com/ikurento/user/UserProviderAnotherImpl.java similarity index 100% rename from examples/dubbo/java-server/src/main/java/com/ikurento/user/UserProviderAnotherImpl.java rename to examples/general/dubbo/java-server/src/main/java/com/ikurento/user/UserProviderAnotherImpl.java diff --git a/examples/dubbo/java-server/src/main/java/com/ikurento/user/UserProviderImpl.java b/examples/general/dubbo/java-server/src/main/java/com/ikurento/user/UserProviderImpl.java similarity index 100% rename from examples/dubbo/java-server/src/main/java/com/ikurento/user/UserProviderImpl.java rename to examples/general/dubbo/java-server/src/main/java/com/ikurento/user/UserProviderImpl.java diff --git a/examples/dubbo/java-server/src/main/resources/META-INF/spring/dubbo.provider.xml b/examples/general/dubbo/java-server/src/main/resources/META-INF/spring/dubbo.provider.xml similarity index 100% rename from examples/dubbo/java-server/src/main/resources/META-INF/spring/dubbo.provider.xml rename to examples/general/dubbo/java-server/src/main/resources/META-INF/spring/dubbo.provider.xml diff --git a/examples/dubbo/java-server/src/main/resources/log4j.properties b/examples/general/dubbo/java-server/src/main/resources/log4j.properties similarity index 100% rename from examples/dubbo/java-server/src/main/resources/log4j.properties rename to examples/general/dubbo/java-server/src/main/resources/log4j.properties diff --git a/examples/jsonrpc/go-client/app/client.go b/examples/general/jsonrpc/go-client/app/client.go similarity index 100% rename from examples/jsonrpc/go-client/app/client.go rename to examples/general/jsonrpc/go-client/app/client.go diff --git a/examples/jsonrpc/go-client/app/user.go b/examples/general/jsonrpc/go-client/app/user.go similarity index 100% rename from examples/jsonrpc/go-client/app/user.go rename to examples/general/jsonrpc/go-client/app/user.go diff --git a/examples/jsonrpc/with-configcenter-go-client/app/version.go b/examples/general/jsonrpc/go-client/app/version.go similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/app/version.go rename to examples/general/jsonrpc/go-client/app/version.go diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/bin/load.sh b/examples/general/jsonrpc/go-client/assembly/bin/load.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/bin/load.sh rename to examples/general/jsonrpc/go-client/assembly/bin/load.sh diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/common/app.properties b/examples/general/jsonrpc/go-client/assembly/common/app.properties similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/common/app.properties rename to examples/general/jsonrpc/go-client/assembly/common/app.properties diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/common/build.sh b/examples/general/jsonrpc/go-client/assembly/common/build.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/common/build.sh rename to examples/general/jsonrpc/go-client/assembly/common/build.sh diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/linux/dev.sh b/examples/general/jsonrpc/go-client/assembly/linux/dev.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/linux/dev.sh rename to examples/general/jsonrpc/go-client/assembly/linux/dev.sh diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/linux/release.sh b/examples/general/jsonrpc/go-client/assembly/linux/release.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/linux/release.sh rename to examples/general/jsonrpc/go-client/assembly/linux/release.sh diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/linux/test.sh b/examples/general/jsonrpc/go-client/assembly/linux/test.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/linux/test.sh rename to examples/general/jsonrpc/go-client/assembly/linux/test.sh diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/mac/dev.sh b/examples/general/jsonrpc/go-client/assembly/mac/dev.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/mac/dev.sh rename to examples/general/jsonrpc/go-client/assembly/mac/dev.sh diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/mac/release.sh b/examples/general/jsonrpc/go-client/assembly/mac/release.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/mac/release.sh rename to examples/general/jsonrpc/go-client/assembly/mac/release.sh diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/mac/test.sh b/examples/general/jsonrpc/go-client/assembly/mac/test.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/mac/test.sh rename to examples/general/jsonrpc/go-client/assembly/mac/test.sh diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/windows/dev.sh b/examples/general/jsonrpc/go-client/assembly/windows/dev.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/windows/dev.sh rename to examples/general/jsonrpc/go-client/assembly/windows/dev.sh diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/windows/release.sh b/examples/general/jsonrpc/go-client/assembly/windows/release.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/windows/release.sh rename to examples/general/jsonrpc/go-client/assembly/windows/release.sh diff --git a/examples/jsonrpc/with-configcenter-go-client/assembly/windows/test.sh b/examples/general/jsonrpc/go-client/assembly/windows/test.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/assembly/windows/test.sh rename to examples/general/jsonrpc/go-client/assembly/windows/test.sh diff --git a/examples/jsonrpc/go-client/profiles/dev/client.yml b/examples/general/jsonrpc/go-client/profiles/dev/client.yml similarity index 100% rename from examples/jsonrpc/go-client/profiles/dev/client.yml rename to examples/general/jsonrpc/go-client/profiles/dev/client.yml diff --git a/examples/jsonrpc/with-configcenter-go-client/profiles/dev/log.yml b/examples/general/jsonrpc/go-client/profiles/dev/log.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/profiles/dev/log.yml rename to examples/general/jsonrpc/go-client/profiles/dev/log.yml diff --git a/examples/jsonrpc/go-client/profiles/release/client.yml b/examples/general/jsonrpc/go-client/profiles/release/client.yml similarity index 100% rename from examples/jsonrpc/go-client/profiles/release/client.yml rename to examples/general/jsonrpc/go-client/profiles/release/client.yml diff --git a/examples/jsonrpc/with-configcenter-go-client/profiles/release/log.yml b/examples/general/jsonrpc/go-client/profiles/release/log.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/profiles/release/log.yml rename to examples/general/jsonrpc/go-client/profiles/release/log.yml diff --git a/examples/jsonrpc/go-client/profiles/test/client.yml b/examples/general/jsonrpc/go-client/profiles/test/client.yml similarity index 100% rename from examples/jsonrpc/go-client/profiles/test/client.yml rename to examples/general/jsonrpc/go-client/profiles/test/client.yml diff --git a/examples/jsonrpc/with-configcenter-go-client/profiles/test/log.yml b/examples/general/jsonrpc/go-client/profiles/test/log.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-client/profiles/test/log.yml rename to examples/general/jsonrpc/go-client/profiles/test/log.yml diff --git a/examples/jsonrpc/go-server/app/server.go b/examples/general/jsonrpc/go-server/app/server.go similarity index 100% rename from examples/jsonrpc/go-server/app/server.go rename to examples/general/jsonrpc/go-server/app/server.go diff --git a/examples/jsonrpc/go-server/app/user.go b/examples/general/jsonrpc/go-server/app/user.go similarity index 100% rename from examples/jsonrpc/go-server/app/user.go rename to examples/general/jsonrpc/go-server/app/user.go diff --git a/examples/jsonrpc/go-server/app/user_provider.go b/examples/general/jsonrpc/go-server/app/user_provider.go similarity index 100% rename from examples/jsonrpc/go-server/app/user_provider.go rename to examples/general/jsonrpc/go-server/app/user_provider.go diff --git a/examples/jsonrpc/go-server/app/user_provider1.go b/examples/general/jsonrpc/go-server/app/user_provider1.go similarity index 100% rename from examples/jsonrpc/go-server/app/user_provider1.go rename to examples/general/jsonrpc/go-server/app/user_provider1.go diff --git a/examples/jsonrpc/go-server/app/user_provider2.go b/examples/general/jsonrpc/go-server/app/user_provider2.go similarity index 100% rename from examples/jsonrpc/go-server/app/user_provider2.go rename to examples/general/jsonrpc/go-server/app/user_provider2.go diff --git a/examples/jsonrpc/with-configcenter-go-server/app/version.go b/examples/general/jsonrpc/go-server/app/version.go similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/app/version.go rename to examples/general/jsonrpc/go-server/app/version.go diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/bin/load.sh b/examples/general/jsonrpc/go-server/assembly/bin/load.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/bin/load.sh rename to examples/general/jsonrpc/go-server/assembly/bin/load.sh diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/common/app.properties b/examples/general/jsonrpc/go-server/assembly/common/app.properties similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/common/app.properties rename to examples/general/jsonrpc/go-server/assembly/common/app.properties diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/common/build.sh b/examples/general/jsonrpc/go-server/assembly/common/build.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/common/build.sh rename to examples/general/jsonrpc/go-server/assembly/common/build.sh diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/linux/dev.sh b/examples/general/jsonrpc/go-server/assembly/linux/dev.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/linux/dev.sh rename to examples/general/jsonrpc/go-server/assembly/linux/dev.sh diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/linux/release.sh b/examples/general/jsonrpc/go-server/assembly/linux/release.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/linux/release.sh rename to examples/general/jsonrpc/go-server/assembly/linux/release.sh diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/linux/test.sh b/examples/general/jsonrpc/go-server/assembly/linux/test.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/linux/test.sh rename to examples/general/jsonrpc/go-server/assembly/linux/test.sh diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/mac/dev.sh b/examples/general/jsonrpc/go-server/assembly/mac/dev.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/mac/dev.sh rename to examples/general/jsonrpc/go-server/assembly/mac/dev.sh diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/mac/release.sh b/examples/general/jsonrpc/go-server/assembly/mac/release.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/mac/release.sh rename to examples/general/jsonrpc/go-server/assembly/mac/release.sh diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/mac/test.sh b/examples/general/jsonrpc/go-server/assembly/mac/test.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/mac/test.sh rename to examples/general/jsonrpc/go-server/assembly/mac/test.sh diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/windows/dev.sh b/examples/general/jsonrpc/go-server/assembly/windows/dev.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/windows/dev.sh rename to examples/general/jsonrpc/go-server/assembly/windows/dev.sh diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/windows/release.sh b/examples/general/jsonrpc/go-server/assembly/windows/release.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/windows/release.sh rename to examples/general/jsonrpc/go-server/assembly/windows/release.sh diff --git a/examples/jsonrpc/with-configcenter-go-server/assembly/windows/test.sh b/examples/general/jsonrpc/go-server/assembly/windows/test.sh similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/assembly/windows/test.sh rename to examples/general/jsonrpc/go-server/assembly/windows/test.sh diff --git a/examples/jsonrpc/with-configcenter-go-server/profiles/dev/log.yml b/examples/general/jsonrpc/go-server/profiles/dev/log.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/profiles/dev/log.yml rename to examples/general/jsonrpc/go-server/profiles/dev/log.yml diff --git a/examples/jsonrpc/go-server/profiles/dev/server.yml b/examples/general/jsonrpc/go-server/profiles/dev/server.yml similarity index 100% rename from examples/jsonrpc/go-server/profiles/dev/server.yml rename to examples/general/jsonrpc/go-server/profiles/dev/server.yml diff --git a/examples/jsonrpc/with-configcenter-go-server/profiles/release/log.yml b/examples/general/jsonrpc/go-server/profiles/release/log.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/profiles/release/log.yml rename to examples/general/jsonrpc/go-server/profiles/release/log.yml diff --git a/examples/jsonrpc/go-server/profiles/release/server.yml b/examples/general/jsonrpc/go-server/profiles/release/server.yml similarity index 100% rename from examples/jsonrpc/go-server/profiles/release/server.yml rename to examples/general/jsonrpc/go-server/profiles/release/server.yml diff --git a/examples/jsonrpc/with-configcenter-go-server/profiles/test/log.yml b/examples/general/jsonrpc/go-server/profiles/test/log.yml similarity index 100% rename from examples/jsonrpc/with-configcenter-go-server/profiles/test/log.yml rename to examples/general/jsonrpc/go-server/profiles/test/log.yml diff --git a/examples/jsonrpc/go-server/profiles/test/server.yml b/examples/general/jsonrpc/go-server/profiles/test/server.yml similarity index 100% rename from examples/jsonrpc/go-server/profiles/test/server.yml rename to examples/general/jsonrpc/go-server/profiles/test/server.yml diff --git a/examples/jsonrpc/java-client/build.sh b/examples/general/jsonrpc/java-client/build.sh similarity index 100% rename from examples/jsonrpc/java-client/build.sh rename to examples/general/jsonrpc/java-client/build.sh diff --git a/examples/jsonrpc/java-client/pom.xml b/examples/general/jsonrpc/java-client/pom.xml similarity index 100% rename from examples/jsonrpc/java-client/pom.xml rename to examples/general/jsonrpc/java-client/pom.xml diff --git a/examples/jsonrpc/java-client/src/main/assembly/assembly.xml b/examples/general/jsonrpc/java-client/src/main/assembly/assembly.xml similarity index 100% rename from examples/jsonrpc/java-client/src/main/assembly/assembly.xml rename to examples/general/jsonrpc/java-client/src/main/assembly/assembly.xml diff --git a/examples/jsonrpc/java-client/src/main/assembly/conf/dubbo.properties b/examples/general/jsonrpc/java-client/src/main/assembly/conf/dubbo.properties similarity index 100% rename from examples/jsonrpc/java-client/src/main/assembly/conf/dubbo.properties rename to examples/general/jsonrpc/java-client/src/main/assembly/conf/dubbo.properties diff --git a/examples/jsonrpc/java-client/src/main/assembly/conf/log4j.properties b/examples/general/jsonrpc/java-client/src/main/assembly/conf/log4j.properties similarity index 100% rename from examples/jsonrpc/java-client/src/main/assembly/conf/log4j.properties rename to examples/general/jsonrpc/java-client/src/main/assembly/conf/log4j.properties diff --git a/examples/jsonrpc/java-client/src/main/java/com/ikurento/user/Consumer.java b/examples/general/jsonrpc/java-client/src/main/java/com/ikurento/user/Consumer.java similarity index 100% rename from examples/jsonrpc/java-client/src/main/java/com/ikurento/user/Consumer.java rename to examples/general/jsonrpc/java-client/src/main/java/com/ikurento/user/Consumer.java diff --git a/examples/jsonrpc/java-client/src/main/java/com/ikurento/user/Gender.java b/examples/general/jsonrpc/java-client/src/main/java/com/ikurento/user/Gender.java similarity index 100% rename from examples/jsonrpc/java-client/src/main/java/com/ikurento/user/Gender.java rename to examples/general/jsonrpc/java-client/src/main/java/com/ikurento/user/Gender.java diff --git a/examples/jsonrpc/java-client/src/main/java/com/ikurento/user/User.java b/examples/general/jsonrpc/java-client/src/main/java/com/ikurento/user/User.java similarity index 100% rename from examples/jsonrpc/java-client/src/main/java/com/ikurento/user/User.java rename to examples/general/jsonrpc/java-client/src/main/java/com/ikurento/user/User.java diff --git a/examples/jsonrpc/java-client/src/main/java/com/ikurento/user/UserProvider.java b/examples/general/jsonrpc/java-client/src/main/java/com/ikurento/user/UserProvider.java similarity index 100% rename from examples/jsonrpc/java-client/src/main/java/com/ikurento/user/UserProvider.java rename to examples/general/jsonrpc/java-client/src/main/java/com/ikurento/user/UserProvider.java diff --git a/examples/jsonrpc/java-client/src/main/resources/META-INF/spring/dubbo.consumer.xml b/examples/general/jsonrpc/java-client/src/main/resources/META-INF/spring/dubbo.consumer.xml similarity index 100% rename from examples/jsonrpc/java-client/src/main/resources/META-INF/spring/dubbo.consumer.xml rename to examples/general/jsonrpc/java-client/src/main/resources/META-INF/spring/dubbo.consumer.xml diff --git a/examples/jsonrpc/java-client/src/main/resources/META-INF/spring/service.xml b/examples/general/jsonrpc/java-client/src/main/resources/META-INF/spring/service.xml similarity index 100% rename from examples/jsonrpc/java-client/src/main/resources/META-INF/spring/service.xml rename to examples/general/jsonrpc/java-client/src/main/resources/META-INF/spring/service.xml diff --git a/examples/jsonrpc/java-client/src/main/resources/log4j.properties b/examples/general/jsonrpc/java-client/src/main/resources/log4j.properties similarity index 100% rename from examples/jsonrpc/java-client/src/main/resources/log4j.properties rename to examples/general/jsonrpc/java-client/src/main/resources/log4j.properties diff --git a/examples/jsonrpc/java-server/build.sh b/examples/general/jsonrpc/java-server/build.sh similarity index 100% rename from examples/jsonrpc/java-server/build.sh rename to examples/general/jsonrpc/java-server/build.sh diff --git a/examples/jsonrpc/java-server/pom.xml b/examples/general/jsonrpc/java-server/pom.xml similarity index 100% rename from examples/jsonrpc/java-server/pom.xml rename to examples/general/jsonrpc/java-server/pom.xml diff --git a/examples/jsonrpc/java-server/script/debug.sh b/examples/general/jsonrpc/java-server/script/debug.sh similarity index 100% rename from examples/jsonrpc/java-server/script/debug.sh rename to examples/general/jsonrpc/java-server/script/debug.sh diff --git a/examples/jsonrpc/java-server/src/main/assembly/assembly.xml b/examples/general/jsonrpc/java-server/src/main/assembly/assembly.xml similarity index 100% rename from examples/jsonrpc/java-server/src/main/assembly/assembly.xml rename to examples/general/jsonrpc/java-server/src/main/assembly/assembly.xml diff --git a/examples/jsonrpc/java-server/src/main/assembly/conf/dubbo.properties b/examples/general/jsonrpc/java-server/src/main/assembly/conf/dubbo.properties similarity index 100% rename from examples/jsonrpc/java-server/src/main/assembly/conf/dubbo.properties rename to examples/general/jsonrpc/java-server/src/main/assembly/conf/dubbo.properties diff --git a/examples/jsonrpc/java-server/src/main/assembly/conf/log4j.properties b/examples/general/jsonrpc/java-server/src/main/assembly/conf/log4j.properties similarity index 100% rename from examples/jsonrpc/java-server/src/main/assembly/conf/log4j.properties rename to examples/general/jsonrpc/java-server/src/main/assembly/conf/log4j.properties diff --git a/examples/jsonrpc/java-server/src/main/java/com/ikurento/user/Gender.java b/examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/Gender.java similarity index 100% rename from examples/jsonrpc/java-server/src/main/java/com/ikurento/user/Gender.java rename to examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/Gender.java diff --git a/examples/jsonrpc/java-server/src/main/java/com/ikurento/user/Provider.java b/examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/Provider.java similarity index 100% rename from examples/jsonrpc/java-server/src/main/java/com/ikurento/user/Provider.java rename to examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/Provider.java diff --git a/examples/jsonrpc/java-server/src/main/java/com/ikurento/user/Response.java b/examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/Response.java similarity index 100% rename from examples/jsonrpc/java-server/src/main/java/com/ikurento/user/Response.java rename to examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/Response.java diff --git a/examples/jsonrpc/java-server/src/main/java/com/ikurento/user/User.java b/examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/User.java similarity index 100% rename from examples/jsonrpc/java-server/src/main/java/com/ikurento/user/User.java rename to examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/User.java diff --git a/examples/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProvider.java b/examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProvider.java similarity index 100% rename from examples/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProvider.java rename to examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProvider.java diff --git a/examples/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProviderAnotherImpl.java b/examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProviderAnotherImpl.java similarity index 100% rename from examples/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProviderAnotherImpl.java rename to examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProviderAnotherImpl.java diff --git a/examples/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProviderImpl.java b/examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProviderImpl.java similarity index 100% rename from examples/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProviderImpl.java rename to examples/general/jsonrpc/java-server/src/main/java/com/ikurento/user/UserProviderImpl.java diff --git a/examples/jsonrpc/java-server/src/main/resources/META-INF/spring/dubbo.provider.xml b/examples/general/jsonrpc/java-server/src/main/resources/META-INF/spring/dubbo.provider.xml similarity index 100% rename from examples/jsonrpc/java-server/src/main/resources/META-INF/spring/dubbo.provider.xml rename to examples/general/jsonrpc/java-server/src/main/resources/META-INF/spring/dubbo.provider.xml diff --git a/examples/jsonrpc/java-server/src/main/resources/log4j.properties b/examples/general/jsonrpc/java-server/src/main/resources/log4j.properties similarity index 100% rename from examples/jsonrpc/java-server/src/main/resources/log4j.properties rename to examples/general/jsonrpc/java-server/src/main/resources/log4j.properties diff --git a/examples/helloworld/dubbo/go-client/app/client.go b/examples/helloworld/dubbo/go-client/app/client.go new file mode 100644 index 0000000000000000000000000000000000000000..b416edb5a9b77c2782af01de854bc0c40b4b00bb --- /dev/null +++ b/examples/helloworld/dubbo/go-client/app/client.go @@ -0,0 +1,54 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package main + +import ( + "context" + "fmt" + "time" +) + +import ( + _ "github.com/apache/dubbo-go/common/proxy/proxy_factory" + "github.com/apache/dubbo-go/config" + _ "github.com/apache/dubbo-go/protocol/dubbo" + _ "github.com/apache/dubbo-go/registry/protocol" + + _ "github.com/apache/dubbo-go/filter/impl" + + _ "github.com/apache/dubbo-go/cluster/cluster_impl" + _ "github.com/apache/dubbo-go/cluster/loadbalance" + _ "github.com/apache/dubbo-go/registry/zookeeper" +) + +// they are necessary: +// export CONF_CONSUMER_FILE_PATH="xxx" +// export APP_LOG_CONF_FILE="xxx" +func main() { + + config.Load() + time.Sleep(3e9) + + println("\n\n\nstart to test dubbo") + user := &User{} + err := userProvider.GetUser(context.TODO(), []interface{}{"A001"}, user) + if err != nil { + panic(err) + } + fmt.Printf("response result: %v\n", user) +} diff --git a/examples/helloworld/dubbo/go-client/app/user.go b/examples/helloworld/dubbo/go-client/app/user.go new file mode 100644 index 0000000000000000000000000000000000000000..e8efc863808213a4af42c17bdf27d151ebe3b7f0 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/app/user.go @@ -0,0 +1,57 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package main + +import ( + "context" + "time" +) + +import ( + hessian "github.com/dubbogo/hessian2" +) + +import ( + "github.com/apache/dubbo-go/config" +) + +var userProvider = new(UserProvider) + +func init() { + config.SetConsumerService(userProvider) + hessian.RegisterPOJO(&User{}) +} + +type User struct { + Id string + Name string + Age int32 + Time time.Time +} + +type UserProvider struct { + GetUser func(ctx context.Context, req []interface{}, rsp *User) error +} + +func (u *UserProvider) Reference() string { + return "UserProvider" +} + +func (User) JavaClassName() string { + return "com.ikurento.user.User" +} diff --git a/examples/helloworld/dubbo/go-client/assembly/bin/load.sh b/examples/helloworld/dubbo/go-client/assembly/bin/load.sh new file mode 100644 index 0000000000000000000000000000000000000000..07d5d15eac7b7974845e36c3807e7ec55875de65 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/bin/load.sh @@ -0,0 +1,196 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : dubbogo app devops script +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-05-13 02:01 +# FILE : load.sh +# ****************************************************** + +APP_NAME="APPLICATION_NAME" +APP_ARGS="" +SLEEP_INTERVAL=5 +MAX_LIFETIME=4000 + +PROJECT_HOME="" +OS_NAME=`uname` +if [[ ${OS_NAME} != "Windows" ]]; then + PROJECT_HOME=`pwd` + PROJECT_HOME=${PROJECT_HOME}"/" +else + APP_NAME="APPLICATION_NAME.exe" +fi + +export CONF_CONSUMER_FILE_PATH=${PROJECT_HOME}"TARGET_CONF_FILE" +export APP_LOG_CONF_FILE=${PROJECT_HOME}"TARGET_LOG_CONF_FILE" +# export GOTRACEBACK=system +# export GODEBUG=gctrace=1 + +usage() { + echo "Usage: $0 start [conf suffix]" + echo " $0 stop" + echo " $0 term" + echo " $0 restart" + echo " $0 list" + echo " $0 monitor" + echo " $0 crontab" + exit +} + +start() { + arg=$1 + if [ "$arg" = "" ];then + echo "No registry type! Default client.yml!" + else + export CONF_CONSUMER_FILE_PATH=${CONF_CONSUMER_FILE_PATH//\.yml/\_$arg\.yml} + fi + if [ ! -f "${CONF_CONSUMER_FILE_PATH}" ];then + echo $CONF_CONSUMER_FILE_PATH" is not existing!" + return + fi + APP_LOG_PATH=${PROJECT_HOME}"logs/" + mkdir -p ${APP_LOG_PATH} + APP_BIN=${PROJECT_HOME}sbin/${APP_NAME} + chmod u+x ${APP_BIN} + # CMD="nohup ${APP_BIN} ${APP_ARGS} >>${APP_NAME}.nohup.out 2>&1 &" + CMD="${APP_BIN}" + eval ${CMD} + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $2}'` + if [[ ${OS_NAME} != "Linux" && ${OS_NAME} != "Darwin" ]]; then + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $1}'` + fi + CUR=`date +%FT%T` + if [ "${PID}" != "" ]; then + for p in ${PID} + do + echo "start ${APP_NAME} ( pid =" ${p} ") at " ${CUR} + done + fi +} + +stop() { + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $2}'` + if [[ ${OS_NAME} != "Linux" && ${OS_NAME} != "Darwin" ]]; then + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $1}'` + fi + if [ "${PID}" != "" ]; + then + for ps in ${PID} + do + echo "kill -SIGINT ${APP_NAME} ( pid =" ${ps} ")" + kill -2 ${ps} + done + fi +} + + +term() { + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $2}'` + if [[ ${OS_NAME} != "Linux" && ${OS_NAME} != "Darwin" ]]; then + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $1}'` + fi + if [ "${PID}" != "" ]; + then + for ps in ${PID} + do + echo "kill -9 ${APP_NAME} ( pid =" ${ps} ")" + kill -9 ${ps} + done + fi +} + +list() { + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{printf("%s,%s,%s,%s\n", $1, $2, $9, $10)}'` + if [[ ${OS_NAME} != "Linux" && ${OS_NAME} != "Darwin" ]]; then + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{printf("%s,%s,%s,%s,%s\n", $1, $4, $6, $7, $8)}'` + fi + + if [ "${PID}" != "" ]; then + echo "list ${APP_NAME}" + + if [[ ${OS_NAME} == "Linux" || ${OS_NAME} == "Darwin" ]]; then + echo "index: user, pid, start, duration" + else + echo "index: PID, WINPID, UID, STIME, COMMAND" + fi + idx=0 + for ps in ${PID} + do + echo "${idx}: ${ps}" + ((idx ++)) + done + fi +} + +monitor() { + idx=0 + while true; do + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $2}'` + if [[ ${OS_NAME} != "Linux" && ${OS_NAME} != "Darwin" ]]; then + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $1}'` + fi + if [[ "${PID}" == "" ]]; then + start + idx=0 + fi + + ((LIFE=idx*${SLEEP_INTERVAL})) + echo "${APP_NAME} ( pid = " ${PID} ") has been working in normal state for " $LIFE " seconds." + ((idx ++)) + sleep ${SLEEP_INTERVAL} + done +} + +crontab() { + idx=0 + while true; do + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $2}'` + if [[ ${OS_NAME} != "Linux" && ${OS_NAME} != "Darwin" ]]; then + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $1}'` + fi + if [[ "${PID}" == "" ]]; then + start + idx=0 + fi + + ((LIFE=idx*${SLEEP_INTERVAL})) + echo "${APP_NAME} ( pid = " ${PID} ") has been working in normal state for " $LIFE " seconds." + ((idx ++)) + sleep ${SLEEP_INTERVAL} + if [[ ${LIFE} -gt ${MAX_LIFETIME} ]]; then + kill -9 ${PID} + fi + done +} + +opt=$1 +case C"$opt" in + Cstart) + start $2 + ;; + Cstop) + stop + ;; + Cterm) + term + ;; + Crestart) + term + start $2 + ;; + Clist) + list + ;; + Cmonitor) + monitor + ;; + Ccrontab) + crontab + ;; + C*) + usage + ;; +esac + diff --git a/examples/helloworld/dubbo/go-client/assembly/common/app.properties b/examples/helloworld/dubbo/go-client/assembly/common/app.properties new file mode 100644 index 0000000000000000000000000000000000000000..6bbd6db850ceeaf5ff873fee01a3578237cbd557 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/common/app.properties @@ -0,0 +1,17 @@ +# dubbogo application configure script +# ****************************************************** +# DESC : dubbogo environment variable +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:29 +# FILE : app.properties +# ****************************************************** + +export TARGET_EXEC_NAME="user_info_client" +# BUILD_PACKAGE="dubbogo-examples/user-info/client/app" +export BUILD_PACKAGE="app" + +export TARGET_CONF_FILE="conf/client.yml" +export TARGET_LOG_CONF_FILE="conf/log.yml" diff --git a/examples/helloworld/dubbo/go-client/assembly/common/build.sh b/examples/helloworld/dubbo/go-client/assembly/common/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..e72418297ad2f0ac6985476b5a8d5e03b9e7584e --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/common/build.sh @@ -0,0 +1,77 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:28 +# FILE : build.sh +# ****************************************************** + +rm -rf target/ + +PROJECT_HOME=`pwd` +TARGET_FOLDER=${PROJECT_HOME}/target/${GOOS} + +TARGET_SBIN_NAME=${TARGET_EXEC_NAME} +version=`cat app/version.go | grep Version | grep -v "Apache" | awk -F '=' '{print $2}' | awk -F '"' '{print $2}'` +if [[ ${GOOS} == "windows" ]]; then + TARGET_SBIN_NAME=${TARGET_SBIN_NAME}.exe +fi +TARGET_NAME=${TARGET_FOLDER}/${TARGET_SBIN_NAME} +if [[ $PROFILE == "dev" || $PROFILE == "test" ]]; then + # GFLAGS=-gcflags "-N -l" -race -x -v # -x浼氭妸go build鐨勮缁嗚繃绋嬭緭鍑� + # GFLAGS=-gcflags "-N -l" -race -v + # GFLAGS="-gcflags \"-N -l\" -v" + cd ${BUILD_PACKAGE} && GOOS=$GOOS GOARCH=$GOARCH go build -gcflags "-N -l" -x -v -i -o ${TARGET_NAME} && cd - +else + # -s鍘绘帀绗﹀彿琛紙鐒跺悗panic鏃跺€欑殑stack trace灏辨病鏈変换浣曟枃浠跺悕/琛屽彿淇℃伅浜嗭紝杩欎釜绛変环浜庢櫘閫欳/C++绋嬪簭琚玸trip鐨勬晥鏋滐級锛� + # -w鍘绘帀DWARF璋冭瘯淇℃伅锛屽緱鍒扮殑绋嬪簭灏变笉鑳界敤gdb璋冭瘯浜嗐€�-s鍜�-w涔熷彲浠ュ垎寮€浣跨敤锛屼竴鑸潵璇村鏋滀笉鎵撶畻鐢╣db璋冭瘯锛� + # -w鍩烘湰娌″暐鎹熷け銆�-s鐨勬崯澶卞氨鏈夌偣澶т簡銆� + cd ${BUILD_PACKAGE} && GOOS=$GOOS GOARCH=$GOARCH go build -ldflags "-w" -x -v -i -o ${TARGET_NAME} && cd - +fi + +TAR_NAME=${TARGET_EXEC_NAME}-${version}-`date "+%Y%m%d-%H%M"`-${PROFILE} + +mkdir -p ${TARGET_FOLDER}/${TAR_NAME} + +SBIN_DIR=${TARGET_FOLDER}/${TAR_NAME}/sbin +BIN_DIR=${TARGET_FOLDER}/${TAR_NAME} +CONF_DIR=${TARGET_FOLDER}/${TAR_NAME}/conf + +mkdir -p ${SBIN_DIR} +mkdir -p ${CONF_DIR} + +mv ${TARGET_NAME} ${SBIN_DIR} +cp -r assembly/bin ${BIN_DIR} +cd ${BIN_DIR}/bin/ && mv load.sh load_${TARGET_EXEC_NAME}.sh && cd - + +platform=$(uname) +# modify APPLICATION_NAME +if [ ${platform} == "Darwin" ]; then + sed -i "" "s~APPLICATION_NAME~${TARGET_EXEC_NAME}~g" ${BIN_DIR}/bin/* +else + sed -i "s~APPLICATION_NAME~${TARGET_EXEC_NAME}~g" ${BIN_DIR}/bin/* +fi + +# modify TARGET_CONF_FILE +if [ ${platform} == "Darwin" ]; then + sed -i "" "s~TARGET_CONF_FILE~${TARGET_CONF_FILE}~g" ${BIN_DIR}/bin/* +else + sed -i "s~TARGET_CONF_FILE~${TARGET_CONF_FILE}~g" ${BIN_DIR}/bin/* +fi + +# modify TARGET_LOG_CONF_FILE +if [ ${platform} == "Darwin" ]; then + sed -i "" "s~TARGET_LOG_CONF_FILE~${TARGET_LOG_CONF_FILE}~g" ${BIN_DIR}/bin/* +else + sed -i "s~TARGET_LOG_CONF_FILE~${TARGET_LOG_CONF_FILE}~g" ${BIN_DIR}/bin/* +fi + +cp -r profiles/${PROFILE}/* ${CONF_DIR} + +cd ${TARGET_FOLDER} + +tar czf ${TAR_NAME}.tar.gz ${TAR_NAME}/* + diff --git a/examples/helloworld/dubbo/go-client/assembly/linux/dev.sh b/examples/helloworld/dubbo/go-client/assembly/linux/dev.sh new file mode 100644 index 0000000000000000000000000000000000000000..3373f01b948b708cd7bc1958c9d56a9042c60a68 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/linux/dev.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for dev env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2017-10-18 13:24 +# FILE : dev.sh +# ****************************************************** + + +set -e + +export GOOS=linux +export GOARCH=amd64 + +export PROFILE="dev" + +PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then + . ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then + sh ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-client/assembly/linux/release.sh b/examples/helloworld/dubbo/go-client/assembly/linux/release.sh new file mode 100644 index 0000000000000000000000000000000000000000..34867b8b3488778cd76a1dc7802393dcab6b0df0 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/linux/release.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for release env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:34 +# FILE : test.sh +# ****************************************************** + + +set -e + +export GOOS=linux +export GOARCH=amd64 + +export PROFILE="release" +export PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then + . ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then + sh ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-client/assembly/linux/test.sh b/examples/helloworld/dubbo/go-client/assembly/linux/test.sh new file mode 100644 index 0000000000000000000000000000000000000000..1bbbefd1e14e08c16deaf859e2841f4d1fe88e9c --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/linux/test.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for test env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:34 +# FILE : test.sh +# ****************************************************** + + +set -e + +export GOOS=linux +export GOARCH=amd64 + +export PROFILE="test" +export PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then + . ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then + sh ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-client/assembly/mac/dev.sh b/examples/helloworld/dubbo/go-client/assembly/mac/dev.sh new file mode 100644 index 0000000000000000000000000000000000000000..b68ac83b6524a6713cd90c4fc5968fe64b1a9545 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/mac/dev.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for dev env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2017-10-18 13:24 +# FILE : dev.sh +# ****************************************************** + + +set -e + +export GOOS=darwin +export GOARCH=amd64 + +export PROFILE="dev" + +export PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then + . ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then + sh ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-client/assembly/mac/release.sh b/examples/helloworld/dubbo/go-client/assembly/mac/release.sh new file mode 100644 index 0000000000000000000000000000000000000000..688288b3b1b989e8af70a3674b34ea8e0668f3b4 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/mac/release.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for release env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:34 +# FILE : test.sh +# ****************************************************** + + +set -e + +export GOOS=darwin +export GOARCH=amd64 + +export PROFILE="release" +export PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then + . ${PROJECT_HOME}/assembly/common/app.properties +fi + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then + sh ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-client/assembly/mac/test.sh b/examples/helloworld/dubbo/go-client/assembly/mac/test.sh new file mode 100644 index 0000000000000000000000000000000000000000..56d6c11ecd6a1dc5984c74b88c10be9239e57428 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/mac/test.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for test env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:34 +# FILE : test.sh +# ****************************************************** + + +set -e + +export GOOS=darwin +export GOARCH=amd64 + +export PROFILE="test" +export PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then + . ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then + sh ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-client/assembly/windows/dev.sh b/examples/helloworld/dubbo/go-client/assembly/windows/dev.sh new file mode 100644 index 0000000000000000000000000000000000000000..91cf6f23bcbecb26db798469a30529261aabbbb6 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/windows/dev.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for dev env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2017-10-18 13:24 +# FILE : dev.sh +# ****************************************************** + + +set -e + +export GOOS=linux +export GOARCH=amd64 + +export PROFILE="dev" +PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then + . ${PROJECT_HOME}/assembly/common/app.properties +fi + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then + sh ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-client/assembly/windows/release.sh b/examples/helloworld/dubbo/go-client/assembly/windows/release.sh new file mode 100644 index 0000000000000000000000000000000000000000..f317720bd53d9c9e5f8f484b6eb682c9c736af0c --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/windows/release.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for release env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:34 +# FILE : test.sh +# ****************************************************** + + +set -e + +export GOOS=windows +export GOARCH=amd64 + +export PROFILE="release" +export PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then + . ${PROJECT_HOME}/assembly/common/app.properties +fi + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then + sh ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-client/assembly/windows/test.sh b/examples/helloworld/dubbo/go-client/assembly/windows/test.sh new file mode 100644 index 0000000000000000000000000000000000000000..7dd2bec5260e647b57a46aaa37acc098babff068 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/assembly/windows/test.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for test env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:34 +# FILE : test.sh +# ****************************************************** + + +set -e + +export GOOS=windows +export GOARCH=amd64 + +export PROFILE="test" +export PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then + . ${PROJECT_HOME}/assembly/common/app.properties +fi + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then + sh ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-client/profiles/dev/client.yml b/examples/helloworld/dubbo/go-client/profiles/dev/client.yml new file mode 100644 index 0000000000000000000000000000000000000000..fed05b09734c41ef7b53ad2d88a953f997d50735 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/profiles/dev/client.yml @@ -0,0 +1,61 @@ +# dubbo client yaml configure file + + +check: true +# client +request_timeout : "3s" +# connect timeout +connect_timeout : "3s" + +# application config +application_config: + organization : "ikurento.com" + name : "BDTService" + module : "dubbogo user-info client" + version : "0.0.1" + owner : "ZX" + environment : "dev" + +registries : + "demoZk": + protocol: "zookeeper" + timeout : "3s" + address: "127.0.0.1:2181" + username: "" + password: "" + + +references: + "UserProvider": + # 鍙互鎸囧畾澶氫釜registry锛屼娇鐢ㄩ€楀彿闅斿紑;涓嶆寚瀹氶粯璁ゅ悜鎵€鏈夋敞鍐屼腑蹇冩敞鍐� + registry: "demoZk" + protocol : "dubbo" + interface : "com.ikurento.user.UserProvider" + cluster: "failover" + methods : + - name: "GetUser" + retries: 3 + + +protocol_conf: + dubbo: + reconnect_interval: 0 + connection_number: 2 + heartbeat_period: "5s" + session_timeout: "20s" + pool_size: 64 + pool_ttl: 600 + getty_session_param: + compress_encoding: false + tcp_no_delay: true + tcp_keep_alive: true + keep_alive_period: "120s" + tcp_r_buf_size: 262144 + tcp_w_buf_size: 65536 + pkg_rq_size: 1024 + pkg_wq_size: 512 + tcp_read_timeout: "1s" + tcp_write_timeout: "5s" + wait_timeout: "1s" + max_msg_len: 10240 + session_name: "client" diff --git a/examples/helloworld/dubbo/go-client/profiles/dev/log.yml b/examples/helloworld/dubbo/go-client/profiles/dev/log.yml new file mode 100644 index 0000000000000000000000000000000000000000..59fa4279ad85272c4c49d532beaf23b74d00f58a --- /dev/null +++ b/examples/helloworld/dubbo/go-client/profiles/dev/log.yml @@ -0,0 +1,28 @@ + +level: "debug" +development: true +disableCaller: false +disableStacktrace: false +sampling: +encoding: "console" + +# encoder +encoderConfig: + messageKey: "message" + levelKey: "level" + timeKey: "time" + nameKey: "logger" + callerKey: "caller" + stacktraceKey: "stacktrace" + lineEnding: "" + levelEncoder: "capitalColor" + timeEncoder: "iso8601" + durationEncoder: "seconds" + callerEncoder: "short" + nameEncoder: "" + +outputPaths: + - "stderr" +errorOutputPaths: + - "stderr" +initialFields: diff --git a/examples/helloworld/dubbo/go-client/profiles/release/client.yml b/examples/helloworld/dubbo/go-client/profiles/release/client.yml new file mode 100644 index 0000000000000000000000000000000000000000..02bf722754632f12d0e8e7cab3979ce360ffd7c7 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/profiles/release/client.yml @@ -0,0 +1,60 @@ +# dubbo client yaml configure file + + +check: true +# client +request_timeout : "3s" +# connect timeout +connect_timeout : "3s" + +# application config +application_config: + organization : "ikurento.com" + name : "BDTService" + module : "dubbogo user-info client" + version : "0.0.1" + owner : "ZX" + environment : "release" + +registries : + "hangzhouzk": + protocol: "zookeeper" + timeout : "3s" + address: "127.0.0.1:2181" + username: "" + password: "" + + +references: + "UserProvider": + # 鍙互鎸囧畾澶氫釜registry锛屼娇鐢ㄩ€楀彿闅斿紑;涓嶆寚瀹氶粯璁ゅ悜鎵€鏈夋敞鍐屼腑蹇冩敞鍐� + registry: "hangzhouzk" + protocol : "dubbo" + interface : "com.ikurento.user.UserProvider" + cluster: "failover" + methods : + - name: "GetUser" + retries: 3 + +protocol_conf: + dubbo: + reconnect_interval: 0 + connection_number: 2 + heartbeat_period: "5s" + session_timeout: "20s" + pool_size: 64 + pool_ttl: 600 + getty_session_param: + compress_encoding: false + tcp_no_delay: true + tcp_keep_alive: true + keep_alive_period: "120s" + tcp_r_buf_size: 262144 + tcp_w_buf_size: 65536 + pkg_rq_size: 1024 + pkg_wq_size: 512 + tcp_read_timeout: "1s" + tcp_write_timeout: "5s" + wait_timeout: "1s" + max_msg_len: 10240 + session_name: "client" diff --git a/examples/helloworld/dubbo/go-client/profiles/release/log.yml b/examples/helloworld/dubbo/go-client/profiles/release/log.yml new file mode 100644 index 0000000000000000000000000000000000000000..e0514be020eedf594d99d112183cdd5ce199e46d --- /dev/null +++ b/examples/helloworld/dubbo/go-client/profiles/release/log.yml @@ -0,0 +1,28 @@ + +level: "warn" +development: true +disableCaller: true +disableStacktrace: true +sampling: +encoding: "console" + +# encoder +encoderConfig: + messageKey: "message" + levelKey: "level" + timeKey: "time" + nameKey: "logger" + callerKey: "caller" + stacktraceKey: "stacktrace" + lineEnding: "" + levelEncoder: "capitalColor" + timeEncoder: "iso8601" + durationEncoder: "seconds" + callerEncoder: "short" + nameEncoder: "" + +outputPaths: + - "stderr" +errorOutputPaths: + - "stderr" +initialFields: diff --git a/examples/helloworld/dubbo/go-client/profiles/test/client.yml b/examples/helloworld/dubbo/go-client/profiles/test/client.yml new file mode 100644 index 0000000000000000000000000000000000000000..417a388c6cfb38a6a1563e9c4ab8856e4b2f30f8 --- /dev/null +++ b/examples/helloworld/dubbo/go-client/profiles/test/client.yml @@ -0,0 +1,59 @@ +# dubbo client yaml configure file + + +check: true +# client +request_timeout : "3s" +# connect timeout +connect_timeout : "3s" + +# application config +application_config: + organization : "ikurento.com" + name : "BDTService" + module : "dubbogo user-info client" + version : "0.0.1" + owner : "ZX" + environment : "test" + +registries : + "hangzhouzk": + protocol: "zookeeper" + timeout : "3s" + address: "127.0.0.1:2181" + username: "" + password: "" + +references: + "UserProvider": + # 鍙互鎸囧畾澶氫釜registry锛屼娇鐢ㄩ€楀彿闅斿紑;涓嶆寚瀹氶粯璁ゅ悜鎵€鏈夋敞鍐屼腑蹇冩敞鍐� + registry: "hangzhouzk" + protocol : "dubbo" + interface : "com.ikurento.user.UserProvider" + cluster: "failover" + methods : + - name: "GetUser" + retries: 3 + +protocol_conf: + dubbo: + reconnect_interval: 0 + connection_number: 2 + heartbeat_period: "5s" + session_timeout: "20s" + pool_size: 64 + pool_ttl: 600 + getty_session_param: + compress_encoding: false + tcp_no_delay: true + tcp_keep_alive: true + keep_alive_period: "120s" + tcp_r_buf_size: 262144 + tcp_w_buf_size: 65536 + pkg_rq_size: 1024 + pkg_wq_size: 512 + tcp_read_timeout: "1s" + tcp_write_timeout: "5s" + wait_timeout: "1s" + max_msg_len: 10240 + session_name: "client" diff --git a/examples/helloworld/dubbo/go-client/profiles/test/log.yml b/examples/helloworld/dubbo/go-client/profiles/test/log.yml new file mode 100644 index 0000000000000000000000000000000000000000..baee0b7248484e425f88f35ab128212c931ff85e --- /dev/null +++ b/examples/helloworld/dubbo/go-client/profiles/test/log.yml @@ -0,0 +1,28 @@ + +level: "info" +development: false +disableCaller: false +disableStacktrace: true +sampling: +encoding: "console" + +# encoder +encoderConfig: + messageKey: "message" + levelKey: "level" + timeKey: "time" + nameKey: "logger" + callerKey: "caller" + stacktraceKey: "stacktrace" + lineEnding: "" + levelEncoder: "capitalColor" + timeEncoder: "iso8601" + durationEncoder: "seconds" + callerEncoder: "short" + nameEncoder: "" + +outputPaths: + - "stderr" +errorOutputPaths: + - "stderr" +initialFields: diff --git a/examples/helloworld/dubbo/go-server/app/server.go b/examples/helloworld/dubbo/go-server/app/server.go new file mode 100644 index 0000000000000000000000000000000000000000..29f2ad57ead58c09614ccf5f7098c77612085449 --- /dev/null +++ b/examples/helloworld/dubbo/go-server/app/server.go @@ -0,0 +1,77 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package main + +import ( + "fmt" + "os" + "os/signal" + "syscall" + "time" +) + +import ( + "github.com/apache/dubbo-go/common/logger" + "github.com/apache/dubbo-go/config" + _ "github.com/apache/dubbo-go/protocol/dubbo" + _ "github.com/apache/dubbo-go/registry/protocol" + + _ "github.com/apache/dubbo-go/common/proxy/proxy_factory" + _ "github.com/apache/dubbo-go/filter/impl" + + _ "github.com/apache/dubbo-go/cluster/cluster_impl" + _ "github.com/apache/dubbo-go/cluster/loadbalance" + _ "github.com/apache/dubbo-go/registry/zookeeper" +) + +var ( + survivalTimeout = int(3e9) +) + +// they are necessary: +// export CONF_PROVIDER_FILE_PATH="xxx" +// export APP_LOG_CONF_FILE="xxx" +func main() { + + config.Load() + + initSignal() +} + +func initSignal() { + signals := make(chan os.Signal, 1) + // It is not possible to block SIGKILL or syscall.SIGSTOP + signal.Notify(signals, os.Interrupt, os.Kill, syscall.SIGHUP, syscall.SIGQUIT, syscall.SIGTERM, syscall.SIGINT) + for { + sig := <-signals + logger.Infof("get signal %s", sig.String()) + switch sig { + case syscall.SIGHUP: + // reload() + default: + go time.AfterFunc(time.Duration(survivalTimeout), func() { + logger.Warnf("app exit now by force...") + os.Exit(1) + }) + + // 瑕佷箞fastFailTimeout鏃堕棿鍐呮墽琛屽畬姣曚笅闈㈢殑閫昏緫鐒跺悗绋嬪簭閫€鍑猴紝瑕佷箞鎵ц涓婇潰鐨勮秴鏃跺嚱鏁扮▼搴忓己琛岄€€鍑� + fmt.Println("provider app exit now...") + return + } + } +} diff --git a/examples/helloworld/dubbo/go-server/app/user.go b/examples/helloworld/dubbo/go-server/app/user.go new file mode 100644 index 0000000000000000000000000000000000000000..dbf84f263fdd477bf4a71d382e392e984b54823c --- /dev/null +++ b/examples/helloworld/dubbo/go-server/app/user.go @@ -0,0 +1,59 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package main + +import ( + "context" + "time" +) + +import ( + "github.com/dubbogo/hessian2" +) + +import ( + "github.com/apache/dubbo-go/config" +) + +func init() { + config.SetProviderService(new(UserProvider)) + // ------for hessian2------ + hessian.RegisterPOJO(&User{}) +} + +type User struct { + Id string + Name string + Age int32 + Time time.Time +} + +type UserProvider struct { +} + +func (u *UserProvider) GetUser(ctx context.Context, req []interface{}) (*User, error) { + return &User{"A001", "Alex Stocks", 18, time.Now()}, nil +} + +func (u *UserProvider) Reference() string { + return "UserProvider" +} + +func (u User) JavaClassName() string { + return "com.ikurento.user.User" +} diff --git a/examples/helloworld/dubbo/go-server/assembly/bin/load.sh b/examples/helloworld/dubbo/go-server/assembly/bin/load.sh new file mode 100644 index 0000000000000000000000000000000000000000..47fc5e38ded155a43c30b8cbf4d2a5ae04b58d0c --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/bin/load.sh @@ -0,0 +1,144 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : dubbogo app devops script +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-05-13 02:01 +# FILE : load.sh +# ****************************************************** + +APP_NAME="APPLICATION_NAME" +APP_ARGS="" + + +PROJECT_HOME="" +OS_NAME=`uname` +if [[ ${OS_NAME} != "Windows" ]]; then + PROJECT_HOME=`pwd` + PROJECT_HOME=${PROJECT_HOME}"/" +fi + +export CONF_PROVIDER_FILE_PATH=${PROJECT_HOME}"TARGET_CONF_FILE" +export APP_LOG_CONF_FILE=${PROJECT_HOME}"TARGET_LOG_CONF_FILE" + +usage() { + echo "Usage: $0 start [conf suffix]" + echo " $0 stop" + echo " $0 term" + echo " $0 restart" + echo " $0 list" + echo " $0 monitor" + echo " $0 crontab" + exit +} + +start() { + arg=$1 + if [ "$arg" = "" ];then + echo "No registry type! Default server.yml!" + else + export CONF_PROVIDER_FILE_PATH=${CONF_PROVIDER_FILE_PATH//\.yml/\_$arg\.yml} + fi + if [ ! -f "${CONF_PROVIDER_FILE_PATH}" ];then + echo $CONF_PROVIDER_FILE_PATH" is not existing!" + return + fi + APP_LOG_PATH="${PROJECT_HOME}logs/" + mkdir -p ${APP_LOG_PATH} + APP_BIN=${PROJECT_HOME}sbin/${APP_NAME} + chmod u+x ${APP_BIN} + # CMD="nohup ${APP_BIN} ${APP_ARGS} >>${APP_NAME}.nohup.out 2>&1 &" + CMD="${APP_BIN}" + eval ${CMD} + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $2}'` + if [[ ${OS_NAME} != "Linux" && ${OS_NAME} != "Darwin" ]]; then + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $1}'` + fi + CUR=`date +%FT%T` + if [ "${PID}" != "" ]; then + for p in ${PID} + do + echo "start ${APP_NAME} ( pid =" ${p} ") at " ${CUR} + done + fi +} + +stop() { + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $2}'` + if [[ ${OS_NAME} != "Linux" && ${OS_NAME} != "Darwin" ]]; then + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $1}'` + fi + if [ "${PID}" != "" ]; + then + for ps in ${PID} + do + echo "kill -SIGINT ${APP_NAME} ( pid =" ${ps} ")" + kill -2 ${ps} + done + fi +} + + +term() { + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $2}'` + if [[ ${OS_NAME} != "Linux" && ${OS_NAME} != "Darwin" ]]; then + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{print $1}'` + fi + if [ "${PID}" != "" ]; + then + for ps in ${PID} + do + echo "kill -9 ${APP_NAME} ( pid =" ${ps} ")" + kill -9 ${ps} + done + fi +} + +list() { + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{printf("%s,%s,%s,%s\n", $1, $2, $9, $10)}'` + if [[ ${OS_NAME} != "Linux" && ${OS_NAME} != "Darwin" ]]; then + PID=`ps aux | grep -w ${APP_NAME} | grep -v grep | awk '{printf("%s,%s,%s,%s,%s\n", $1, $4, $6, $7, $8)}'` + fi + + if [ "${PID}" != "" ]; then + echo "list ${APP_NAME}" + + if [[ ${OS_NAME} == "Linux" || ${OS_NAME} == "Darwin" ]]; then + echo "index: user, pid, start, duration" + else + echo "index: PID, WINPID, UID, STIME, COMMAND" + fi + idx=0 + for ps in ${PID} + do + echo "${idx}: ${ps}" + ((idx ++)) + done + fi +} + +opt=$1 +case C"$opt" in + Cstart) + start $2 + ;; + Cstop) + stop + ;; + Cterm) + term + ;; + Crestart) + term + start $2 + ;; + Clist) + list + ;; + C*) + usage + ;; +esac + diff --git a/examples/helloworld/dubbo/go-server/assembly/common/app.properties b/examples/helloworld/dubbo/go-server/assembly/common/app.properties new file mode 100644 index 0000000000000000000000000000000000000000..dffb755b0811dd140d3f04e232f5f80ff60181df --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/common/app.properties @@ -0,0 +1,17 @@ +# dubbogo application configure script +# ****************************************************** +# DESC : application environment variable +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:29 +# FILE : app.properties +# ****************************************************** + +TARGET_EXEC_NAME="user_info_server" +# BUILD_PACKAGE="dubbogo-examples/user-info/server/app" +BUILD_PACKAGE="app" + +TARGET_CONF_FILE="conf/server.yml" +TARGET_LOG_CONF_FILE="conf/log.yml" diff --git a/examples/helloworld/dubbo/go-server/assembly/common/build.sh b/examples/helloworld/dubbo/go-server/assembly/common/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..15ac904f7c265d942d7018439719af7e7391aa41 --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/common/build.sh @@ -0,0 +1,74 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:28 +# FILE : build.sh +# ****************************************************** + +rm -rf target/ + +PROJECT_HOME=`pwd` +TARGET_FOLDER=${PROJECT_HOME}/target/${GOOS} + +TARGET_SBIN_NAME=${TARGET_EXEC_NAME} +version=`cat app/version.go | grep Version | grep -v "Apache" | awk -F '=' '{print $2}' | awk -F '"' '{print $2}'` +if [[ ${GOOS} == "windows" ]]; then + TARGET_SBIN_NAME=${TARGET_SBIN_NAME}.exe +fi +TARGET_NAME=${TARGET_FOLDER}/${TARGET_SBIN_NAME} +if [[ $PROFILE = "test" ]]; then + # GFLAGS=-gcflags "-N -l" -race -x -v # -x浼氭妸go build鐨勮缁嗚繃绋嬭緭鍑� + # GFLAGS=-gcflags "-N -l" -race -v + # GFLAGS="-gcflags \"-N -l\" -v" + cd ${BUILD_PACKAGE} && go build -gcflags "-N -l" -x -v -i -o ${TARGET_NAME} && cd - +else + # -s鍘绘帀绗﹀彿琛紙鐒跺悗panic鏃跺€欑殑stack trace灏辨病鏈変换浣曟枃浠跺悕/琛屽彿淇℃伅浜嗭紝杩欎釜绛変环浜庢櫘閫欳/C++绋嬪簭琚玸trip鐨勬晥鏋滐級锛� + # -w鍘绘帀DWARF璋冭瘯淇℃伅锛屽緱鍒扮殑绋嬪簭灏变笉鑳界敤gdb璋冭瘯浜嗐€�-s鍜�-w涔熷彲浠ュ垎寮€浣跨敤锛屼竴鑸潵璇村鏋滀笉鎵撶畻鐢╣db璋冭瘯锛� + # -w鍩烘湰娌″暐鎹熷け銆�-s鐨勬崯澶卞氨鏈夌偣澶т簡銆� + cd ${BUILD_PACKAGE} && go build -ldflags "-w" -x -v -i -o ${TARGET_NAME} && cd - +fi + +TAR_NAME=${TARGET_EXEC_NAME}-${version}-`date "+%Y%m%d-%H%M"`-${PROFILE} + +mkdir -p ${TARGET_FOLDER}/${TAR_NAME} + +SBIN_DIR=${TARGET_FOLDER}/${TAR_NAME}/sbin +BIN_DIR=${TARGET_FOLDER}/${TAR_NAME} +CONF_DIR=${TARGET_FOLDER}/${TAR_NAME}/conf + +mkdir -p ${SBIN_DIR} +mkdir -p ${CONF_DIR} + +mv ${TARGET_NAME} ${SBIN_DIR} +cp -r assembly/bin ${BIN_DIR} +# modify APPLICATION_NAME +# OS=`uname` +# if [[ $OS=="Darwin" ]]; then +if [ "$(uname)" == "Darwin" ]; then + sed -i "" "s~APPLICATION_NAME~${TARGET_EXEC_NAME}~g" ${BIN_DIR}/bin/* +else + sed -i "s~APPLICATION_NAME~${TARGET_EXEC_NAME}~g" ${BIN_DIR}/bin/* +fi +# modify TARGET_CONF_FILE +if [ "$(uname)" == "Darwin" ]; then + sed -i "" "s~TARGET_CONF_FILE~${TARGET_CONF_FILE}~g" ${BIN_DIR}/bin/* +else + sed -i "s~TARGET_CONF_FILE~${TARGET_CONF_FILE}~g" ${BIN_DIR}/bin/* +fi +# modify TARGET_LOG_CONF_FILE +if [ "$(uname)" == "Darwin" ]; then + sed -i "" "s~TARGET_LOG_CONF_FILE~${TARGET_LOG_CONF_FILE}~g" ${BIN_DIR}/bin/* +else + sed -i "s~TARGET_LOG_CONF_FILE~${TARGET_LOG_CONF_FILE}~g" ${BIN_DIR}/bin/* +fi + +cp -r profiles/${PROFILE}/* ${CONF_DIR} + +cd ${TARGET_FOLDER} + +tar czf ${TAR_NAME}.tar.gz ${TAR_NAME}/* + diff --git a/examples/helloworld/dubbo/go-server/assembly/linux/dev.sh b/examples/helloworld/dubbo/go-server/assembly/linux/dev.sh new file mode 100644 index 0000000000000000000000000000000000000000..55886f09fb4873be84cfa46aae592f5f000120a4 --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/linux/dev.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for dev env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2018-06-24 17:32 +# FILE : dev.sh +# ****************************************************** + + +set -e + +export GOOS=linux +export GOARCH=amd64 + +PROFILE=dev + +PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then +. ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then +. ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-server/assembly/linux/release.sh b/examples/helloworld/dubbo/go-server/assembly/linux/release.sh new file mode 100644 index 0000000000000000000000000000000000000000..9772ad9614583917d62beba2db9fcaefea63e1ed --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/linux/release.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for release env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:25 +# FILE : release.sh +# ****************************************************** + + +set -e + +export GOOS=linux +export GOARCH=amd64 + +PROFILE=release + +PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then +. ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then +. ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-server/assembly/linux/test.sh b/examples/helloworld/dubbo/go-server/assembly/linux/test.sh new file mode 100644 index 0000000000000000000000000000000000000000..2fc4a98862bee5ef11a23e1b74058627a899181d --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/linux/test.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for test env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:34 +# FILE : test.sh +# ****************************************************** + + +set -e + +export GOOS=linux +export GOARCH=amd64 + +PROFILE=test + +PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then +. ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then +. ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-server/assembly/mac/dev.sh b/examples/helloworld/dubbo/go-server/assembly/mac/dev.sh new file mode 100644 index 0000000000000000000000000000000000000000..5dfa78490b895ce556c809ead32b6f517a5f1450 --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/mac/dev.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for dev env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2018-06-24 17:32 +# FILE : dev.sh +# ****************************************************** + + +set -e + +export GOOS=darwin +export GOARCH=amd64 + +PROFILE=dev + +PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then +. ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then +. ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-server/assembly/mac/release.sh b/examples/helloworld/dubbo/go-server/assembly/mac/release.sh new file mode 100644 index 0000000000000000000000000000000000000000..1ec21c7b511ccce9eddfac22a2374b57a7a697bf --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/mac/release.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for release env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:25 +# FILE : release.sh +# ****************************************************** + + +set -e + +export GOOS=darwin +export GOARCH=amd64 + +PROFILE=release + +PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then +. ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then +. ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-server/assembly/mac/test.sh b/examples/helloworld/dubbo/go-server/assembly/mac/test.sh new file mode 100644 index 0000000000000000000000000000000000000000..d34914c7dbed0e442b4accf51a3ecdf7c2984db8 --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/mac/test.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for release env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:25 +# FILE : release.sh +# ****************************************************** + +set -e + +export GOOS=darwin +export GOARCH=amd64 + +PROFILE=test + +PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then +. ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then +. ${PROJECT_HOME}/assembly/common/build.sh +fi + diff --git a/examples/helloworld/dubbo/go-server/assembly/windows/dev.sh b/examples/helloworld/dubbo/go-server/assembly/windows/dev.sh new file mode 100644 index 0000000000000000000000000000000000000000..97fbb6f698e500ad08d971b13cc1ffd00cd97803 --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/windows/dev.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for dev env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2018-06-24 17:34 +# FILE : dev.sh +# ****************************************************** + + +set -e + +export GOOS=windows +export GOARCH=amd64 + +PROFILE=dev + +PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then +. ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then +. ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-server/assembly/windows/release.sh b/examples/helloworld/dubbo/go-server/assembly/windows/release.sh new file mode 100644 index 0000000000000000000000000000000000000000..782cb10c7828eb277b5905f10f8dd6ad1c2d6bed --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/windows/release.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for release env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:25 +# FILE : release.sh +# ****************************************************** + + +set -e + +export GOOS=windows +export GOARCH=amd64 + +PROFILE=release + +PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then +. ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then +. ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-server/assembly/windows/test.sh b/examples/helloworld/dubbo/go-server/assembly/windows/test.sh new file mode 100644 index 0000000000000000000000000000000000000000..2037ddecf2545f1543d5d28be728fb0899722098 --- /dev/null +++ b/examples/helloworld/dubbo/go-server/assembly/windows/test.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +# ****************************************************** +# DESC : build script for test env +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2016-07-12 16:34 +# FILE : test.sh +# ****************************************************** + + +set -e + +export GOOS=windows +export GOARCH=amd64 + +PROFILE=test + +PROJECT_HOME=`pwd` + +if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then +. ${PROJECT_HOME}/assembly/common/app.properties +fi + + +if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then +. ${PROJECT_HOME}/assembly/common/build.sh +fi diff --git a/examples/helloworld/dubbo/go-server/profiles/dev/log.yml b/examples/helloworld/dubbo/go-server/profiles/dev/log.yml new file mode 100644 index 0000000000000000000000000000000000000000..59fa4279ad85272c4c49d532beaf23b74d00f58a --- /dev/null +++ b/examples/helloworld/dubbo/go-server/profiles/dev/log.yml @@ -0,0 +1,28 @@ + +level: "debug" +development: true +disableCaller: false +disableStacktrace: false +sampling: +encoding: "console" + +# encoder +encoderConfig: + messageKey: "message" + levelKey: "level" + timeKey: "time" + nameKey: "logger" + callerKey: "caller" + stacktraceKey: "stacktrace" + lineEnding: "" + levelEncoder: "capitalColor" + timeEncoder: "iso8601" + durationEncoder: "seconds" + callerEncoder: "short" + nameEncoder: "" + +outputPaths: + - "stderr" +errorOutputPaths: + - "stderr" +initialFields: diff --git a/examples/helloworld/dubbo/go-server/profiles/dev/server.yml b/examples/helloworld/dubbo/go-server/profiles/dev/server.yml new file mode 100644 index 0000000000000000000000000000000000000000..be7eedeaa3fd186f4cd2ea264b31429165e55bf1 --- /dev/null +++ b/examples/helloworld/dubbo/go-server/profiles/dev/server.yml @@ -0,0 +1,57 @@ +# dubbo server yaml configure file + + +# application config +application_config: + organization : "ikurento.com" + name : "BDTService" + module : "dubbogo user-info server" + version : "0.0.1" + owner : "ZX" + environment : "dev" + +registries : + "demoZk": + protocol: "zookeeper" + timeout : "3s" + address: "127.0.0.1:2181" + +services: + "UserProvider": + # 鍙互鎸囧畾澶氫釜registry锛屼娇鐢ㄩ€楀彿闅斿紑;涓嶆寚瀹氶粯璁ゅ悜鎵€鏈夋敞鍐屼腑蹇冩敞鍐� + registry: "demoZk" + protocol : "dubbo" + # 鐩稿綋浜巇ubbo.xml涓殑interface + interface : "com.ikurento.user.UserProvider" + loadbalance: "random" + warmup: "100" + cluster: "failover" + methods: + - name: "GetUser" + retries: 1 + loadbalance: "random" + +protocols: + "dubbo": + name: "dubbo" + port: 20000 + + +protocol_conf: + dubbo: + session_number: 700 + session_timeout: "20s" + getty_session_param: + compress_encoding: false + tcp_no_delay: true + tcp_keep_alive: true + keep_alive_period: "120s" + tcp_r_buf_size: 262144 + tcp_w_buf_size: 65536 + pkg_rq_size: 1024 + pkg_wq_size: 512 + tcp_read_timeout: "1s" + tcp_write_timeout: "5s" + wait_timeout: "1s" + max_msg_len: 1024 + session_name: "server" diff --git a/examples/helloworld/dubbo/go-server/profiles/release/log.yml b/examples/helloworld/dubbo/go-server/profiles/release/log.yml new file mode 100644 index 0000000000000000000000000000000000000000..e0514be020eedf594d99d112183cdd5ce199e46d --- /dev/null +++ b/examples/helloworld/dubbo/go-server/profiles/release/log.yml @@ -0,0 +1,28 @@ + +level: "warn" +development: true +disableCaller: true +disableStacktrace: true +sampling: +encoding: "console" + +# encoder +encoderConfig: + messageKey: "message" + levelKey: "level" + timeKey: "time" + nameKey: "logger" + callerKey: "caller" + stacktraceKey: "stacktrace" + lineEnding: "" + levelEncoder: "capitalColor" + timeEncoder: "iso8601" + durationEncoder: "seconds" + callerEncoder: "short" + nameEncoder: "" + +outputPaths: + - "stderr" +errorOutputPaths: + - "stderr" +initialFields: diff --git a/examples/helloworld/dubbo/go-server/profiles/release/server.yml b/examples/helloworld/dubbo/go-server/profiles/release/server.yml new file mode 100644 index 0000000000000000000000000000000000000000..4786e83669046babbfc4758829155d8f4ce3a438 --- /dev/null +++ b/examples/helloworld/dubbo/go-server/profiles/release/server.yml @@ -0,0 +1,62 @@ +# dubbo server yaml configure file + + +# application config +application_config: + organization : "ikurento.com" + name : "BDTService" + module : "dubbogo user-info server" + version : "0.0.1" + owner : "ZX" + environment : "release" + +registries : + "hangzhouzk": + protocol: "zookeeper" + timeout : "3s" + address: "127.0.0.1:2181" + username: "" + password: "" + + +services: + "UserProvider": + # 鍙互鎸囧畾澶氫釜registry锛屼娇鐢ㄩ€楀彿闅斿紑;涓嶆寚瀹氶粯璁ゅ悜鎵€鏈夋敞鍐屼腑蹇冩敞鍐� + registry: "hangzhouzk" + protocol : "dubbo" + # 鐩稿綋浜巇ubbo.xml涓殑interface + interface : "com.ikurento.user.UserProvider" + loadbalance: "random" + warmup: "100" + cluster: "failover" + methods: + - name: "GetUser" + retries: 1 + loadbalance: "random" + + +protocols: + "dubbo1": + name: "dubbo" + # ip : "127.0.0.1" + port: 20000 + + +protocol_conf: + dubbo: + session_number: 700 + session_timeout: "20s" + getty_session_param: + compress_encoding: false + tcp_no_delay: true + tcp_keep_alive: true + keep_alive_period: "120s" + tcp_r_buf_size: 262144 + tcp_w_buf_size: 65536 + pkg_rq_size: 1024 + pkg_wq_size: 512 + tcp_read_timeout: "1s" + tcp_write_timeout: "5s" + wait_timeout: "1s" + max_msg_len: 1024 + session_name: "server" diff --git a/examples/helloworld/dubbo/go-server/profiles/test/log.yml b/examples/helloworld/dubbo/go-server/profiles/test/log.yml new file mode 100644 index 0000000000000000000000000000000000000000..baee0b7248484e425f88f35ab128212c931ff85e --- /dev/null +++ b/examples/helloworld/dubbo/go-server/profiles/test/log.yml @@ -0,0 +1,28 @@ + +level: "info" +development: false +disableCaller: false +disableStacktrace: true +sampling: +encoding: "console" + +# encoder +encoderConfig: + messageKey: "message" + levelKey: "level" + timeKey: "time" + nameKey: "logger" + callerKey: "caller" + stacktraceKey: "stacktrace" + lineEnding: "" + levelEncoder: "capitalColor" + timeEncoder: "iso8601" + durationEncoder: "seconds" + callerEncoder: "short" + nameEncoder: "" + +outputPaths: + - "stderr" +errorOutputPaths: + - "stderr" +initialFields: diff --git a/examples/helloworld/dubbo/go-server/profiles/test/server.yml b/examples/helloworld/dubbo/go-server/profiles/test/server.yml new file mode 100644 index 0000000000000000000000000000000000000000..ba6eb2b8005a4dc2d655f44ec38b93a01072d4f1 --- /dev/null +++ b/examples/helloworld/dubbo/go-server/profiles/test/server.yml @@ -0,0 +1,62 @@ +# dubbo server yaml configure file + + +# application config +application_config: + organization : "ikurento.com" + name : "BDTService" + module : "dubbogo user-info server" + version : "0.0.1" + owner : "ZX" + environment : "test" + +registries : + "hangzhouzk": + protocol: "zookeeper" + timeout : "3s" + address: "127.0.0.1:2181" + username: "" + password: "" + + + +services: + "UserProvider": + # 鍙互鎸囧畾澶氫釜registry锛屼娇鐢ㄩ€楀彿闅斿紑;涓嶆寚瀹氶粯璁ゅ悜鎵€鏈夋敞鍐屼腑蹇冩敞鍐� + registry: "hangzhouzk" + protocol : "dubbo" + # 鐩稿綋浜巇ubbo.xml涓殑interface + interface : "com.ikurento.user.UserProvider" + loadbalance: "random" + warmup: "100" + cluster: "failover" + methods: + - name: "GetUser" + retries: 1 + loadbalance: "random" + +protocols: + "dubbo1": + name: "dubbo" + # ip : "127.0.0.1" + port: 20000 + + +protocol_conf: + dubbo: + session_number: 700 + session_timeout: "20s" + getty_session_param: + compress_encoding: false + tcp_no_delay: true + tcp_keep_alive: true + keep_alive_period: "120s" + tcp_r_buf_size: 262144 + tcp_w_buf_size: 65536 + pkg_rq_size: 1024 + pkg_wq_size: 512 + tcp_read_timeout: "1s" + tcp_write_timeout: "5s" + wait_timeout: "1s" + max_msg_len: 1024 + session_name: "server" diff --git a/examples/helloworld/dubbo/java-server/build.sh b/examples/helloworld/dubbo/java-server/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..0c197da639c1c1d9375e18c24dd73366c49deefe --- /dev/null +++ b/examples/helloworld/dubbo/java-server/build.sh @@ -0,0 +1,9 @@ +#!/usr/bin/env bash +# ****************************************************** +# EMAIL : alexstocks@foxmail.com +# FILE : build.sh +# ****************************************************** + +# mvn dependency:sources +mvn clean package -Dmaven.test.skip +# mvn -X clean compile package -DskipTests=true diff --git a/examples/helloworld/dubbo/java-server/pom.xml b/examples/helloworld/dubbo/java-server/pom.xml new file mode 100644 index 0000000000000000000000000000000000000000..975157865e59f24693d755dd20b0aac4b179a793 --- /dev/null +++ b/examples/helloworld/dubbo/java-server/pom.xml @@ -0,0 +1,181 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <groupId>com.ikurento</groupId> + <artifactId>user-info-server</artifactId> + <packaging>jar</packaging> + <version>0.2.0</version> + <description>The demo provider module of dubbo project</description> + <properties> + <skip_maven_deploy>false</skip_maven_deploy> + + <dubbo-version>2.6.5</dubbo-version> + <dubbo-jsonrpc-version>1.0.1</dubbo-jsonrpc-version> + </properties> + + <dependencyManagement> + <dependencies> + <dependency> + <groupId>com.alibaba</groupId> + <artifactId>dubbo-dependencies-bom</artifactId> + <version>${dubbo-version}</version> + <type>pom</type> + <scope>import</scope> + </dependency> + </dependencies> + </dependencyManagement> + + <dependencies> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + <version>1.7.25</version> + </dependency> + + <dependency> + <groupId>com.alibaba</groupId> + <artifactId>dubbo</artifactId> + <version>${dubbo-version}</version> + <exclusions> + </exclusions> + </dependency> + + <dependency> + <groupId>io.netty</groupId> + <artifactId>netty-all</artifactId> + </dependency> + <dependency> + <groupId>org.apache.curator</groupId> + <artifactId>curator-framework</artifactId> + <version>2.12.0</version> + </dependency> + + <dependency> + <groupId>com.qianmi</groupId> + <artifactId>dubbo-rpc-jsonrpc</artifactId> + <version>${dubbo-jsonrpc-version}</version> + <exclusions> + <exclusion> + <groupId>org.springframework</groupId> + <artifactId>spring</artifactId> + </exclusion> + </exclusions> + </dependency> + + <dependency> + <groupId>org.mortbay.jetty</groupId> + <artifactId>jetty</artifactId> + <version>6.1.26</version> + </dependency> + + <dependency> + <groupId>com.fasterxml.jackson.core</groupId> + <artifactId>jackson-core</artifactId> + <version>2.9.9</version> + </dependency> + <dependency> + <groupId>com.fasterxml.jackson.core</groupId> + <artifactId>jackson-databind</artifactId> + <version>2.9.9</version> + </dependency> + + <dependency> + <groupId>com.github.sgroschupf</groupId> + <artifactId>zkclient</artifactId> + <version>0.1</version> + <exclusions> + <exclusion> + <artifactId>org.apache.zookeeper</artifactId> + <groupId>zookeeper</groupId> + </exclusion> + </exclusions> + </dependency> + + <dependency> + <groupId>org.apache.zookeeper</groupId> + <artifactId>zookeeper</artifactId> + <version>3.4.14</version> + </dependency> + + </dependencies> + + <repositories> + <repository> + <id>nexus-aliyu</id> + <url>http://maven.aliyun.com/nexus/content/groups/public</url> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + </repositories> + <pluginRepositories> + <pluginRepository> + <id>nexus-aliyu</id> + <url>http://maven.aliyun.com/nexus/content/groups/public</url> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </pluginRepository> + </pluginRepositories> + + + <build> + + <plugins> + <plugin> + <artifactId>maven-dependency-plugin</artifactId> + <executions> + <execution> + <id>unpack</id> + <phase>package</phase> + <goals> + <goal>unpack</goal> + </goals> + <configuration> + <artifactItems> + <artifactItem> + <groupId>com.alibaba</groupId> + <artifactId>dubbo</artifactId> + <version>${dubbo-version}</version> + <outputDirectory>${project.build.directory}/dubbo</outputDirectory> + <includes>META-INF/assembly/**</includes> + </artifactItem> + </artifactItems> + </configuration> + </execution> + </executions> + </plugin> + + <plugin> + <artifactId>maven-assembly-plugin</artifactId> + <executions> + <execution> + <id>make-assembly</id> + <phase>package</phase> + <goals> + <goal>single</goal> + </goals> + <configuration> + <descriptors> + <descriptor>src/main/assembly/assembly.xml</descriptor> + </descriptors> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + + +</project> + + diff --git a/examples/helloworld/dubbo/java-server/script/debug.sh b/examples/helloworld/dubbo/java-server/script/debug.sh new file mode 100644 index 0000000000000000000000000000000000000000..27c5d800d846018127e762944151aa8e9ad4495d --- /dev/null +++ b/examples/helloworld/dubbo/java-server/script/debug.sh @@ -0,0 +1,16 @@ +#!/us1r/bin/env bash +# ****************************************************** +# DESC : +# AUTHOR : Alex Stocks +# VERSION : 1.0 +# LICENCE : Apache License 2.0 +# EMAIL : alexstocks@foxmail.com +# MOD : 2017-10-09 21:52 +# FILE : to debug user info dubbo server +# ****************************************************** + +# jdb -classpath /Users/alex/tmp/us/conf:/Users/alex/tmp/us/lib/*:/Users/alex/test/java/dubbo/2.5.4/dubbo-remoting/dubbo-remoting-api/src/main/java/ com.alibaba.dubbo.container.Main +jdb -classpath /Users/alex/tmp/us/conf:/Users/alex/tmp/us/lib/* -sourcepath /Users/alex/test/java/dubbo/2.5.4/dubbo-remoting/dubbo-remoting-api/src/main/java/:/Users/alex/tmp/java-server/src/main/java com.alibaba.dubbo.container.Main +# jdb stop at com.alibaba.dubbo.remoting.exchange.codec.ExchangeCodec:76 +# run + diff --git a/examples/helloworld/dubbo/java-server/src/main/assembly/assembly.xml b/examples/helloworld/dubbo/java-server/src/main/assembly/assembly.xml new file mode 100644 index 0000000000000000000000000000000000000000..2f01fea20f5391112cccb88c87bfe4ae1b59750a --- /dev/null +++ b/examples/helloworld/dubbo/java-server/src/main/assembly/assembly.xml @@ -0,0 +1,45 @@ +<!-- + - Copyright 1999-2011 Alibaba Group. + - + - Licensed under the Apache License, Version 2.0 (the "License"); + - you may not use this file except in compliance with the License. + - You may obtain a copy of the License at + - + - http://www.apache.org/licenses/LICENSE-2.0 + - + - Unless required by applicable law or agreed to in writing, software + - distributed under the License is distributed on an "AS IS" BASIS, + - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + - See the License for the specific language governing permissions and + - limitations under the License. +--> +<assembly> + <id>assembly</id> + <formats> + <format>tar.gz</format> + </formats> + <includeBaseDirectory>true</includeBaseDirectory> + <fileSets> + <fileSet> + <directory>${project.build.directory}/dubbo/META-INF/assembly/bin</directory> + <outputDirectory>bin</outputDirectory> + <fileMode>0755</fileMode> + <directoryMode>0755</directoryMode> + </fileSet> + <fileSet> + <directory>src/main/assembly/conf</directory> + <includes> + <include>dubbo.properties</include> + <include>log4j.*</include> + </includes> + <outputDirectory>conf</outputDirectory> + <fileMode>0644</fileMode> + <directoryMode>0755</directoryMode> + </fileSet> + </fileSets> + <dependencySets> + <dependencySet> + <outputDirectory>lib</outputDirectory> + </dependencySet> + </dependencySets> +</assembly> \ No newline at end of file diff --git a/examples/helloworld/dubbo/java-server/src/main/assembly/conf/dubbo.properties b/examples/helloworld/dubbo/java-server/src/main/assembly/conf/dubbo.properties new file mode 100644 index 0000000000000000000000000000000000000000..2826f31303717256725b02a79e1698043709d2f3 --- /dev/null +++ b/examples/helloworld/dubbo/java-server/src/main/assembly/conf/dubbo.properties @@ -0,0 +1,14 @@ +### dubbo娉ㄥ唽涓績閰嶇疆 ## +dubbo.container = log4j,spring +dubbo.application.name = user-info-server +dubbo.application.environment = product +dubbo.application.owner = AlexStocks +dubbo.registry.address = 127.0.0.1:2181 +dubbo.registry.protocol = zookeeper +dubbo.consumer.timeout = 10000 +dubbo.provider.timeout = 10000 +dubbo.protocol.name = dubbo +dubbo.protocol.port = 10000 + +dubbo.log4j.file = logs/dubbo.log +dubbo.log4j.level = INFO diff --git a/examples/helloworld/dubbo/java-server/src/main/assembly/conf/log4j.properties b/examples/helloworld/dubbo/java-server/src/main/assembly/conf/log4j.properties new file mode 100644 index 0000000000000000000000000000000000000000..13c80493329261ea677de77624b363bf99c82652 --- /dev/null +++ b/examples/helloworld/dubbo/java-server/src/main/assembly/conf/log4j.properties @@ -0,0 +1,20 @@ +## Logger configure file for myproject +log.dir=logs/ +datestamp=yyyy-MM-dd/HH:mm:ss.SSS + +log4j.rootLogger=DEBUG, file, console + +log4j.appender.file=org.apache.log4j.DailyRollingFileAppender +log4j.appender.file.threshold=DEBUG +log4j.appender.file.File=${log.dir}/log4j.log +log4j.appender.file.DatePattern=-yyyyMMddHH +log4j.appender.file.ImmediateFlush=true +log4j.appender.file.Append=true +log4j.appender.file.layout=org.apache.log4j.PatternLayout +log4j.appender.file.layout.ConversionPattern=%d{${datestamp}} %5p: %l - %m%n + +log4j.appender.console=org.apache.log4j.ConsoleAppender +log4j.appender.console.Threshold=DEBUG +log4j.appender.console.layout=org.apache.log4j.PatternLayout +log4j.appender.console.layout.ConversionPattern=%d{${datestamp}} %5p: %l - %m%n + diff --git a/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/Provider.java b/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/Provider.java new file mode 100644 index 0000000000000000000000000000000000000000..0031f5569fd5f16ded0da6e5426f78805fad4a42 --- /dev/null +++ b/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/Provider.java @@ -0,0 +1,33 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.ikurento.user; + +import org.springframework.context.support.ClassPathXmlApplicationContext; + +public class Provider { + + /** + * To get ipv6 address to work, add + * System.setProperty("java.net.preferIPv6Addresses", "true"); + * before running your application. + */ + public static void main(String[] args) throws Exception { + ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"META-INF/spring/dubbo.provider.xml"}); + context.start(); + System.in.read(); // press any key to exit + } +} diff --git a/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/User.java b/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/User.java new file mode 100644 index 0000000000000000000000000000000000000000..06f3f18f0a8ae940000fae3155e448c3181a0054 --- /dev/null +++ b/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/User.java @@ -0,0 +1,70 @@ +package com.ikurento.user; +// ref: https://github.com/JoeCao/dubbo_jsonrpc_example/tree/master/dubbo_server/src/main/java/com/ofpay/demo/api + +import java.util.Date; +import java.io.Serializable; + +public class User implements Serializable { + + private String id; + + private String name; + + private int age; + + private Date time = new Date(); + + public User() { + } + + public User(String id, String name, int age) { + this.id = id; + this.name = name; + this.age = age; + } + + public User(String id, String name, int age, Date time) { + this.id = id; + this.name = name; + this.age = age; + this.time = time; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getAge() { + return age; + } + + public void setAge(int age) { + this.age = age; + } + + public Date getTime() { + return time; + } + + public void setTime(Date time) { + this.time = time; + } + + + + public String toString() { + return "User{id:" + id + ", name:" + name + ", age:" + age + ", time:" + time +"}"; + } +} diff --git a/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/UserProvider.java b/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/UserProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..f3301cd642ca58a57ac5e2041ec5f958d383b7fb --- /dev/null +++ b/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/UserProvider.java @@ -0,0 +1,9 @@ +package com.ikurento.user; +// https://github.com/JoeCao/dubbo_jsonrpc_example/tree/master/dubbo_server/src/main/java/com/ofpay/demo/api + + +public interface UserProvider { + + User GetUser(String userId); // the first alpha is Upper case to compatible with golang. + +} diff --git a/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/UserProviderImpl.java b/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/UserProviderImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..ddbccab37bbe2cc59b584e59ef317d5bdaeae32d --- /dev/null +++ b/examples/helloworld/dubbo/java-server/src/main/java/com/ikurento/user/UserProviderImpl.java @@ -0,0 +1,15 @@ +package com.ikurento.user; + +// ref: https://github.com/JoeCao/dubbo_jsonrpc_example/tree/master/dubbo_server/src/main/java/com/ofpay/demo/api + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class UserProviderImpl implements UserProvider { + private static final Logger LOG = LoggerFactory.getLogger("UserLogger"); // 杈撳嚭鍒皍ser-server.log + + public User GetUser(String userId) { + return new User(userId, "zhangsan", 18); + } + +} diff --git a/examples/helloworld/dubbo/java-server/src/main/resources/META-INF/spring/dubbo.provider.xml b/examples/helloworld/dubbo/java-server/src/main/resources/META-INF/spring/dubbo.provider.xml new file mode 100644 index 0000000000000000000000000000000000000000..fe23e1f3e91d841c30534c82d8d69e6628f6b528 --- /dev/null +++ b/examples/helloworld/dubbo/java-server/src/main/resources/META-INF/spring/dubbo.provider.xml @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + - Copyright 1999-2011 Alibaba Group. + - + - Licensed under the Apache License, Version 2.0 (the "License"); + - you may not use this file except in compliance with the License. + - You may obtain a copy of the License at + - + - http://www.apache.org/licenses/LICENSE-2.0 + - + - Unless required by applicable law or agreed to in writing, software + - distributed under the License is distributed on an "AS IS" BASIS, + - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + - See the License for the specific language governing permissions and + - limitations under the License. +--> +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd + http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd"> + + <!-- 搴旂敤鍚� --> + <dubbo:application name="user-info-server"/> + <!-- 杩炴帴鍒板摢涓湰鍦版敞鍐屼腑蹇� --> + <dubbo:registry id="ikurento" address="zookeeper://127.0.0.1:2181" /> + <!-- 鐢╠ubbo鍗忚鍦�20880绔彛鏆撮湶鏈嶅姟 --> + <!-- dubbo:protocol host="127.0.0.1" / --> + <dubbo:protocol id="dubbo" name="dubbo" host="127.0.0.1" port="20010" /> + <!-- 澹版槑闇€瑕佹毚闇茬殑鏈嶅姟鎺ュ彛 --> + <dubbo:service id="aaa" registry="ikurento" timeout="3000" interface="com.ikurento.user.UserProvider" ref="demoService"/> + + <bean id="demoService" class="com.ikurento.user.UserProviderImpl" /> + +</beans> diff --git a/examples/helloworld/dubbo/java-server/src/main/resources/log4j.properties b/examples/helloworld/dubbo/java-server/src/main/resources/log4j.properties new file mode 100644 index 0000000000000000000000000000000000000000..13c80493329261ea677de77624b363bf99c82652 --- /dev/null +++ b/examples/helloworld/dubbo/java-server/src/main/resources/log4j.properties @@ -0,0 +1,20 @@ +## Logger configure file for myproject +log.dir=logs/ +datestamp=yyyy-MM-dd/HH:mm:ss.SSS + +log4j.rootLogger=DEBUG, file, console + +log4j.appender.file=org.apache.log4j.DailyRollingFileAppender +log4j.appender.file.threshold=DEBUG +log4j.appender.file.File=${log.dir}/log4j.log +log4j.appender.file.DatePattern=-yyyyMMddHH +log4j.appender.file.ImmediateFlush=true +log4j.appender.file.Append=true +log4j.appender.file.layout=org.apache.log4j.PatternLayout +log4j.appender.file.layout.ConversionPattern=%d{${datestamp}} %5p: %l - %m%n + +log4j.appender.console=org.apache.log4j.ConsoleAppender +log4j.appender.console.Threshold=DEBUG +log4j.appender.console.layout=org.apache.log4j.PatternLayout +log4j.appender.console.layout.ConversionPattern=%d{${datestamp}} %5p: %l - %m%n + diff --git a/go.mod b/go.mod index caf01f8c0842b134611f3369c10cac7e800149fe..ce90a7e6ef38676615587bdc95fd576ec8bbfcda 100644 --- a/go.mod +++ b/go.mod @@ -1,9 +1,9 @@ module github.com/apache/dubbo-go require ( - github.com/dubbogo/getty v1.1.2-0.20190703052458-5e72c69fddc7 + github.com/dubbogo/getty v1.2.2 github.com/dubbogo/gost v1.1.1 - github.com/dubbogo/hessian2 v1.2.0 + github.com/dubbogo/hessian2 v1.2.3 github.com/magiconair/properties v1.8.1 github.com/pkg/errors v0.8.1 github.com/samuel/go-zookeeper v0.0.0-20180130194729-c4fab1ac1bec diff --git a/go.sum b/go.sum index 30d19769894d5eaa346083229374ced1a889af81..d71cd632a4442a44900b3c591e6c11a80ff856d0 100644 --- a/go.sum +++ b/go.sum @@ -1,14 +1,12 @@ github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/dubbogo/getty v1.1.2-0.20190703052458-5e72c69fddc7 h1:WDzbrHOfdO78mFp3RJgGRM0u2+DEwrVzo58InIdgcX8= -github.com/dubbogo/getty v1.1.2-0.20190703052458-5e72c69fddc7/go.mod h1:DfbsJXdXj6DliCAEgrRbwC7J5rz+2sOPGKKEvlF6OjE= +github.com/dubbogo/getty v1.2.2 h1:qDC9WXjxcs5NPvWZz2ruVKBKr2r1Jjm6i0Sq//CQwbE= +github.com/dubbogo/getty v1.2.2/go.mod h1:K4b3MkGLf7T+lMgQNFgpg0dI1Wvv1PTisFs1Psf86kU= github.com/dubbogo/gost v1.1.1 h1:JCM7vx5edPIjDA5ovJTuzEEXuw2t7xLyrlgi2mi5jHI= github.com/dubbogo/gost v1.1.1/go.mod h1:R7wZm1DrmrKGr50mBZVcg6C9ekG8aL5hP+sgWcIDwQg= -github.com/dubbogo/gostd v0.0.0-20190625030817-87d8669125b7 h1:Wmt8yQMGkNx4GDUvU4CA+dwIsDwgi+DbP28NZV2ruqQ= -github.com/dubbogo/gostd v0.0.0-20190625030817-87d8669125b7/go.mod h1:lQ7PmKvs6xplvjzEEMKw8XmP20D9raD+wFfzxkKaBd4= -github.com/dubbogo/hessian2 v1.2.0 h1:5wFYuMzzRhneUAPbVBVKubIknrEjUM/B76vievYD0Vw= -github.com/dubbogo/hessian2 v1.2.0/go.mod h1:7EohF3mE7xmZcj43nP172sapRHOEifcV/jwyHhG4SaY= +github.com/dubbogo/hessian2 v1.2.3 h1:2ijKLGT4v/Oe/UdZzXE2cippARuCidY+02sxVfVgphU= +github.com/dubbogo/hessian2 v1.2.3/go.mod h1:7EohF3mE7xmZcj43nP172sapRHOEifcV/jwyHhG4SaY= github.com/golang/snappy v0.0.1 h1:Qgr9rKW7uDUkrbSmQeiDsGa8SjGyCOGtuasMWwvp2P4= github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/gorilla/websocket v1.4.0 h1:WDFjx/TMzVgy9VdMMQi2K2Emtwi2QcUQsztZ/zLaH/Q= diff --git a/protocol/dubbo/client.go b/protocol/dubbo/client.go index c60b265cbcc0fd9ff2b98b036bf9a55a5e4a6241..d9098b6c1984fc5504eff49324e2eee7be9c18a1 100644 --- a/protocol/dubbo/client.go +++ b/protocol/dubbo/client.go @@ -25,6 +25,7 @@ import ( import ( "github.com/dubbogo/getty" + "github.com/dubbogo/gost/sync" "github.com/dubbogo/hessian2" perrors "github.com/pkg/errors" "go.uber.org/atomic" @@ -45,7 +46,8 @@ var ( errClientClosed = perrors.New("client closed") errClientReadTimeout = perrors.New("client read timeout") - clientConf *ClientConfig + clientConf *ClientConfig + clientGrpool *gxsync.TaskPool ) func init() { @@ -78,6 +80,7 @@ func init() { } clientConf = conf + setClientGrpool() } func SetClientConf(c ClientConfig) { @@ -87,12 +90,20 @@ func SetClientConf(c ClientConfig) { logger.Warnf("[ClientConfig CheckValidity] error: %v", err) return } + setClientGrpool() } func GetClientConf() ClientConfig { return *clientConf } +func setClientGrpool() { + if clientConf.GrPoolSize > 1 { + clientGrpool = gxsync.NewTaskPool(gxsync.WithTaskPoolTaskPoolSize(clientConf.GrPoolSize), gxsync.WithTaskPoolTaskQueueLength(clientConf.QueueLen), + gxsync.WithTaskPoolTaskQueueNumber(clientConf.QueueNumber)) + } +} + type Options struct { // connect timeout ConnectTimeout time.Duration diff --git a/protocol/dubbo/client_test.go b/protocol/dubbo/client_test.go index 8c24098b482979f5680ad74eaef37656473c8267..55cb6816a07df90bdcb80a15d3702da65df8d3b5 100644 --- a/protocol/dubbo/client_test.go +++ b/protocol/dubbo/client_test.go @@ -173,7 +173,6 @@ func InitTest(t *testing.T) (protocol.Protocol, common.URL) { KeepAlivePeriod: "120s", TcpRBufSize: 262144, TcpWBufSize: 65536, - PkgRQSize: 1024, PkgWQSize: 512, TcpReadTimeout: "4s", TcpWriteTimeout: "5s", @@ -193,7 +192,6 @@ func InitTest(t *testing.T) (protocol.Protocol, common.URL) { KeepAlivePeriod: "120s", TcpRBufSize: 262144, TcpWBufSize: 65536, - PkgRQSize: 1024, PkgWQSize: 512, TcpReadTimeout: "1s", TcpWriteTimeout: "5s", diff --git a/protocol/dubbo/config.go b/protocol/dubbo/config.go index e59b7f2fd85fb216adb86a8167980abed45be9e3..1ac3c9ad97ec34319c7728555e56cdfb3d038ba7 100644 --- a/protocol/dubbo/config.go +++ b/protocol/dubbo/config.go @@ -34,7 +34,6 @@ type ( keepAlivePeriod time.Duration TcpRBufSize int `default:"262144" yaml:"tcp_r_buf_size" json:"tcp_r_buf_size,omitempty"` TcpWBufSize int `default:"65536" yaml:"tcp_w_buf_size" json:"tcp_w_buf_size,omitempty"` - PkgRQSize int `default:"1024" yaml:"pkg_rq_size" json:"pkg_rq_size,omitempty"` PkgWQSize int `default:"1024" yaml:"pkg_wq_size" json:"pkg_wq_size,omitempty"` TcpReadTimeout string `default:"1s" yaml:"tcp_read_timeout" json:"tcp_read_timeout,omitempty"` tcpReadTimeout time.Duration @@ -53,6 +52,11 @@ type ( sessionTimeout time.Duration SessionNumber int `default:"1000" yaml:"session_number" json:"session_number,omitempty"` + // grpool + GrPoolSize int `default:"0" yaml:"gr_pool_size" json:"gr_pool_size,omitempty"` + QueueLen int `default:"0" yaml:"queue_len" json:"queue_len,omitempty"` + QueueNumber int `default:"0" yaml:"queue_number" json:"queue_number,omitempty"` + // session tcp parameters GettySessionParam GettySessionParam `required:"true" yaml:"getty_session_param" json:"getty_session_param,omitempty"` } @@ -76,6 +80,11 @@ type ( PoolSize int `default:"2" yaml:"pool_size" json:"pool_size,omitempty"` PoolTTL int `default:"180" yaml:"pool_ttl" json:"pool_ttl,omitempty"` + // grpool + GrPoolSize int `default:"0" yaml:"gr_pool_size" json:"gr_pool_size,omitempty"` + QueueLen int `default:"0" yaml:"queue_len" json:"queue_len,omitempty"` + QueueNumber int `default:"0" yaml:"queue_number" json:"queue_number,omitempty"` + // session tcp parameters GettySessionParam GettySessionParam `required:"true" yaml:"getty_session_param" json:"getty_session_param,omitempty"` } diff --git a/protocol/dubbo/pool.go b/protocol/dubbo/pool.go index 23e860c19c1ec0540da54e99a4d6c84496c18849..546a5b335aee3e71a6e00e49888710edb20c694a 100644 --- a/protocol/dubbo/pool.go +++ b/protocol/dubbo/pool.go @@ -111,7 +111,6 @@ func (c *gettyRPCClient) newSession(session getty.Session) error { session.SetMaxMsgLen(conf.GettySessionParam.MaxMsgLen) session.SetPkgHandler(NewRpcClientPackageHandler(c.pool.rpcClient)) session.SetEventListener(NewRpcClientHandler(c)) - session.SetRQLen(conf.GettySessionParam.PkgRQSize) session.SetWQLen(conf.GettySessionParam.PkgWQSize) session.SetReadTimeout(conf.GettySessionParam.tcpReadTimeout) session.SetWriteTimeout(conf.GettySessionParam.tcpWriteTimeout) @@ -119,6 +118,8 @@ func (c *gettyRPCClient) newSession(session getty.Session) error { session.SetWaitTime(conf.GettySessionParam.waitTimeout) logger.Debugf("client new session:%s\n", session.Stat()) + session.SetTaskPool(clientGrpool) + return nil } diff --git a/protocol/dubbo/server.go b/protocol/dubbo/server.go index 25c8f1bf4d7deaf87c3216cbfcd70d499ed2fb24..8daeee05e2ccc115aad590c2ed80a269360482d5 100644 --- a/protocol/dubbo/server.go +++ b/protocol/dubbo/server.go @@ -24,6 +24,7 @@ import ( import ( "github.com/dubbogo/getty" + "github.com/dubbogo/gost/sync" "gopkg.in/yaml.v2" ) @@ -33,7 +34,10 @@ import ( "github.com/apache/dubbo-go/config" ) -var srvConf *ServerConfig +var ( + srvConf *ServerConfig + srvGrpool *gxsync.TaskPool +) func init() { @@ -64,6 +68,7 @@ func init() { } srvConf = conf + SetServerGrpool() } func SetServerConfig(s ServerConfig) { @@ -73,12 +78,20 @@ func SetServerConfig(s ServerConfig) { logger.Warnf("[ServerConfig CheckValidity] error: %v", err) return } + SetServerGrpool() } func GetServerConfig() ServerConfig { return *srvConf } +func SetServerGrpool() { + if srvConf.GrPoolSize > 1 { + srvGrpool = gxsync.NewTaskPool(gxsync.WithTaskPoolTaskPoolSize(srvConf.GrPoolSize), gxsync.WithTaskPoolTaskQueueLength(srvConf.QueueLen), + gxsync.WithTaskPoolTaskQueueNumber(srvConf.QueueNumber)) + } +} + type Server struct { conf ServerConfig tcpServer getty.Server @@ -123,7 +136,6 @@ func (s *Server) newSession(session getty.Session) error { session.SetMaxMsgLen(conf.GettySessionParam.MaxMsgLen) session.SetPkgHandler(rpcServerPkgHandler) session.SetEventListener(s.rpcHandler) - session.SetRQLen(conf.GettySessionParam.PkgRQSize) session.SetWQLen(conf.GettySessionParam.PkgWQSize) session.SetReadTimeout(conf.GettySessionParam.tcpReadTimeout) session.SetWriteTimeout(conf.GettySessionParam.tcpWriteTimeout) @@ -131,6 +143,8 @@ func (s *Server) newSession(session getty.Session) error { session.SetWaitTime(conf.GettySessionParam.waitTimeout) logger.Debugf("app accepts new session:%s\n", session.Stat()) + session.SetTaskPool(srvGrpool) + return nil } diff --git a/remoting/zookeeper/client.go b/remoting/zookeeper/client.go index 0e3e502115dee3e1ee1f98f070774fe98b009ac7..008848ea61ba2deb1a70aba5c29da097c3c48da9 100644 --- a/remoting/zookeeper/client.go +++ b/remoting/zookeeper/client.go @@ -309,7 +309,7 @@ func (z *ZookeeperClient) UnregisterEvent(zkPath string, event *chan struct{}) { if e == event { arr := infoList infoList = append(arr[:i], arr[i+1:]...) - logger.Debugf("zkClient{%s} unregister event{path:%s, event:%p}", z.name, zkPath, event) + logger.Infof("zkClient{%s} unregister event{path:%s, event:%p}", z.name, zkPath, event) } } logger.Debugf("after zkClient{%s} unregister event{path:%s, event:%p}, array length %d", diff --git a/remoting/zookeeper/facade.go b/remoting/zookeeper/facade.go index 4fd800f87732288527d9387580fe70d0a9cae9d2..4eace5e9d540ac86ca01683963b19ae547c7c732 100644 --- a/remoting/zookeeper/facade.go +++ b/remoting/zookeeper/facade.go @@ -19,9 +19,9 @@ package zookeeper import ( "sync" - "time" ) import ( + "github.com/dubbogo/getty" perrors "github.com/pkg/errors" ) @@ -70,7 +70,7 @@ LOOP: case <-r.GetDone(): logger.Warnf("(ZkProviderRegistry)reconnectZkRegistry goroutine exit now...") break LOOP - case <-time.After(time.Duration(1e9 * failTimes * ConnDelay)): // 闃叉鐤媯閲嶈繛zk + case <-getty.GetTimeWheel().After(timeSecondDuration(failTimes * ConnDelay)): // 闃叉鐤媯閲嶈繛zk } err = ValidateZookeeperClient(r, WithZkName(zkName)) logger.Infof("ZkProviderRegistry.validateZookeeperClient(zkAddr{%s}) = error{%#v}", diff --git a/remoting/zookeeper/listener.go b/remoting/zookeeper/listener.go index 733870052df16b62b292cbe81a534605abcf7bb0..3df87ed4f603956a653cec692031dee94639de16 100644 --- a/remoting/zookeeper/listener.go +++ b/remoting/zookeeper/listener.go @@ -24,6 +24,7 @@ import ( ) import ( + "github.com/dubbogo/getty" perrors "github.com/pkg/errors" "github.com/samuel/go-zookeeper/zk" ) @@ -188,7 +189,7 @@ func (l *ZkEventListener) listenDirEvent(zkPath string, listener remoting.DataLi } l.client.RegisterEvent(zkPath, &event) select { - case <-time.After(timeSecondDuration(failTimes * ConnDelay)): + case <-getty.GetTimeWheel().After(timeSecondDuration(failTimes * ConnDelay)): l.client.UnregisterEvent(zkPath, &event) continue case <-l.client.Done():