I'll take a stab at these.
1. streams are "materialized" before they are run, and I believe this is
pluggable. Currently the one and only materializer uses actors.  See
http://doc.akka.io/docs/akka-stream-and-http-experimental/2.0.3/scala/stream-flows-and-basics.html#Stream_Materialization

2. Not sure what you mean. If backpressure is not an issue, Sink.actorRef
can be used to send stream output to an actor (nothing to do with the ones
from materialization which you are blissfully unaware of). If backpressure
is an issue, you need to use ActorSubscriber. The publisher and subscriber
are ways to integrate the start and end of the stream with actors. See
http://doc.akka.io/docs/akka-stream-and-http-experimental/2.0.3/scala/stream-integrations.html#Integrating_with_Actors

3. Yes, blocking must be managed. I am doing this even for a fast but
blocking call, but I'm not certain if this is the best way to do it

val futureValue = Future { blocking { file.getParent.mkdirs } }

The future-returning function can be using in stream.mapAsync(...)

4. I don't have much experience with akka http (as opposed to Spray), but
there are things like WebSockets, file downloads and uploads and even just
large responses which can start streaming to the browser before they are
complete. When Play is integrated with akka streams/http the
Iteratee/Enumeratee abstractions will be gone
http://doc.akka.io/docs/akka-stream-and-http-experimental/2.0.3/scala/http/low-level-server-side-api.html#Streams_and_HTTP

Hope this helps.

On Thu, Feb 4, 2016 at 6:30 PM, Gabor Dorcsinecz <gabor.dorcsin...@gmail.com
> wrote:

> Hi Guys,
>
> I have some missunderstandings regarding akka streams.
> I somebody could just clear them up, would be very nice
> 1. Are streams actually based on actors, or is it something completely
> different?
> 2. I see the ActorProducer / ActorSubscriber classes, but also see the
> construction of graph stages which handle similar stuff. How do these
> relate?
> 3. It is a bad habit, to do blocking things in actors, because they will
> eat up the thread pool underlying actors. Is the same true for flows?
>     Can I just run a query in a flow stage that takes say 2 minutes?
> 4. How does akka http works? I mean all akka streams are about the
> consumer is pulling the data. But in akka http - which is based on streams
> -
>    there is nobody pulling. If I have a server, somebody is just pushing
> stuff to me. So how does these come together?
>
> Thanks, Devorb
>
> --
> >>>>>>>>>> Read the docs: http://akka.io/docs/
> >>>>>>>>>> Check the FAQ:
> http://doc.akka.io/docs/akka/current/additional/faq.html
> >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user
> ---
> You received this message because you are subscribed to the Google Groups
> "Akka User List" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to akka-user+unsubscr...@googlegroups.com.
> To post to this group, send email to akka-user@googlegroups.com.
> Visit this group at https://groups.google.com/group/akka-user.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
>>>>>>>>>>      Read the docs: http://akka.io/docs/
>>>>>>>>>>      Check the FAQ: 
>>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>>      Search the archives: https://groups.google.com/group/akka-user
--- 
You received this message because you are subscribed to the Google Groups "Akka 
User List" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to akka-user+unsubscr...@googlegroups.com.
To post to this group, send email to akka-user@googlegroups.com.
Visit this group at https://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to