archive
/
ipc-unix
Archived
1
Fork 0
This repository has been archived on 2023-03-26. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Jake Howard 8820067a78
Point to tests for more examples
2018-12-08 14:50:21 +00:00
.circleci Add test script 2018-12-07 14:03:19 +00:00
ipc_unix Only define new line once 2018-12-08 14:36:37 +00:00
scripts Run tests verbose 2018-12-08 12:37:11 +00:00
tests Refactor simple server client to class 2018-12-08 14:23:16 +00:00
.gitignore Setup project 2018-12-07 13:54:46 +00:00
README.md Point to tests for more examples 2018-12-08 14:50:21 +00:00
dev-requirements.txt Install more flake8 plugins 2018-12-07 21:06:08 +00:00
setup.cfg Force payload to be dict, increase stability and speed 2018-12-08 01:12:34 +00:00
setup.py Run linters on setup.py 2018-12-07 21:10:52 +00:00

README.md

IPC-Unix

CircleCI

Simple Inter-Process Communication using unix sockets for Python.

Examples

For some more concrete examples, check out the tests/ directory.

Call / Response

from ipc_unix import Server, Client

class EchoServer(Server):
    def handle_request(self, request):
        return request

socket_path = '/tmp/sock.sock'
server = EchoServer(socket_path)
client = Client(socket_path)

print(client.send({"foo": "bar"}))
>>> {"foo": "bar"}

Pub-Sub

from ipc_unix import pubsub

socket_path = '/tmp/sock.sock'
publisher = pubsub.Publisher(socket_path)
subscriber = pubsub.Subscriber(socket_path)

publisher.write({"foo": "bar"})
print(self.subscriber.get_latest_message())
>>> {"foo": "bar"}

publisher.close()
subscriber.close()