# Anything to read on suggested solutions to inter-process communications

**URL:** <https://discourse.julialang.org/t/anything-to-read-on-suggested-solutions-to-inter-process-communications/73455>\
**Category:** New to Julia\
**Tags:** ipc\
**Created:** [December 21, 2021, 9:21pm UTC](https://discourse.julialang.org/t/anything-to-read-on-suggested-solutions-to-inter-process-communications/73455 "2021-12-21T21:21:46Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![anon69491625](https://avatars.discourse-cdn.com/v4/letter/a/aeb1de/32.png) [@anon69491625](https://discourse.julialang.org/u/anon69491625)\
**Post date:** [December 21, 2021, 9:21pm UTC](https://discourse.julialang.org/t/anything-to-read-on-suggested-solutions-to-inter-process-communications/73455/1 "2021-12-21T21:21:46Z")

</div>

Hi there  
struggling with my architecture and would like to do a little reading. I have existing Python scripts which login to a brokerage api and get me real time data which I use for calculations.

I am thinking about sending the data stream to a julia script and doing the calculations there. The data ( in python) is of the form ( separated by “:”)

`mac address:UTC:ticker symbol:contract id:close price`

**I would like to know if the julia community have a document or thread that discusses suggested solutions to inter-process communications between running python scripts and julia.**

right now I am thinking:  
[PyCall](https://github.com/JuliaPy/PyCall.jl) which is my fav option with a side order of [Pluto @bind event handling Paul Berg](https://www.youtube.com/watch?v=sL8O4Hb9zD0&list=PLP8iPy9hna6T5sNOTeGdiqygHe_09geEW&t=634s)  
[ZMQ](https://github.com/JuliaInterop/ZMQ.jl)  
basic TCP [tcp example](https://docs.julialang.org/en/v1/manual/networking-and-streams/index.html#A-simple-TCP-example) or [MPI.jl](https://juliaparallel.github.io/MPI.jl/stable/usage/)

or [queues et al](https://juliapackages.com/p/datastructures)

---

<div class="post-metadata">

**Author:** ![nilshg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nilshg/32/2283_2.png) [@nilshg](https://discourse.julialang.org/u/nilshg)\
**Post date:** [December 21, 2021, 9:58pm UTC](https://discourse.julialang.org/t/anything-to-read-on-suggested-solutions-to-inter-process-communications/73455/2 "2021-12-21T21:58:20Z")

</div>

How long is that Python script? Feels to me like the smaller headache here would be to just knock up a Julia script that downloads the brokerage data a la

[https://juliaquant.github.io/MarketData.jl/stable/](https://juliaquant.github.io/MarketData.jl/stable/)

---

<div class="post-metadata">

**Author:** ![anon69491625](https://avatars.discourse-cdn.com/v4/letter/a/aeb1de/32.png) [@anon69491625](https://discourse.julialang.org/u/anon69491625)\
**Post date:** [December 21, 2021, 10:10pm UTC](https://discourse.julialang.org/t/anything-to-read-on-suggested-solutions-to-inter-process-communications/73455/3 "2021-12-21T22:10:55Z")

</div>

hi @nilshg it’s about 30 lines. I would prefer to just leave them alone and process the output stream in julia. To me this is a fresh start and more fun.

I don’t want to use anyone else’s data and the one you kindly sent me doesn’t seem to have implied volatility data which is important to me, I don’t want to have to calculate it if I can avoid it. I am certainly going to be using [PolygonIO.jl](https://github.com/PyDataBlog/PolygonIO.jl) as it seems to be an excellent approach.

---

<div class="post-metadata">

**Author:** ![nilshg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nilshg/32/2283_2.png) [@nilshg](https://discourse.julialang.org/u/nilshg)\
**Post date:** [December 22, 2021, 11:03am UTC](https://discourse.julialang.org/t/anything-to-read-on-suggested-solutions-to-inter-process-communications/73455/4 "2021-12-22T11:03:50Z")

</div>

If it’s a 30-line script I would assume you’ve already spent more time worrying about how to get Python to play nicely and do inter-process communication than it would have taken to just re-write this in Julia (which I guess would also materially decrease the maintenance burden going forward), but of course you know your requirements better than I do, just my 2 cents!

---

<div class="post-metadata">

**Author:** ![anon69491625](https://avatars.discourse-cdn.com/v4/letter/a/aeb1de/32.png) [@anon69491625](https://discourse.julialang.org/u/anon69491625)\
**Post date:** [December 22, 2021, 11:13am UTC](https://discourse.julialang.org/t/anything-to-read-on-suggested-solutions-to-inter-process-communications/73455/5 "2021-12-22T11:13:04Z")

</div>

it’s 30 lines of MY code but several hundred of function abstraction code written by others WAY more competent than me.

I’d prefer to shrink wrap the python ( it’s working well) and just concentrate on julia. I don’t want to start by recoding something when I don’t have to. It seems to me that julia has an abundance of solutions to this ipc issue and I’m having fun researching them. Thank you for your observation though. Always good to have a second opinion.

---

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [December 22, 2021, 12:28pm UTC](https://discourse.julialang.org/t/anything-to-read-on-suggested-solutions-to-inter-process-communications/73455/6 "2021-12-22T12:28:17Z")

</div>

> [@anon69491625](#):
>
> **I would like to know if the julia community have a document or thread that discusses suggested solutions to inter-process communications between running python scripts and julia.**
> 
> right now I am thinking basic TCP [tcp example](https://docs.julialang.org/en/v1/manual/networking-and-streams/index.html#A-simple-TCP-example) or [MPI.jl](https://juliaparallel.github.io/MPI.jl/stable/usage/)

Probably [ZMQ](https://github.com/JuliaInterop/ZMQ.jl) is easier than either of these for inter-language inter-process communication.

But honestly I think that IPC is way over-complicated as a way to interface to a 30-line Python script that you could trivially run from PyCall or translate to Julia.

---

<div class="post-metadata">

**Author:** ![anon69491625](https://avatars.discourse-cdn.com/v4/letter/a/aeb1de/32.png) [@anon69491625](https://discourse.julialang.org/u/anon69491625)\
**Post date:** [December 22, 2021, 12:57pm UTC](https://discourse.julialang.org/t/anything-to-read-on-suggested-solutions-to-inter-process-communications/73455/7 "2021-12-22T12:57:40Z")

</div>

I agree 100% and am absolutely revisiting PyCall. Don’t let the 30 lines confuse the issue. It’s 30 lines of my “code” and several 100 of other peoples.

thanks for your suggestion about ZMQ could be excellent later on.
