Menu

Tree [r1906] / java-reactor / trunk /
 History

HTTPS access


File Date Author Commit
 src 2008-10-09 yangzhang [r1011] got udp tests working again by adding receive-h...
 README 2008-10-07 yangzhang [r997] making space/preparing for introduction of stre...
 build.xml 2008-03-03 yangzhang [r570] added ant build file
 publish.bash 2008-03-03 yangzhang [r573] new publisher

Read Me

[documentation](doc)

Overview
--------

This is a completely minimal implementation of a select-based reactor framework
for event-based asynchronous IO programming.  The reactor core supports
scheduling of tasks (a la Twisted, asio, etc.).  This was written for the
constrained-resource environment that is PlanetLab, mostly out of performance
paranoia.  It also helped us remove the need for a separate thread for the
scheduled executor tasks - these are run in-line (using timeouts to select).

Aside from its simplicity, efficiency, and support for scheduled tasks, it also
has no dependencies except for Java 6.  Both TCP and UDP are supported.

Setup
-----

Requirements:

- [Java] 6

[Java]: http://java.sun.com/

Suggested:

- [SimpleBuild]

[SimpleBuild]: http://assorted.sf.net/simple-build/

Usage
-----

For an example of how to use the reactor, please refer to `ReactorTest.java`.

Related Work
------------

- [Apache Mina]: we originally used this for [SRON], but it is not as
  lightweight, lacked select-based time-scheduling, and also requires at least
  [slf4j].

- [SRON]: The project from which Java Reactor was born.

[Apache Mina]: http://mina.apache.org/
[SRON]: https://moo.cmcl.cs.cmu.edu/trac/scaleron
[slf4j]: http://www.slf4j.org/

Changes
-------

version 0.2, 2008-10-08

- added TCP support

version 0.1, 2008-03-03

- initial release; UDP only

Links
-----

- [Web site](http://assorted.sf.net/java-reactor/)
- [ROX NIO tutorial](http://rox-xmlrpc.sourceforge.net/niotut/)
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.