快速开始
2022-04-13 11:20 更新
Erlang 快速开始
建议先使用 java 定义接口 jar,并使用 erlanalysis 工具解析java接口至Erlang lib
导入依赖库
使用 Rebar 编译工具。
将 dubblerl 添加到rebar。配置你的项目:
{deps, [ {dubboerl, {git, "https://github.com/apache/dubbo-erlang.git", {branch, "master"}}} ]}.
使用 erlang.mk 编译工具
待补充
导入接口库
假设导出的接口库名为 dubbo_service.
如果您没有将库上传到git存储库,建议您将dubbo_服务库复制到项目的apps目录中。
如果将其上载到git存储库,您可以这样导入:
{deps, [ {dubboerl, {git, "https://github.com/apache/dubbo-erlang.git", {branch, "master"}}}, {dubbo_service,{git,"${INTERFACE_LIB_URL}",{branch,"master"}}} %% replace ${INTERFACE_LIB_URL} with your lib git repos url ]}.
消费者配置
请参考 Reference Config
在你的项目中初始化dubbolib
它需要你:
dubboerl:init().
如何调用?
同步调用
Request = #userInfoRequest{requestId = 123, username = "testname"}, {ok,RequestRef,Response,RpcContent} = userOperator:queryUserInfo(Request,#{sync=> true}).
如果发生错误,则响应{error,Reason}.
异步调用
默认为异步调用。
Request = #userInfoRequest{requestId = 123, username = "testname"}, {ok,RequestRef} = userOperator:queryUserInfo(Request). %% you can receive the message after. handle_cast({msg_back,RequestRef,Response,RpcContent},State).
示例
参考项目 dubboerl_demo
以上内容是否对您有帮助:
← Erlang
更多建议: