简介:本文详细介绍帆软报表工具中Redis的配置修改与部署优化方法,涵盖参数调整、集群配置及故障排查。
帆软报表工具(FineReport/FineBI)通过Redis实现分布式会话管理、临时数据缓存及集群节点通信。Redis作为内存数据库,其配置直接影响帆软系统的性能与稳定性。典型应用场景包括:
帆软默认使用fr-config.xml(FineReport)或finebi.properties(FineBI)管理Redis连接。关键配置项包括:
<!-- FineReport示例 --><property name="redis.host" value="127.0.0.1"/><property name="redis.port" value="6379"/><property name="redis.password" value="yourpassword"/><property name="redis.database" value="0"/><property name="redis.timeout" value="3000"/>
# 最大连接数(根据服务器内存调整)redis.maxTotal=100# 最大空闲连接数redis.maxIdle=20# 最小空闲连接数redis.minIdle=5# 连接空闲超时时间(毫秒)redis.minEvictableIdleTimeMillis=60000
redis.save=900 1,300 10,60 10000
redis.appendonly=yesredis.appendfsync=everysec
当部署Redis Cluster时,需修改为:
redis.cluster.enabled=trueredis.cluster.nodes=192.168.1.1:7000,192.168.1.2:7001redis.cluster.maxRedirects=3
| 配置项 | 推荐规格 |
|---|---|
| 内存 | 至少为数据集大小的1.5倍 |
| CPU核心数 | 4核以上(读写分离场景可降低要求) |
| 网络带宽 | 千兆网卡(集群部署建议万兆) |
graph LRA[帆软应用服务器] --> B[Redis单机]
graph LRA[帆软应用服务器] --> B[Redis Master]B --> C[Redis Slave1]B --> D[Redis Slave2]
appendonly yesslaveof <masterip> <masterport>
graph LRA[帆软集群节点1] --> B[Redis Cluster]C[帆软集群节点2] --> BD[帆软集群节点3] --> BB --> E[Redis Node1]B --> F[Redis Node2]B --> G[Redis Node3]
iptables -L -n | grep 6379
redis-cli -h <host> -p <port> -a <password> ping
INFO命令获取统计信息:
redis-cli info stats | grep -E "instantaneous_ops_per_sec|total_commands_processed"
# 在redis.conf中配置slowlog-log-slower-than 10000slowlog-max-len 128
maxmemory 4gb
maxmemory-policy allkeys-lru
redis.compression=snappy
redis.serializer=org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer
redis.maxTotal=200redis.maxIdle=50
replica-serve-stale-data noreplica-read-only yes
requirepass StrongPassword@123
# 在redis.conf中配置bind 192.168.1.100 # 限制访问IP
| 帆软版本 | 推荐Redis版本 | 兼容性说明 |
|---|---|---|
| FineReport 10.0 | 5.0-6.2 | 支持集群模式与模块化命令 |
| FineBI 5.1 | 4.0-5.0 | 需关闭Redis新版本特有功能 |
| FineReport 11.0 | 6.0-7.0 | 需配置redis.legacy=true |
注意事项:
通过以上系统化的配置优化与部署实践,可显著提升帆软报表系统在Redis集成场景下的性能与可靠性。实际实施时应结合具体业务场景进行参数调优,并建立完善的监控告警机制。