Erlang使用redis
时间: 2023-10-24 16:28:16 浏览: 100
Erlang中使用 Redis 需要使用 Redis 客户端库,在 Erlang 中最常用的 Redis 客户端库是 eredis。以下是使用 eredis 连接 Redis 并执行一些基本操作的示例代码:
```erlang
% 加载 eredis 库
application:start(eredis).
% 连接 Redis
{ok, Conn} = eredis:start_link().
% 执行 Redis 命令
{ok, <<"OK">>} = eredis:q(Conn, ["SET", "mykey", "myvalue"]).
{ok, <<"myvalue">>} = eredis:q(Conn, ["GET", "mykey"]).
```
上面的代码先加载 eredis 库,然后使用 `eredis:start_link()` 函数连接 Redis,连接成功后得到一个 Redis 连接对象 `Conn`。接着使用 `eredis:q()` 函数执行 Redis 命令,比如使用 `["SET", "mykey", "myvalue"]` 设置一个键值对,使用 `["GET", "mykey"]` 获取这个键对应的值。在 eredis 中,所有的 Redis 命令都使用列表形式表示,第一个元素是命令名,后面的元素是命令参数。
除了 eredis,还有一些其他的 Erlang Redis 客户端库,比如 redix、redis-erl 等等,具体选择哪个库可以根据自己的需求和喜好进行选择。
相关问题
erlang使用redis需要包含的头文件
在使用Erlang访问Redis时,需要使用eredis库。在使用eredis库时,需要包含以下头文件:
```
-include_lib("eredis/include/eredis.hrl").
-include_lib("eredis/include/eredis_pool.hrl").
```
其中,`eredis.hrl`包含Erlang的Redis客户端API,`eredis_pool.hrl`提供了连接池管理的API。
windows erlang 如何链接redis数据库
Windows上使用Erlang连接Redis数据库通常需要安装Erlang OTP(OTP是Erlang平台工具包),然后配置合适的Erlang Redis客户端模块,如`eredis`或`riak-advanced-client`。
以下是简要步骤:
1. **安装Erlang OTP**:
- 访问Erlang官网(https://www.erlang.org/)下载适用于Windows的版本,并按照说明安装。
- 安装后,确认 Erlang 可以通过命令行(`erl`)正常启动。
2. **安装Redis客户端模块**:
- 对于`eredis`: 可以从Hex Package Manager (https://hex.pm)安装,通过命令行运行 `rebar3 install {pkg, "eredis"}` 或者手动从GitHub克隆并构建。
- 对于`riak-advanced-client`: 需要在Riak集群环境下使用,可以从Riak官方文档找到相关信息。
3. **配置环境变量**:
- 将Erlang的bin目录添加到系统的PATH环境变量中,以便于命令行操作。
4. **编写Erlang代码**:
使用Erlang的`couchdb`或相应的客户端库,创建一个连接到Redis实例的连接。例如,使用`eredis`库的示例代码可能是这样的:
```erlang
-module(my_redis).
-import(eredis).
start_link() ->
% 连接Redis服务器
eredis:start_link([{host, "localhost"}, {port, 6379}]).
read_key(Key) ->
conn = start_link(),
case catch eredis:get(conn, Key) of
{'EXIT', Reason} -> io:fwrite("Error: ~p~n", [Reason]);
Value -> io:fwrite("Value for key ~s: ~p~n", [Key, Value])
end,
% 关闭连接
eredis:endpoints(conn).
```
5. **测试连接**:
在命令行中运行Erlang shell (`erl`),加载你的模块,然后尝试调用链接和读取Redis数据的功能。
阅读全文