# Pipeline with queues between the actors

**URL:** <https://discuss.ray.io/t/pipeline-with-queues-between-the-actors/12574>\
**Category:** Ray Core\
**Created:** [October 24, 2023, 9:52am UTC](https://discuss.ray.io/t/pipeline-with-queues-between-the-actors/12574 "2023-10-24T09:52:28Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![siadajpan](https://avatars.discourse-cdn.com/v4/letter/s/a9a28c/32.png) [@siadajpan](https://discuss.ray.io/u/siadajpan)\
**Post date:** [October 24, 2023, 9:52am UTC](https://discuss.ray.io/t/pipeline-with-queues-between-the-actors/12574/1 "2023-10-24T09:52:28Z")

</div>

In my application I’m using the actors that are running in parallel and there is a queue (ray.util.queue.Queue) that is shared between each two linked actors.

E.g. one actor is reading some file or waiting for a camera input, while the other is processing the previous frame and another one saving file to disk.  
source → queue ← worker\_1 → queue ← worker\_2

To not serialize the big files between the actors I was trying to implement a data actor that has `set` and `get` methods to hold the data that cannot be serialized for the queue.

Is there a pattern for that already created? I don’t want to re-invent the wheel. I feel like the pipeline system is quite similar, however it’s not running in parallel.

---

<div class="post-metadata">

**Author:** ![jjyao](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ray.io/jjyao/32/1799_2.png) [@jjyao](https://discuss.ray.io/u/jjyao)\
**Post date:** [October 27, 2023, 10:48pm UTC](https://discuss.ray.io/t/pipeline-with-queues-between-the-actors/12574/2 "2023-10-27T22:48:09Z")

</div>

Hi @siadajpan

Isn’t `ray.util.queue.Queue` the data actor you want?
