• Stars
    star
    102
  • Rank 335,494 (Top 7 %)
  • Language
    Java
  • Created almost 12 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

msgpack-rpc for Jubatus

MessagePack

Extremely efficient object serialization library. It's like JSON, but very fast and small.

What's MessagePack?

MessagePack is a binary-based efficient object serialization library. It enables to exchange structured objects between many languages like JSON. But unlike JSON, it is very fast and small.

Typical small integer (like flags or error code) is saved only in 1 byte, and typical short string only needs 1 byte except the length of the string itself. [1,2,3] (3 elements array) is serialized in 4 bytes using MessagePack as follows:

require 'msgpack'
msg = [1,2,3].to_msgpack  #=> "\x93\x01\x02\x03"
MessagePack.unpack(msg)   #=> [1,2,3]

MessagePack-RPC is cross-language RPC library for client, server and cluster applications. Because it releases you from complicated network programming completely and provides well-designed API, you can easily implement advanced network applications with MessagePack-RPC.

require 'msgpack/rpc'
class MyHandler
  def add(x,y) return x+y end
end
svr = MessagePack::RPC::Server.new
svr.listen('0.0.0.0', 18800, MyHandler.new)
svr.run

require 'msgpack/rpc'
c = MessagePack::RPC::Client.new('127.0.0.1',18800)
result = c.call(:add, 1, 2)  #=> 3

Getting Started

Usage and other documents about implementations in each language are found at the web site.

Learn More

More Repositories

1

jubatus

Framework and Library for Distributed Online Machine Learning
C++
706
star
2

jubatus-example

Example programs of Jubatus
Python
69
star
3

jubatus-mpio

mpio for Jubatus
C++
34
star
4

jubatus_core

Jubatus algorithm component
C++
20
star
5

jubatus-installer

Install Script of Jubatus
Shell
18
star
6

jubatus-python-client

Template of Jubatus client in Python. See pypi for the latest release.
Python
15
star
7

jubakit

๐Ÿ“ฆ Jubatus Toolkit
Python
13
star
8

jubatus-ruby-client

Template of Jubatus client in Ruby. See RubyGems for the latest release.
Ruby
10
star
9

homebrew-jubatus

Jubatus Homebrew Tap Repository
Ruby
9
star
10

jubatus.github.com

The official website
HTML
8
star
11

website

Source of the official website
Python
7
star
12

jubatus-tutorial-python

Tutorial of Jubatus
Python
5
star
13

handson-text

Jubatusใƒใƒณใ‚บใ‚ชใƒณใฎใƒ†ใ‚ญใ‚นใƒˆ
Python
5
star
14

jubatus-python-skeleton

Skeleton of Jubatus Client Application in Python
Python
4
star
15

jubatus-java-skeleton

Skeleton of Jubatus Client Application in Java
Java
4
star
16

distribution

Deprecated - distribution tools for jubatus
Elixir
3
star
17

embedded-jubatus-python

Python
3
star
18

jubatus-service-skeleton

Skeleton of Service in Jubatus Framework
C++
3
star
19

jubadump

Python
3
star
20

jubaql-server

Server components of the JubaQL ecosystem
Scala
3
star
21

jubatus-java-client

Template of Jubatus client in Java. See the maven repository for the latest release.
Java
3
star
22

jubatus-go-client

It is experimetal yet.
Go
2
star
23

jubatus-ruby-skeleton

Skeleton of Jubatus Client Application in Ruby
Ruby
2
star
24

jubatus-on-yarn

Code for running Jubatus on a YARN cluster
Scala
1
star
25

jubaql-client

Command line client to interact with a JubaQL server
Scala
1
star
26

jubatus-cpp-skeleton

Skeleton of Jubatus Client Application in C++
C++
1
star