The stream could come from reading a file or could be generated by the application. One idea would be to pass a Subscriber in an actor message that can be used to read the data. An alternative, as I think you are suggesting, would be to use a tcp socket based on Akka IO (maybe an embedded HTTP server at the other end).
Would using reactive streams for transferring larger files make the actor system less responsive because it involves actors (internally), while the tcp method does not? On Thursday, November 13, 2014 2:49:48 PM UTC+1, Martynas Mickevičius wrote: > > Where is the stream that you want to handle with akka-stream coming from? > > Before materialization you can pass around Sources and Sinks in actor > messages. After materialization you can pass Publishers and Subscribers in > actor messages as well. > > On Tue, Nov 11, 2014 at 8:15 PM, Allan Brighton <[email protected] > <javascript:>> wrote: > >> Hi Martynas, >> >> Thanks for your answer. What about the case of local actors in the same >> ActorSystem? >> It seems that it would be more flexible to pass a stream of bytes (or >> ByteStrings) than to pass a File object in an actor message. >> I have seen examples of reactive streams used to read/write files, but so >> far only text files (character based). >> How would you pass a binary stream of bytes between local actors? >> >> Thanks, >> Allan >> >> >> On Tuesday, November 11, 2014 2:14:25 PM UTC+1, Martynas Mickevičius >> wrote: >>> >>> Hi Allan, >>> >>> currently akka-stream can only be materialized to actors on one >>> ActorSystem. Materialization to remote actors or cluster will come >>> eventually, but not soon. >>> >>> However you can still use ActorPublisher and ActorSubscriber with remote >>> actors. Having said that, you need to keep in mind that sending very big >>> messages via remoting may make actor system less responsive, because >>> various system messages would possibly not get through in time. >>> >>> Better approach for sending very large messages over the network would >>> be to write custom message serving and retrieval using akka-io. >>> >>> On Thu, Nov 6, 2014 at 4:25 PM, Allan Brighton <[email protected]> >>> wrote: >>> >>>> Hi, >>>> >>>> An actor needs to receive messages containing the binary contents of >>>> files that can be around 35mb in size. >>>> Rather than sending an actor message containing an Array[Byte] would it >>>> make sense to send a message containing an Akka Stream >>>> (for example, a Source[Byte])? Would this also work with remote actors? >>>> >>>> Would it be better for performance to break the data up into chunks >>>> (using source.grouped(chunkSize)) on the sending side? >>>> (The receiving actor needs to save the file to disk.) >>>> >>>> Thanks, >>>> Allan >>>> >>>> -- >>>> >>>>>>>>>> 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 [email protected]. >>>> To post to this group, send email to [email protected]. >>>> Visit this group at http://groups.google.com/group/akka-user. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> >>> >>> >>> -- >>> Martynas Mickevičius >>> Typesafe <http://typesafe.com/> – Reactive >>> <http://www.reactivemanifesto.org/> Apps on the JVM >>> >> -- >> >>>>>>>>>> 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 [email protected] <javascript:>. >> To post to this group, send email to [email protected] >> <javascript:>. >> Visit this group at http://groups.google.com/group/akka-user. >> For more options, visit https://groups.google.com/d/optout. >> > > > > -- > Martynas Mickevičius > Typesafe <http://typesafe.com/> – Reactive > <http://www.reactivemanifesto.org/> Apps on the JVM > -- >>>>>>>>>> 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 [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
