Welcome! Log In Create A New Profile

Advanced

Proposal: new caching backend for nginx

Aliaksandr Valialkin
January 22, 2013 11:16AM
Hi all,

I'm the author of ybc - fast in-process key-value caching library -
https://github.com/valyala/ybc . This library has the following features,
which may be essential to nginx:
- compact source code written in C;
- optimized for speed. Avoids using syscalls, dynamic memory allocations
and memory copying in hot paths;
- has no external dependencies;
- cross-platform design - all platform-specific code is located in one
place - https://github.com/valyala/ybc/tree/master/platform . Currently
only linux is supported, but other platforms can be easily added by
implementing the corresponding platform-specific functions;
- designed for efficient caching of millions big objects on both SSDs and
HDDs. Easily deals with huge caches exceeding available RAM by multiple
orders of magnitude.
- persists cached objects across application restarts.
- provides functionality similar to proxy_cache_lock and
proxy_cache_use_stale from
http://nginx.org/en/docs/http/ngx_http_proxy_module.html out of the box.
- unlike nginx's file-based cache, is free of additional "cache manager"
tasks.
- unlike nginx's file-based cache, never exceeds maximum cache size set at
startup.
- unlike nginx's file-based cache, stores all cached data in two files -
one file is used for index, while the other file is used for cached data.
These files aren't vulnerable to fragmentation, since their sizes never
change after the application start.
Other ybc features can be found at
https://github.com/valyala/ybc/blob/master/README .

ybc API is located at https://github.com/valyala/ybc/blob/master/ybc.h .

It would be great if somebody familiar with nginx internals, who is
interested in faster and cleaner caching backend for nginx could help me
substituting file-based backend with ybc.

--
Best Regards,

Aliaksandr
_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

Proposal: new caching backend for nginx

Aliaksandr Valialkin 1442 January 22, 2013 11:16AM

Re: Proposal: new caching backend for nginx

Maxim Dounin 878 January 22, 2013 01:18PM

Re: Proposal: new caching backend for nginx

Brian Akins 844 January 23, 2013 09:44AM

Re: Proposal: new caching backend for nginx

Maxim Dounin 727 January 23, 2013 10:16AM

Re: Proposal: new caching backend for nginx

Igor Sysoev 1029 January 23, 2013 03:02AM

Re: Proposal: new caching backend for nginx

Aliaksandr Valialkin 958 January 23, 2013 12:28PM

Re: Proposal: new caching backend for nginx

Maxim Dounin 735 January 23, 2013 01:20PM

Re: Proposal: new caching backend for nginx

nginxorg 1347 January 23, 2013 02:34PM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 228
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready