This week was spent planning and implementing the features needed in
monkey to support multiple protocols.
I want these changes to be directly useful for monkey so I'm spending
time testing to make sure that they do not break anything, 

In addition to planning features, I've also continuously testing and
improving upon the next plugin api.
Handling events is planned and will be added to the api blog entry when
it's implemented.

# Connection handlers

The first of these changes is the addition of per connection event
handlers, allowing very flexible and isolated behavior that depends on
how the connection was set up.
This is first and foremost a requirement for easy handling of multiple
protocols, but also adds additional safety by preventing plugin backend
connections from affecting client connections and vice versa.

This is implemented and tested.

# Location plugin chains

This change introduces a way to define which plugins should be tried and
in what order for path prefixes.
It isn't required for future protocols that this should work, but the
new plugin api I'm developing is easier to integrate with the rest of
monkey using this feature.

This changes is planned and half implemented.

# HTTP refactoring

In an effort to simplify working with two plugin api's I am spending
some time refactoring mk_http.c for easier reuse.
This involves changing parameters, merging functions and splitting
functions.

One nice benefit is that I get an extra 10% performance running
keep-alive benchmarks after merging some functionality from
mk_http_pending_requests() into the parser.

This change will be ongoing work until the new plugin api is working.

# Multiple listening sockets

I've wanted to add support for multiple listening sockets to for a very
long time, and I've now started adding this feature.
It will allow different protocols on different ports thanks to the
introduction of connection handlers.

This change is planned.

[Github](https://github.com/ksonny/)
[Blog](https://lotrax.org/gsoc/)
[Perm](https://lotrax.org/gsoc/gsoc-2013-status-future-protocols-week-4.html)

-- 
Sonny Karlsson
_______________________________________________
Monkey mailing list
[email protected]
http://lists.monkey-project.com/listinfo/monkey

Reply via email to