Mercurial > hg > nginx
diff src/http/ngx_http_cache.h @ 195:8dee38ea9117
nginx-0.0.1-2003-11-25-23:44:56 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 25 Nov 2003 20:44:56 +0000 |
parents | 02a715e85df1 |
children | 0b81c7a0b133 |
line wrap: on
line diff
--- a/src/http/ngx_http_cache.h Fri Nov 21 06:30:49 2003 +0000 +++ b/src/http/ngx_http_cache.h Tue Nov 25 20:44:56 2003 +0000 @@ -18,32 +18,52 @@ typedef struct { - u_int32_t crc; + uint32_t crc; ngx_str_t key; ngx_fd_t fd; off_t size; void *data; /* mmap, memory */ time_t accessed; time_t last_modified; - time_t updated; /* no needed with kqueue */ + time_t updated; /* no needed with kqueue */ int refs; int flags; } ngx_http_cache_entry_t; +#define NGX_HTTP_CACHE_HASH 1021 +#define NGX_HTTP_CACHE_NELTS 4 + +typedef struct { + ngx_http_cache_entry_t **cache; + size_t hash; + size_t nelts; + time_t life_time; + time_t check_time; + ngx_pool_t *pool; +} ngx_http_cache_hash_t; + typedef struct { - ngx_file_t file; - ngx_str_t key; - u_char md5[16]; - ngx_path_t *path; - ngx_hunk_t *buf; - time_t expires; - time_t last_modified; - time_t date; - off_t length; - ssize_t header_size; - size_t file_start; - ngx_log_t *log; + ngx_http_cache_hash_t *hash; +} ngx_http_cache_conf_t; + + +typedef struct { + ngx_http_cache_hash_t *hash; + ngx_http_cache_entry_t *cache; + ngx_file_t file; + ngx_str_t key; + uint32_t crc; + u_char md5[16]; + ngx_path_t *path; + ngx_hunk_t *buf; + time_t expires; + time_t last_modified; + time_t date; + off_t length; + ssize_t header_size; + size_t file_start; + ngx_log_t *log; } ngx_http_cache_ctx_t;