avro-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matthieu Monsch (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (AVRO-1778) IPC/RPC for JavaScript
Date Sun, 10 Jan 2016 22:11:39 GMT

     [ https://issues.apache.org/jira/browse/AVRO-1778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Matthieu Monsch updated AVRO-1778:
----------------------------------
    Assignee: Ryan Blue

> IPC/RPC for JavaScript
> ----------------------
>
>                 Key: AVRO-1778
>                 URL: https://issues.apache.org/jira/browse/AVRO-1778
>             Project: Avro
>          Issue Type: Improvement
>          Components: javascript
>            Reporter: Matthieu Monsch
>            Assignee: Ryan Blue
>
> This patch adds protocols to the JavaScript implementation.
> The API was designed to:
> + Be simple and idiomatic. The `Protocol` class added here is heavily inspired by node.js'
core `EventEmitter` to keep things as familiar as possible [1]. Getting a client and server
working is straightforward and requires very few lines of code [2].
> + Support arbitrary transports, both stateful and stateless. Communication over built-in
node.js streams are supported out of the box (e.g. TCP/UNIX sockets, or even stdin/stdout).
Exchanging messages over a custom transport requires implementing a single simple function
(see [3] for an example).
> + Work both server-side and in the browser (!).
> Ps: I also tested against both the Java and Python implementations over HTTP and communication
worked. 
> [1] https://github.com/mtth/avsc/wiki/API#ipc--rpc
> [2] https://github.com/mtth/avsc/wiki/Advanced-usage#remote-procedure-calls
> [3] https://github.com/mtth/avsc/wiki/Advanced-usage#transient-streams



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message