These are chat archives for petabridge/akka-bootcamp

9th
Mar 2016
Onam
@OnamChilwan
Mar 09 2016 23:43
Looking at the remoting tutorial at both akka official page and petabridge and perhaps my understanding is incorrect. All the examples I've seen have been a shared library containing messages and actors. However, this
However if this was a distributed system where multiple teams worked on different domains for these to communicate with another would they need to have a reference to these actors?
Aaron Stannard
@Aaronontheweb
Mar 09 2016 23:45
@OnamChilwan all shared messages must be available in a common DLL
the actors who handle them do not
the only actors that need to be defined in a shared DLL are ones you deploy remotely
which is usually pretty rare
should definitely check out https://petabridge.com/training/akka-remoting/#fndtn-us_eu if you're interested in learning how to use those techniques more
Onam
@OnamChilwan
Mar 09 2016 23:48
I just watched the pluralsight video by Jason Roberts in his example he moved his actors and messages into a common library
Aaron Stannard
@Aaronontheweb
Mar 09 2016 23:48
that's because, as far as I know, Jason Roberts hasn't actually used Akka.NET in a real-world application
so I have no idea what he's recommending :p
Onam
@OnamChilwan
Mar 09 2016 23:48
His client and server then referenced these actors which I felt was bizarre :/
Aaron Stannard
@Aaronontheweb
Mar 09 2016 23:48
yeah, that is bizarre
well, not entirely
if you're re-using actors
then it makes sense to do that
but you certainly don't HAVE to do that
I don't
Onam
@OnamChilwan
Mar 09 2016 23:50
So the only thing that needs to be shared are messages but the actors themselves can be completely agnostic from server / client
Aaron Stannard
@Aaronontheweb
Mar 09 2016 23:50
correct
Onam
@OnamChilwan
Mar 09 2016 23:51
Is there an example of this I am struggling to find one been trying to get this to work but seriously struggling
Aaron Stannard
@Aaronontheweb
Mar 09 2016 23:51
there's a couple inside the main Akka.NET source
take a look at ChatClient / ChatServer
that's about as "hello world" as you can get
I have a remote deployment sample here that's also pretty simple: https://github.com/petabridge/akkadotnet-code-samples/tree/master/RemoteDeploy
but this is a case where you need to be able to have at least 1 actor defined in a shared assembly
since the actor is actually being remotely instantiated on another process
Onam
@OnamChilwan
Mar 09 2016 23:54
Cheers I'll have a look. Also, is it generally the same for a web API talking to akka console app? What I mean is the config is the same and the setup..
Create an actor system in both as singletons
Aaron Stannard
@Aaronontheweb
Mar 09 2016 23:55
definitely check this out
that uses Clustering, which is built on top of Akka.Remote
but integrates an ASP.NET MVC application with 3 windows services
Onam
@OnamChilwan
Mar 09 2016 23:57
Ah k I haven't read the bit about clustering yet there's a fair bit to learn. One of things that has concerned a fella at my work is some of the packages are in pre release state. What's the deal with that?
Eg persistence
He believes this could affect the reliable aspects of akka
Aaron Stannard
@Aaronontheweb
Mar 09 2016 23:59
Akka.Cluster and Akka.Persistence have been in beta for a while
because there are still some known bugs there
that are pretty significant - but they're being fixed