Welcome! Log In Create A New Profile

Advanced

nginx clojure module v0.2.0-Let MySQL JDBC Driver & Apache HttpClient Fly With Epoll/Kqueue on Nginx

April 26, 2014 12:11AM
nginx-clojure v0.2.0 includes new features:

(1) non-blocking socket based on coroutine and compatible with largely existing java library such as apache http client, mysql jdbc drivers
(2) asynchronous callback API of socket for some advanced usage
(3) run initialization clojure code when nginx worker starting
(4) provide a build-in tool to make setting of coroutine based socket easier
(5) support Linux 32bit x86 now
(6) publish [binary release compiled with lastes stable nginx 1.6.0](https://sourceforge.net/projects/nginx-clojure/files/) about Linux x64, Linux i586, Win32 & MacOS X.

If the http service should do some slow I/O operations such as access external http service, database, etc. nginx worker will be blocked by those operations and the new user request even static file request will be blocked. It really sucks´╝ü Before v0.2.0 the only choice is using thread pool but now we have three choice Now:
(1) Coroutine based Socket -- Let MySQL JDBC Driver & Apache HttpClient Fly With Epoll/Kqueue on Nginx
(a) Java Socket API Compatible and work well with largely existing java library such as apache http client, mysql jdbc drivers etc.
(b) non-blocking, cheap, fast and let one java main thread be able to handle thousands of connections.
(c) Your old code **_need not be changed_** and those plain and old java socket based code such as Apache Http Client, MySQL mysql jdbc drivers etc. will be on the fly with epoll/kqueue on Linux/BSD!
(d) You must do some steps to get the right class waving configuration file and set it in the nginx conf file.
(2) Asynchronous Socket
More details here: https://github.com/nginx-clojure/nginx-clojure
(3) Thread Pool
More details here : https://github.com/nginx-clojure/nginx-clojure

More details please visit nginx-clojure github site : https://github.com/nginx-clojure/nginx-clojure
SubjectAuthorPosted

nginx clojure module v0.2.0-Let MySQL JDBC Driver & Apache HttpClient Fly With Epoll/Kqueue on Nginx

xfeepApril 26, 2014 12:11AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 68
Record Number of Users: 7 on March 06, 2014
Record Number of Guests: 229 on August 01, 2014
Powered by nginx    Powered by FreeBSD    PHP Powered    Powered by Percona     ipv6 ready