Metadata-Version: 1.1
Name: nanoservice
Version: 0.1.2
Summary: nanoservice is a small Python library for writing lightweight networked services using nanomsg
Home-page: https://github.com/walkr/nanoservice
Author: Tony Walker
Author-email: walkr.walkr@gmail.com
License: MIT
Description: nanoservice
        ===========
        nanoservice is a small Python library for writing lightweight networked services
        using [nanomsg](http://nanomsg.org/)
        
        With nanoservice you can break up monolithic applications into small,
        specialized services which communicate with each other.
        
        
        ## Install
        
        1) Make sure you have the nanomsg library installed:
        
        ```shell
        $ git clone git@github.com:nanomsg/nanomsg.git
        $ ./configure
        $ make
        $ make check
        $ sudo make install
        ```
        
        For more details visit the official [nanomsg repo](https://github.com/nanomsg/nanomsg)
        
        On OS X you can also do:
        
        ```shell
        $ brew install nanomsg
        ```
        
        2) Install nanoservice:
        
        From project directory
        
        ```shell
        $ make install
        ```
        
        Or via pip
        
        ```shell
        $ pip install nanoservice
        ```
        
        
        ## Example Usage
        
        
        The service:
        
        ```python
        from nanoservice import Service
        
        def echo(msg):
            return msg
        
        s = Service('ipc:///tmp/service.sock')
        s.register('echo', echo)
        s.start()
        ```
        
        
        ```shell
        $ python echo_service.py
        ```
        
        The client:
        
        ```python
        from nanoservice import Client
        
        c = Client('ipc:///tmp/service.sock')
        res, err = c.call('echo', 'hello world’)
        print('Result is {}'.format(res))
        ```
        
        ```shell
        $ python my_client.py
        $ Result is: hello world
        ```
        
        ## Other
        
        To run tests:
        
        ```shell
        $ make test
        ```
        
        To run benchmarks
        
        ```shell
        $ make bench
        ```
        
        Check out examples directory for more examples.
        
        MIT Licensed
        
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
