OpenResty之共享内存的使用,openresty共享内存


1、定义共享内存100MB,nginx.conf配置文件http域增加如下指令代码:

 http {
     lua_shared_dict share_mem_cache 100m;
     ...
 }

2、使用共享内存:

    location /set {
        content_by_lua_block {
        local share_mem_cache  = ngx.shared.share_mem_cache
        share_mem_cache:set("name", "xiaoming") 
        ngx.say("STORED")
        }   
    }   

    location /get {
        content_by_lua_block {
        local share_mem_cache  = ngx.shared.share_mem_cache
        ngx.say(share_mem_cache:get("name"))
        }   
    } 

    location /capacity {
        content_by_lua_block {
            require "resty.core.shdict"
            local share_mem_cache  = ngx.shared.share_mem_cache
            ngx.say(share_mem_cache:capacity())
        }   
    }

3、另外,ngx_lua还提供很多相对安全的api接口操作共享内存。

  • get_stale()
  • safe_set()
  • safe_add()

相关内容

    暂无相关文章