Skip to content

apache/dubbo-erlang

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 /apache/dubbo-erlang.git",{branch,"master"}}}
]}.

Step1

Useerlanalysistool 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 projectdubboerl_demo

More Documents

ReferenceDocs