It's actually very much not possible.

Erlang nodes need to listen on one port for the EPMD, and then another
for HTTP (and maybe more for other coordination). Heroku only lets you
listen on a single node per process, and you can't guarantee scaled
processes occur on the same dyno or even machine to another, so you
can't explicitly run epmd separately.

Yes, distribution via other means seems sensible.

As for the routing mesh issues, they seem to have support for
websockets etc in the proxy, so presumably it is possible somehow to
route TCP messages through.

Sam

On Wed, Jun 13, 2012 at 9:51 PM, Jonathan Baudanza <[email protected]> wrote:
> Getting dynos to communicate might be tricky.  When you make an HTTP request
> to heroku, the request first hits the heroku "routing mesh".  The mesh is
> responsible for deciding which dyno will service the request. I don't know
> of any way to explicitly send a request to a specific dyno.
>
> Dynos are also expected to use no more than 512MB of memory.
>
> This article gives more information on how dynos operate and their
> restrictions.
> https://devcenter.heroku.com/articles/dynos
>
> Despite all of this, it might be fun to try anyway just to see the results!
> Let us know how it goes.
>
> On Wed, Jun 13, 2012 at 1:01 PM, Jon Brisbin <[email protected]> wrote:
>>
>> So long as the dynos can communicate with one another and cooperate via
>> node communication, the stateless nature of the application doesn't really
>> matter. I don't need to persist anything once a dyno is shut down.
>>
>> The thing that makes me curious is whether the things riak_core (not
>> riak_kv) depends on (handoff particularly) could be shoehorned into this
>> environment using the stock tools. I suspect not but wanted to scratch an
>> intellectual itch. :)
>>
>> Thanks!
>>
>> Jon Brisbin
>> http://about.me/jbrisbin
>>
>> On Jun 13, 2012, at 2:44 PM, Jonathan Baudanza wrote:
>>
>> Hi Jeff,
>>
>> Dynos on Heroku don't have access to any permanent disk storage.  They can
>> read and write to /tmp, but that is not guaranteed to stick around.
>>
>> Dynos are also restricted to only accept HTTP connections.  This would
>> rule out any ProtocolBuffer connections.
>>
>>>
>>> Curious if anyone is able to use clustered nodes on Heroku using the
>>> Erlang buildpack [1]? Seems like it should at least be theoretically
>>> possible to launch new dynos that become part of your node cluster. How
>>> reliable/easy/hard is node communication on EC2?
>>> [1] - https://github.com/heroku/heroku-buildpack-erlang
>>
>> _______________________________________________
>> riak-users mailing list
>> [email protected]
>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>>
>>
>>
>> _______________________________________________
>> riak-users mailing list
>> [email protected]
>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>>
>
>
>
> _______________________________________________
> riak-users mailing list
> [email protected]
> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>



-- 
Samuel Elliott
[email protected]
http://lenary.co.uk/
+44 (0)7891 993 664

_______________________________________________
riak-users mailing list
[email protected]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to