ockam icon indicating copy to clipboard operation
ockam copied to clipboard

feat(elixir): add unix domain sockets transport and getting-started example

Open tzumby opened this issue 3 years ago • 3 comments

Current Behavior

Currently there is no implementation of Unix Domain Socket Transports for Elixir implementation.

Proposed Changes

This PR is still Work in Progress

  • [x] Prototype the unix domain sockets transport
  • [x] Add examples
  • [ ] Add tests
  • [ ] Clean up sockets after crashes / shutdown
  • [ ] Allow multiple UDS gen_tcp servers to run (currently using named processes for the Connection supervision)
       +-----------------+                                                                 
       | UDS(Supervisor) |                                                                 
       +--------/----\---+                                                                 
               /      \                                                                    
              /        \                                                                   
             /       +-----------+                                                         
            /        | Listener  --------|                                                 
           /         +-----------+       |                                                 
          /                              | Start Connection children                       
   +-----------------------+             |                                                 
   |Connection Supervisor  --------------|                                                 
   |(dynamic)              |                                                               
   +------/----------\-----+                                                               
         /            \                                                                    
        /              -\                                                                  
       /                 \                                                                 
      /                   \                                                                
+--------------------++--------------------+                                               
| Connection Process || Connection Process |                                               
|                    ||                    |                                               
| +--------+         || +--------+         |                                               
| | socket |         || | socket |         |                                               
| +--------+         || +--------+         |                                               
+--------------------++--------------------+                                               
                                                      

Checks

tzumby avatar Feb 07 '23 17:02 tzumby

Hi @tzumby I can see it has been a while since this PR has been opened. Is there anything we can do to help you finish it?

etorreborre avatar May 23 '23 10:05 etorreborre

Hey @etorreborre, thanks for messaging, I would love to push this over the finish line, but I'm absolutely swamped with work. If this is blocking anything maybe it makes sense that I either close it or have someone else co-author this with me ?

tzumby avatar May 25 '23 21:05 tzumby

@tzumby no worries this is not on the critical path at the moment but we will see if we can maybe find someone to help you out with this.

etorreborre avatar May 26 '23 07:05 etorreborre