stampery / msgpack-rpc-erlang

RPC with MessagePack in Erlang/OTP

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MessagePack-RPC Erlang

https://secure.travis-ci.org/msgpack-rpc/msgpack-rpc-erlang.png

  • prequisites for runtime

Erlang runtime system (http://erlang.org/ ) >= R15B0x

build

$ ./rebar get-deps
$ ./rebar compile

client

{ok, Pid} = msgpack_rpc_client:connect(tcp, localhost, 9199, []),
{ok, Ret} = msgpack_rpc_client:call(Pid, hello, []),
ok = msgpack_rpc_client:close(Pid).

server

Implement a module with functions exported. see test/msgpack_rpc_test.erl .

ok = application:start(ranch),
{ok, _} = msgpack_rpc_server:start(testlistener, tcp, msgpack_rpc_test, [{port,9199}]),

Instead SSL is also available:

ok = application:start(crypto),
ok = application:start(ssl),
ok = application:start(ranch),
{ok, _} = msgpack_rpc_server:start(testlistener, ssl, msgpack_rpc_test,
                                   [{port,9199}, {certfile, "foo.pem"}, {keyfile, "bar.pem"}]),

License

Apache 2.0

TODO

  • session TIMEOUTs for client and server
  • error handling -- what if happens when badarg/noproc/bad_clause, and exceptions.
  • crosslang test
  • UDS, SCTP/zip and more transport ...
  • release handling (/release/*.appup)
  • full-spec type/spec notation
  • longrun test

About

RPC with MessagePack in Erlang/OTP


Languages

Language:Erlang 86.0%Language:Ruby 12.3%Language:Makefile 1.7%Language:Shell 0.0%