firefly-redis 是 Firefly Python 的 Redis 公共包,发布包名为 firefly-redis,导入根为
firefly.redis。
首期能力参考 Go 版本 Redis 公共包,但实现上优先贴合 Python 与 redis-py 的使用方式:
- Redis 地址、DB、用户名、密码配置模型。
- TLS 字段对齐
firefly.utils.TLSConfig,字段完整时启用rediss/ redis-py TLS 参数。 - 连接池大小、超时和健康检查参数映射。
- redis-py
redis.asyncio.Redis异步客户端创建工厂。 - 同步
redis.Redis兼容工厂,便于旧入口和测试场景迁移。 - 可选
PING连通性校验。
uv sync
uv run pytest
uv run ruff check src tests
uv run mypy
uv build --no-sourcesfrom firefly.redis import RedisConfig, create_async_redis_client
client = await create_async_redis_client(
RedisConfig(address="127.0.0.1:6379", database="0"),
ping=True,
)如果只需要构造连接参数而不打开网络连接,可以使用:
from firefly.redis import RedisConfig, build_connection_kwargs, build_redis_url
config = RedisConfig(address="127.0.0.1:6379", database="0")
url = build_redis_url(config)
kwargs = build_connection_kwargs(config)- 本包只提供 Redis 连接配置、参数构造和客户端工厂,不封装业务缓存命令。
- 缓存 key 规范、序列化策略、分布式锁、限流等能力应由上层业务包或后续独立模块承载。
firefly使用隐式 namespace package,包内不提供src/firefly/__init__.py。