Provider path parse compatible with version 2.5.x
3 files changed
tree: 7dd78d16bd24d341abc68e0a97b435d2c84dc40e
  1. .github/
  2. config_example/
  3. docs/
  4. include/
  5. samples/
  6. src/
  7. test/
  8. tools/
  9. .gitignore
  10. .travis.yml
  11. CHANGES.md
  12. LICENSE
  13. README.md
  14. rebar.config
  15. rebar.lock
  16. rebar3
README.md

dubboerl

Apache Dubbo Erlang Implementation.

Build Status codecov

Feature list

The following features are supported.

  • Zookeeper registry center (√)
  • Dubbo Protocol (√)
  • Serialize
    • Hessian serialize (√)
    • Json serialize (√)
  • Erlang project as consumer or provider (√)
  • Sync and Async invoker (√)
  • Random loadbalance (√)
  • Connection pools (√)
  • Support protocol,cluster,loadbalance,registry and filter extension point.

Start

Import

Add dubblerl to rebar.config with your project

{deps, [
    {dubboerl, {git, "https://github.com/apache/dubbo-erlang.git", {branch, "master"}}}
]}.

Step1

Use erlanalysis tool transfer java interface to erlang lib. And add the lib to you project app dir.

Step2

configure dubbo reference.

in sys.config add dubboerl config. For example:

{dubboerl,[
    {application,<<"testdubboerl">>},
    {protocol, {dubbo, [{port, 20882}]}},
    {registry,zookeeper},
    {zookeeper_list,[{"127.0.0.1",2181}]},
    {serialization,hessian},
    {consumer,[
        {<<"org.apache.dubbo.erlang.sample.service.facade.UserOperator">>,[]}
    ]},
    {provider,[
        {user_impl,userOperator,<<"org.apache.dubbo.erlang.sample.service.facade.UserOperator">>,[]}
    ]}
]}

Step4

Init dubboerl application context when your project start.

dubboerl:init().

Step5

Call the interface method.

Request = #userInfoRequest{requestId = 123, username = "testname"},
userOperator:queryUserInfo(Request,#{sync=> true}).

Sample

Reference the demo project dubboerl_demo

More Documents

Reference Docs