Comments (4)
@softinio @mijicd Sure, I also think that we can close this issue as you explained.
from zio-actors.
@jdegoes @mijicd Hi, I'm thinking about trying to start it.
Recently I've been working on zio-nio
mdoc microsite and did a draft use case page "remoting zio actors" with stub remote actors and sending messages via AsynchronousSocketChannel
.
I've looked into akka-remote
and akka-typed
and have some thoughts right now, mostly based on them.
So for zio-remote
there would be to do:
- Introduce
ActorSystem
that takes as parameter someStateful
(likeakka-typed
because it's also an actor) with optional argumentshost
andport
(or defined inapplication.conf
), that if present it opens internalServerSocketChannel
that listens on messages. - Make actors spawning possible only within an actor (actor will contain context for spawning actors like
akka-remote
. Every spawn will also register incontext
(ActorSystem
) so the incoming messages can be routed across actor tree) - All actors have to be named
- Like
akka-remote
let's give toActorSystem
(so as well tocontext
) anactorSelection(uri: String)
method for creating stubs for remote actors. Internally it opensSocketChannel
for sending messages to some remoteActorSystem
for some actor name (like"zio.tcp://[email protected]:2552/myActor1"
). - As mentioned there will be serialization module, like in
akka.serialization
but I'm still diving into it. The middleware protocol would send a tuple(message, actorName)
so afterActorSystem
receives messages it also gets target actor, which can be found if registered viacontext
.
Is it doable? Is such design acceptable?
from zio-actors.
@mtsokol Is this issue still relevant?
from zio-actors.
I vote for closing this one, as we have basic remoting in place. More specific issues should be opened for tackling some deficiencies in the current implementation, but the foundation is there.
@mtsokol what do you think?
from zio-actors.
Related Issues (20)
- Fix Socket closing issue HOT 1
- Actor Registry and Discovery
- Add Actor monitoring using zio-telementry
- If viable add ability to receive message and send messages to akka actors HOT 3
- Add support for ZIO environment
- Add support for SSL/TLS for Actor Remoting
- Validate actorName in make method HOT 1
- Add support for user defined message serialization HOT 4
- Add support for google datastore for persistence
- Add support for mysql for persistence HOT 2
- Receiving multiple responses asynchronously HOT 3
- Add Scala3 support HOT 3
- Add Scala 2.11 support back HOT 3
- Add Lifecycle Hooks
- Upgrade to ZIO 2.0
- Implement "become" functionality
- Memory leak during actor creation. HOT 1
- Installation failure following provided docs
- Passing zio actor references between Scala objects
- Request for The Next Release
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from zio-actors.