├── .gitignore ├── 3rd ├── mgo │ ├── client.go │ ├── collection.go │ ├── mgr.go │ └── mgr_opts.go └── redis │ ├── client.go │ ├── client_opt.go │ └── client_utils.go ├── LICENSE ├── README.md ├── README_CN.md ├── core ├── actor.go ├── actor │ ├── actor_build_impl.go │ ├── actor_chain.go │ ├── actor_context_impl.go │ ├── actor_opts.go │ ├── actor_reenter_impl.go │ ├── actor_runtime_impl.go │ └── actor_timer.go ├── addressbook.go ├── addressbook │ └── addressbook_impl.go ├── entity.go ├── node.go ├── node │ ├── node_process_impl.go │ ├── system_acceptor.go │ └── system_impl.go └── system.go ├── def ├── custom_def.go ├── mock_def.go ├── service_def.go └── system_def.go ├── go.mod ├── go.sum ├── lib ├── dismutex │ └── dismutex.go ├── errcode │ └── errcode.go ├── grpc │ ├── client.go │ ├── client_opt.go │ ├── client_test.go │ ├── mock │ │ ├── mock.pb.go │ │ └── mock.proto │ ├── server.go │ └── server_opt.go ├── log │ ├── field.go │ ├── flow.go │ ├── helper.go │ ├── mlog.go │ ├── options.go │ └── rotation.go ├── mpsc │ └── mpsc.go ├── pubsub │ ├── ps_channel.go │ ├── ps_mgr.go │ ├── ps_opts.go │ ├── ps_topic.go │ └── ps_topic_test.go ├── span │ ├── span_call.go │ ├── span_grpc.go │ └── span_opts.go ├── timer │ ├── timer.go │ ├── timer_express.go │ └── timer_tick.go ├── token │ ├── token.go │ └── token_test.go ├── tracer │ ├── jaegertracing.go │ ├── opts.go │ ├── slow_reporter.go │ └── tracer.go ├── unbounded │ └── unbounded.go └── warpwaitgroup │ └── warpwaitgroup.go ├── router ├── gen.sh ├── msg │ ├── map_custom_object.go │ ├── map_custom_serialize.go │ ├── msg.go │ ├── msg_custom_map.go │ ├── msg_test.go │ └── msg_utils.go ├── router.pb.go └── router.proto ├── tests ├── addressbook_test.go ├── call_benchmark_test.go ├── call_test.go ├── main_test.go ├── mock │ ├── actor_control.go │ ├── actor_dynamic_picker.go │ ├── actor_dynamic_register.go │ ├── mock_actor_a.go │ ├── mock_actor_b.go │ ├── mock_actor_c.go │ ├── mock_factory.go │ ├── mock_loader.go │ └── mock_tcc.go ├── pubsub_test.go ├── reenter_test.go ├── send_test.go └── timer_test.go └── utils ├── algorithms └── algorithms.go └── file └── file.go /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/.gitignore -------------------------------------------------------------------------------- /3rd/mgo/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/3rd/mgo/client.go -------------------------------------------------------------------------------- /3rd/mgo/collection.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/3rd/mgo/collection.go -------------------------------------------------------------------------------- /3rd/mgo/mgr.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/3rd/mgo/mgr.go -------------------------------------------------------------------------------- /3rd/mgo/mgr_opts.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/3rd/mgo/mgr_opts.go -------------------------------------------------------------------------------- /3rd/redis/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/3rd/redis/client.go -------------------------------------------------------------------------------- /3rd/redis/client_opt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/3rd/redis/client_opt.go -------------------------------------------------------------------------------- /3rd/redis/client_utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/3rd/redis/client_utils.go -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/README.md -------------------------------------------------------------------------------- /README_CN.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/README_CN.md -------------------------------------------------------------------------------- /core/actor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/actor.go -------------------------------------------------------------------------------- /core/actor/actor_build_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/actor/actor_build_impl.go -------------------------------------------------------------------------------- /core/actor/actor_chain.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/actor/actor_chain.go -------------------------------------------------------------------------------- /core/actor/actor_context_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/actor/actor_context_impl.go -------------------------------------------------------------------------------- /core/actor/actor_opts.go: -------------------------------------------------------------------------------- 1 | package actor 2 | -------------------------------------------------------------------------------- /core/actor/actor_reenter_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/actor/actor_reenter_impl.go -------------------------------------------------------------------------------- /core/actor/actor_runtime_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/actor/actor_runtime_impl.go -------------------------------------------------------------------------------- /core/actor/actor_timer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/actor/actor_timer.go -------------------------------------------------------------------------------- /core/addressbook.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/addressbook.go -------------------------------------------------------------------------------- /core/addressbook/addressbook_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/addressbook/addressbook_impl.go -------------------------------------------------------------------------------- /core/entity.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/entity.go -------------------------------------------------------------------------------- /core/node.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/node.go -------------------------------------------------------------------------------- /core/node/node_process_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/node/node_process_impl.go -------------------------------------------------------------------------------- /core/node/system_acceptor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/node/system_acceptor.go -------------------------------------------------------------------------------- /core/node/system_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/node/system_impl.go -------------------------------------------------------------------------------- /core/system.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/core/system.go -------------------------------------------------------------------------------- /def/custom_def.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/def/custom_def.go -------------------------------------------------------------------------------- /def/mock_def.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/def/mock_def.go -------------------------------------------------------------------------------- /def/service_def.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/def/service_def.go -------------------------------------------------------------------------------- /def/system_def.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/def/system_def.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/go.sum -------------------------------------------------------------------------------- /lib/dismutex/dismutex.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/dismutex/dismutex.go -------------------------------------------------------------------------------- /lib/errcode/errcode.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/errcode/errcode.go -------------------------------------------------------------------------------- /lib/grpc/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/grpc/client.go -------------------------------------------------------------------------------- /lib/grpc/client_opt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/grpc/client_opt.go -------------------------------------------------------------------------------- /lib/grpc/client_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/grpc/client_test.go -------------------------------------------------------------------------------- /lib/grpc/mock/mock.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/grpc/mock/mock.pb.go -------------------------------------------------------------------------------- /lib/grpc/mock/mock.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/grpc/mock/mock.proto -------------------------------------------------------------------------------- /lib/grpc/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/grpc/server.go -------------------------------------------------------------------------------- /lib/grpc/server_opt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/grpc/server_opt.go -------------------------------------------------------------------------------- /lib/log/field.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/log/field.go -------------------------------------------------------------------------------- /lib/log/flow.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/log/flow.go -------------------------------------------------------------------------------- /lib/log/helper.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/log/helper.go -------------------------------------------------------------------------------- /lib/log/mlog.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/log/mlog.go -------------------------------------------------------------------------------- /lib/log/options.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/log/options.go -------------------------------------------------------------------------------- /lib/log/rotation.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/log/rotation.go -------------------------------------------------------------------------------- /lib/mpsc/mpsc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/mpsc/mpsc.go -------------------------------------------------------------------------------- /lib/pubsub/ps_channel.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/pubsub/ps_channel.go -------------------------------------------------------------------------------- /lib/pubsub/ps_mgr.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/pubsub/ps_mgr.go -------------------------------------------------------------------------------- /lib/pubsub/ps_opts.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/pubsub/ps_opts.go -------------------------------------------------------------------------------- /lib/pubsub/ps_topic.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/pubsub/ps_topic.go -------------------------------------------------------------------------------- /lib/pubsub/ps_topic_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/pubsub/ps_topic_test.go -------------------------------------------------------------------------------- /lib/span/span_call.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/span/span_call.go -------------------------------------------------------------------------------- /lib/span/span_grpc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/span/span_grpc.go -------------------------------------------------------------------------------- /lib/span/span_opts.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/span/span_opts.go -------------------------------------------------------------------------------- /lib/timer/timer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/timer/timer.go -------------------------------------------------------------------------------- /lib/timer/timer_express.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/timer/timer_express.go -------------------------------------------------------------------------------- /lib/timer/timer_tick.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/timer/timer_tick.go -------------------------------------------------------------------------------- /lib/token/token.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/token/token.go -------------------------------------------------------------------------------- /lib/token/token_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/token/token_test.go -------------------------------------------------------------------------------- /lib/tracer/jaegertracing.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/tracer/jaegertracing.go -------------------------------------------------------------------------------- /lib/tracer/opts.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/tracer/opts.go -------------------------------------------------------------------------------- /lib/tracer/slow_reporter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/tracer/slow_reporter.go -------------------------------------------------------------------------------- /lib/tracer/tracer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/tracer/tracer.go -------------------------------------------------------------------------------- /lib/unbounded/unbounded.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/unbounded/unbounded.go -------------------------------------------------------------------------------- /lib/warpwaitgroup/warpwaitgroup.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/lib/warpwaitgroup/warpwaitgroup.go -------------------------------------------------------------------------------- /router/gen.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/router/gen.sh -------------------------------------------------------------------------------- /router/msg/map_custom_object.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/router/msg/map_custom_object.go -------------------------------------------------------------------------------- /router/msg/map_custom_serialize.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/router/msg/map_custom_serialize.go -------------------------------------------------------------------------------- /router/msg/msg.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/router/msg/msg.go -------------------------------------------------------------------------------- /router/msg/msg_custom_map.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/router/msg/msg_custom_map.go -------------------------------------------------------------------------------- /router/msg/msg_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/router/msg/msg_test.go -------------------------------------------------------------------------------- /router/msg/msg_utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/router/msg/msg_utils.go -------------------------------------------------------------------------------- /router/router.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/router/router.pb.go -------------------------------------------------------------------------------- /router/router.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/router/router.proto -------------------------------------------------------------------------------- /tests/addressbook_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/addressbook_test.go -------------------------------------------------------------------------------- /tests/call_benchmark_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/call_benchmark_test.go -------------------------------------------------------------------------------- /tests/call_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/call_test.go -------------------------------------------------------------------------------- /tests/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/main_test.go -------------------------------------------------------------------------------- /tests/mock/actor_control.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/mock/actor_control.go -------------------------------------------------------------------------------- /tests/mock/actor_dynamic_picker.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/mock/actor_dynamic_picker.go -------------------------------------------------------------------------------- /tests/mock/actor_dynamic_register.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/mock/actor_dynamic_register.go -------------------------------------------------------------------------------- /tests/mock/mock_actor_a.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/mock/mock_actor_a.go -------------------------------------------------------------------------------- /tests/mock/mock_actor_b.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/mock/mock_actor_b.go -------------------------------------------------------------------------------- /tests/mock/mock_actor_c.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/mock/mock_actor_c.go -------------------------------------------------------------------------------- /tests/mock/mock_factory.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/mock/mock_factory.go -------------------------------------------------------------------------------- /tests/mock/mock_loader.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/mock/mock_loader.go -------------------------------------------------------------------------------- /tests/mock/mock_tcc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/mock/mock_tcc.go -------------------------------------------------------------------------------- /tests/pubsub_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/pubsub_test.go -------------------------------------------------------------------------------- /tests/reenter_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/reenter_test.go -------------------------------------------------------------------------------- /tests/send_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/send_test.go -------------------------------------------------------------------------------- /tests/timer_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/tests/timer_test.go -------------------------------------------------------------------------------- /utils/algorithms/algorithms.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/utils/algorithms/algorithms.go -------------------------------------------------------------------------------- /utils/file/file.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pojol/braid/HEAD/utils/file/file.go --------------------------------------------------------------------------------