完整代码怎么存储redis_conn,怎么获取
时间: 2024-03-17 12:41:50 浏览: 101
使用golang写一个redis-cli的方法示例
以下是一个示例代码,演示了如何在 Erlang 中存储 Redis 连接对象并在不同的函数中使用:
```
-module(redis_demo).
-export([start/0]).
-include_lib("eredis/include/eredis.hrl").
start() ->
%% 连接 Redis
{ok, RedisConn} = eredis:start_link("127.0.0.1", 6379),
%% 存储 Redis 连接对象到 process 字典中
put(redis_conn, RedisConn),
%% 在不同的函数中获取 Redis 连接对象并使用
set_key("mykey", "myvalue"),
Value = get_key("mykey"),
io:format("Value of key mykey is ~p~n", [Value]),
%% 关闭 Redis 连接
eredis:close(RedisConn).
set_key(Key, Value) ->
%% 获取 Redis 连接对象
RedisConn = get(redis_conn),
%% 存储键值对
{ok, _} = eredis:q(RedisConn, ["SET", Key, Value]).
get_key(Key) ->
%% 获取 Redis 连接对象
RedisConn = get(redis_conn),
%% 获取键值对
{ok, [Value]} = eredis:q(RedisConn, ["GET", Key]),
Value.
```
在上面的代码中,我们首先使用 `eredis:start_link` 函数连接 Redis,并将连接对象存储到 process 字典中。在 `set_key/2` 和 `get_key/1` 函数中,我们通过 `get(redis_conn)` 获取存储在 process 字典中的 Redis 连接对象,然后使用 `eredis` 库提供的函数进行键值对的存储和获取。
需要注意的是,在实际的应用中,可能需要对存储 Redis 连接对象的过程进行封装,以便在不同的模块之间共享 Redis 连接对象。同时,需要注意在使用完 Redis 连接对象之后,及时关闭连接,以免出现连接泄漏等问题。
阅读全文