Upcoming versions, deprecations, status of the mapper rewrite

8 views
Skip to first unread message

Mathias Meyer

unread,
Oct 25, 2010, 11:12:44 AM10/25/10
to nanite
Hi all,

just an update on what's happening in Nanite development.

I'm going to package a new minor release for Nanite this week. It's
main purpose is to establish compatibility with newer versions of
RabbitMQ. That will be release 0.4.2 and probably the last in the 0.4
series. I'll be keeping a maintenance branch [1] around, just in case.
Furthermore, this next release will deprecate certain features that
are subject to removal in the 0.5 series. That includes sending
requests from within the mapper and file streaming. Note that sending
requests is still possible in the same way, but from an agent. If you
had say, a scenario where you were sending requests from a mapper
running within your web server process, you should switch that to
having an service-less agent running instead.

That scenario is a lot more lightweight, and I'd highly recommend
against running a mapper inside your web application process anyway.
The code that handles these requests and any intermediate messages is
too stateful and makes a clean separation of the mapper tier next to
impossible and the process in general very unreliable. If you need to
send requests that handle replies, that will still be possible as I
said, but only from within an agent. The mapper will only do what it's
supposed to do: shove data around from one agent to agent and keep
track of the cluster. I'm still contemplating how to properly
implement this, but the general idea is still to remove all state from
the mapper, as it shouldn't have any that's not recoverable, and most
state should instead just be stored in the messages if possible.

For the next release series, which is 0.5 (work ongoing in the
mapper_rework branch [2]) I'm going to remove these features. If you
heavily rely on them, the maintenance branch will still be around, but
that will obviously not receive much love in terms of new features.
I'm currently testing all the rework that's been going into the
mapper_rework branch, and it's looking pretty good so far. More
technical details to follow soon.

That's the general idea right now, and the plan too. Let me know if
you have any questions or comments.

Cheers, Mathias

[1] http://github.com/ezmobius/nanite/tree/0-4-stable
[2] http://github.com/ezmobius/nanite/tree/mapper_rework
--
http://scalarium.com | http://paperplanes.de
http://twitter.com/roidrage

Reply all
Reply to author
Forward
0 new messages