httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From MATSUMOTO Ryosuke <matsu1...@gmail.com>
Subject mod_mruby to provide an alternative to mod_lua
Date Sun, 20 Jan 2013 09:31:15 GMT
Hi, all

I'm Ryosuke MATSUMOTO, a Ph.D. student at Okabe Lab,  Network
Media Group Department of Intelligence Science and Technology
Graduate School of Informatics, Kyoto University in Japan.

My English is not very good, but I am studying at the moment to communicate
developers of the world.

I have been developing mod_mruby and ngx_mruby from Apr 2012.

mod_mruby is a web server extension mechanism using embeddable
scripting language mruby which has been attracting attention now.

mod_mruby abstract:
-----
As the increase of services using Web servers, the number of incidents
also is increasing rapidly. In order to solve those problems, it is necessary
to extend a functionality of a Web server software.

In case of using Apache, developers are required high coding skill of C
language and internal specifications of Apache in order to extend the
functionality of it.

The development of a web server extension requires some high skills, and
the maintainability is low since that extension need to compile a code.

Therefore, we propose mod_mruby that is a web server extension mechanism
using embeddable scripting language mruby which has been attracting
attention now. mod_mruby allows to extend the functionality of Apache
easily by implementing a mruby script. mod_mruby provides an interface
to hook and execute any mruby scripts in the various phases of processing
requests inside Apache. When hooking mruby scripts, mruby scripts can
process the data of processing requests inside Apache, taking advantage
of the characteristics of a embeddable scripting language for C language.

We have designed that mod_mruby run at high speed by sharing the data
of state transition and the extension library of mruby by multiple
mruby scripts
and using only different byte code each mruby script.

Many developers can implement a web server extension easily by mod_mruby
 in cooperation with coding style of mruby which is the same as object oriented
 programming ruby which is widely used by web developers.
-----

see slide share about mod_mruby architecture and performance compared with
mod_lua, mod_per, and a module written by C language.(Sorry in Japanese)

http://www.slideshare.net/matsumoto_r/mrubyweb

and mod_mruby receive some glowing notices bellow uri:

https://plus.google.com/114552443805676710515/posts/Jbh4S3Zsz2S
http://matt.aimonetti.net/posts/2012/04/25/getting-started-with-mruby/
and mod_mruby was referred form the keynote of mruby by Matz like
http://www.everytalk.tv/talks/657-Euroko-Keynote .

see mruby github:

https://github.com/mruby/mruby

mod_mruby allows to extend the functionality of Apache easily.
mod_mruby proveid an alternative to mod_lua.

see mod_mruby github:

https://github.com/matsumoto-r/mod_mruby

- example
-- proxy by mod_mruby
https://github.com/matsumoto-r/mod_mruby/tree/master/example/proxy

-- support redis and auth provide using mruby-redis
https://github.com/matsumoto-r/mod_mruby/blob/master/example/redis

-- support auth provide
https://github.com/matsumoto-r/mod_mruby/tree/master/example/auth

-- support limit control
https://github.com/matsumoto-r/mod_mruby/tree/master/example/limit_control

-- support rewrite
https://github.com/matsumoto-r/mod_mruby/tree/master/example/rewrite

-- support vhosts
https://github.com/matsumoto-r/mod_mruby/tree/master/example/vhost

-- support cgroup using mruby-cgroup
https://github.com/matsumoto-r/mod_mruby/tree/master/example/cgroup

-- support Raspberry Pi (hobby)
https://github.com/matsumoto-r/mod_mruby/tree/master/example/RaspberryPi

and so on..

I write some entry about mod_mruby in my blog (Sorry Japanese)
http://blog.matsumoto-r.jp/

So, How do you feel about mod_mruby? I would appreciate it if you could
give me your opinion.

I'll attend ApacheCon NA 2013 and I'm looking forward to seeing apache
developers!

Best regards,

-- 
MATSUMOTO Ryosuke < matsu1229 at gmail.com >
http://blog.matsumoto-r.jp/

Mime
View raw message