[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-896?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15185076#comment-15185076
 ] 

ASF GitHub Bot commented on BOOKKEEPER-896:
-------------------------------------------

GitHub user eolivelli opened a pull request:

    https://github.com/apache/bookkeeper/pull/21

    BOOKKEEPER-896: VM-local transport

    

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/eolivelli/bookkeeper BOOKKEEPER-896

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/bookkeeper/pull/21.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #21
    
----
commit d93a93499c486ae4858dd3142b036fe1e3f11b9a
Author: eolivelli <eolive...@gmail.com>
Date:   2016-03-08T15:26:27Z

    BOOKKEEPER-896: VM-local transport

----


> 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
>            Priority: Minor
>
> 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)

Reply via email to