You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@bookkeeper.apache.org by "Enrico Olivelli (JIRA)" <ji...@apache.org> on 2016/05/25 06:52:12 UTC
[jira] [Assigned] (BOOKKEEPER-896) VM-local transport
[ https://issues.apache.org/jira/browse/BOOKKEEPER-896?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Enrico Olivelli reassigned BOOKKEEPER-896:
------------------------------------------
Assignee: Enrico Olivelli
> VM-local transport
> ------------------
>
> Key: BOOKKEEPER-896
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-896
> Project: Bookkeeper
> Issue Type: New Feature
> Components: bookkeeper-client, bookkeeper-server
> Affects Versions: 4.4.0
> Reporter: Enrico Olivelli
> Assignee: Enrico Olivelli
> Priority: Minor
> Fix For: 4.4.0
>
>
> Hi,
> I’m wondering if it is feasible to have a way to launch a Bookie and a Bookkeeper client in the same JVM without using network, valid use cases are:
> 1) Unit testing
> 2) Installations using a single Bookie
> 1) Unit testing
> For unit testing I’m using mock classes which reproduce the functions of Bookkeeper but it makes my code more complex.
> Running network-related libraries limits the possibility of running tests in parallel and slows down the overall throughput of the tests
> 2) Single Bookie deployment
> Sometimes I need to launch software which uses Bookkeeper in a single-machine deployment, in this case using an embedded Bookie will let to have only a single JVM process which runs the full stack of the service.
> For instance when I’m using Bookkeeper as a commit log I need to implement a commit log which uses Bookkeeper for replicated deployments, a simple “file” based commit log and a pure in-memory commit log for unit testing.
> I think it could be done using Netty LocalServerChannelFactory (and related client-side classes) and some tricks about the use of hostnames, registration on Zookeeper and so on
> Of course the same issue will be on Zookkeeper
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)