Hi people!

I don't know enough about Akka actors, Alexei. But in my pet project:

- no callback, you send a message to an actor reference, and voila
- no threads, only use the force of Node.js ;-) as usual, it leverages any
async i/o processing

I don't like to refer an actor by name (including machine, tree node,
etc...). I would like to refer an actor by role, or something alike. But
apparently, a lot of docs/examples are available for Akka, so my first
experiment is using the same ideas from Akka. Last time I see, Akka is
moving to have a cluster of agents, so you don't send a message to AN
agent, but to a cluster of possible duplicated agents.

More experiments (including sending message, without knowing with part will
be attend the message, it is decided by configuration, not in your
agent/sending module code)
http://ajlopez.wordpress.com/2013/05/30/aplicaciones-distribuidas-y-node-js/

Messaging is the key, send the message, the force it will process, Luke ;)

Angel "Java" Lopez
@ajlopez



On Thu, Sep 26, 2013 at 2:39 PM, Alexey Petrushin <
[email protected]> wrote:

> > Akka system
>
> As far as I know Akka isn't true actor framework. It offer two ways
>
> - Actors backed by threads - simple to use, but not good for performance
> - Asynchronous actors - good performance but hard to use (same async
> stuff, with same callback hell and other problems).
>
> True actor - when you have both - synchronicity and performance, Akka
> can't provide it.
>
> On Wednesday, September 25, 2013 5:32:23 PM UTC+4, ajlopez wrote:
>
>> Interesting thread, lot of good resources and discussion
>>
>> Since my past year email, I updated my pet project, to reflect more a
>> (very) simplified Akka system:
>>
>> https://github.com/ajlopez/**SimpleActors<https://github.com/ajlopez/SimpleActors>
>>
>> Angel "Java" Lopez
>> @ajlopez
>>
>>
>>
>> On Wed, Sep 25, 2013 at 10:25 AM, Matthew Browne <[email protected]>wrote:
>>
>>>  On 9/25/13 9:06 AM, Alexey Petrushin wrote:
>>>
>>> I'd personally prefer actor to reactor because it's simpler to use. For
>>> me working with isolated independent things is much simpler than with state
>>> machine and recursions.
>>>
>>> I agree. Events can help prevent callback pyramids to some degree, but
>>> with actors you can write code just as if it were synchronous; it's just
>>> simpler.
>>>
>>> In terms of the API for a new actors library for node.js, I was thinking
>>> of something similar to this Ruby library:
>>> http://celluloid.io/
>>>
>>> That library uses threads, but the same author previously wrote a
>>> library implemented using fibers, which could serve as a model for node.js
>>> (since obviously we don't have or want threads):
>>> https://github.com/tarcieri/**revactor<https://github.com/tarcieri/revactor>
>>>
>>>  On 9/24/13 1:56 PM, Norman Paniagua wrote:
>>>
>>> Thanks for the resources…
>>>
>>>  I read somewhere in this groups that c extensions may slow down
>>> nodejs, and fibers just is written in c++, don't know yet how it may affect
>>> the performance of the app that uses it.
>>>
>>>  Thanks for mentioning this. There's at least one significant framework
>>> already using fibers (Meteor) and I haven't heard anything about it being
>>> slow, but we should keep this in mind because it would be ideal if the
>>> actor library were just as fast as native node.js.
>>>
>>>
>>> On Wednesday, July 24, 2013 9:17:24 AM UTC+4, Matthew Browne wrote:
>>>>
>>>> Hi,
>>>> I realize this thread is a little old, but I just came across it I
>>>> don't understand your reasoning...yes, Reactor (event loop-based approach)
>>>> is a different approach than Actors, but Actors have been implemented
>>>> successfully on top of event loops in some other languages like Python and
>>>> have achieved very good concurrent performance (from what I can gather
>>>> anyway).
>>>>
>>>> The main drawback is that you no longer have parallelism across
>>>> multiple cores, but in node.js we've already accepted that and are willing
>>>> to settle for separate OS processes instead.
>>>>
>>>> The only real disadvantage I can think of is that the node.js API is
>>>> designed to be used with callbacks, but for one's own application code
>>>> (especially the parts that are straight JS that don't use the node API as
>>>> much) it seems like an actors library like drama
>>>> <https://github.com/stagas/drama>is a great approach to concurrency
>>>> (and asynchronous OOP).
>>>>
>>>>
>>>> On Monday, June 18, 2012 11:50:41 AM UTC-4, Alexey Petrushin wrote:
>>>>>
>>>>> I'm not sure that Reactor (Node.js) should be used with Actors. It
>>>>> seems that it's a different approaches for solving the same problem -
>>>>> concurrency.
>>>>>
>>>>>  If JS would have ability to spawn tons of cheap processes - then we
>>>>> just don't need such limitation as Node.js async API.
>>>>>
>>>>>  So, it seems it's not just a question of some sort of lib for
>>>>> node.js - but more like a completely different API on top of Node.js (or
>>>>> instead of Node.js).
>>>>>
>>>>   --
>>> --
>>> Job Board: http://jobs.nodejs.org/
>>> Posting guidelines: https://github.com/joyent/**node/wiki/Mailing-List-*
>>> *Posting-Guidelines<https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines>
>>> You received this message because you are subscribed to the Google
>>> Groups "nodejs" group.
>>> To post to this group, send email to [email protected]
>>>
>>> To unsubscribe from this group, send email to
>>> nodejs+un...@**googlegroups.com
>>>
>>> For more options, visit this group at
>>> http://groups.google.com/**group/nodejs?hl=en?hl=en<http://groups.google.com/group/nodejs?hl=en?hl=en>
>>>
>>> ---
>>> You received this message because you are subscribed to a topic in the
>>> Google Groups "nodejs" group.
>>> To unsubscribe from this topic, visit https://groups.google.com/d/**
>>> topic/nodejs/iHSkdmGaRnk/**unsubscribe<https://groups.google.com/d/topic/nodejs/iHSkdmGaRnk/unsubscribe>
>>> .
>>> To unsubscribe from this group and all its topics, send an email to
>>> nodejs+un...@**googlegroups.com.
>>>
>>> For more options, visit 
>>> https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out>
>>> .
>>>
>>>
>>>  --
>>> --
>>> Job Board: http://jobs.nodejs.org/
>>> Posting guidelines: https://github.com/joyent/**node/wiki/Mailing-List-*
>>> *Posting-Guidelines<https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines>
>>> You received this message because you are subscribed to the Google
>>> Groups "nodejs" group.
>>> To post to this group, send email to [email protected]
>>>
>>> To unsubscribe from this group, send email to
>>> nodejs+un...@**googlegroups.com
>>>
>>> For more options, visit this group at
>>> http://groups.google.com/**group/nodejs?hl=en?hl=en<http://groups.google.com/group/nodejs?hl=en?hl=en>
>>>
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "nodejs" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to nodejs+un...@**googlegroups.com.
>>>
>>> For more options, visit 
>>> https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out>
>>> .
>>>
>>
>>  --
> --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en
>
> ---
> You received this message because you are subscribed to the Google Groups
> "nodejs" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/groups/opt_out.
>

-- 
-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to