当前位置: 首页 > news >正文

taobaocom淘宝网页版seo推广网络

taobaocom淘宝网页版,seo推广网络,做h5小游戏的网站有哪些,网站做视频的软件有哪些文章目录 常见报错1. 配置方式使用错误2. 版本差异报错3. 配置文件中配置了密码或者配置错误4. 字符集和序列化方式配置问题5. Redisson的序列化问题6. 连接池问题:7. Redisson的高可用性问题:8. Redisson的并发问题9. Redisson的性能问题 2. 参考文档 常…

文章目录

  • 常见报错
    • 1. 配置方式使用错误
    • 2. 版本差异报错
    • 3. 配置文件中配置了密码或者配置错误
    • 4. 字符集和序列化方式配置问题
    • 5. Redisson的序列化问题
    • 6. 连接池问题:
    • 7. Redisson的高可用性问题:
    • 8. Redisson的并发问题
    • 9. Redisson的性能问题
  • 2. 参考文档

在这里插入图片描述

常见报错

1. 配置方式使用错误

Redisson 提供两种配置方式
1. 第一种使用配置json文件 在application.properties 中使用 spring.redis.redisson.file=classpath:redisson.json
2. 第二种spring.redis.redisson.config=里使用yaml格式如下

spring:redis:redisson: config: |clusterServersConfig:idleConnectionTimeout: 10000connectTimeout: 10000timeout: 3000retryAttempts: 3retryInterval: 1500failedSlaveReconnectionInterval: 3000failedSlaveCheckInterval: 60000password: nullsubscriptionsPerConnection: 5clientName: nullloadBalancer: !<org.redisson.connection.balancer.RoundRobinLoadBalancer> {}subscriptionConnectionMinimumIdleSize: 1subscriptionConnectionPoolSize: 50slaveConnectionMinimumIdleSize: 24slaveConnectionPoolSize: 64masterConnectionMinimumIdleSize: 24masterConnectionPoolSize: 64readMode: "SLAVE"subscriptionMode: "SLAVE"nodeAddresses:- "redis://127.0.0.1:7004"- "redis://127.0.0.1:7001"- "redis://127.0.0.1:7000"scanInterval: 1000pingConnectionInterval: 0keepAlive: falsetcpNoDelay: falsethreads: 16nettyThreads: 32codec: !<org.redisson.codec.Kryo5Codec> {}transportMode: "NIO"

Caused by: com.fasterxml.jackson.core.JsonParseException: Unrecognized token ‘singleServerConfig’: was expecting (JSON String, Number, Array, Object or token ‘null’, ‘true’ or ‘false’)

2. 版本差异报错

导致有的配置的变量名已经变更,使用老的配置项名称已经无法映射的配置对象上,如pingTimeoutuseLinuxNativeEpoll
com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field “pingTimeout”

Caused by: org.redisson.client.RedisException: ERR Client sent AUTH, but no password is set. channel: [id: 0xadf834eb, L:/20.0.2.11:65046 - R:epaas.e6gpshk.com/172.20.6.37:6379] command: (AUTH), params: (password masked)

3. 配置文件中配置了密码或者配置错误

如果redis服务器没有配置密码,则配置文件里面不能出现密码配置
如果服务端配置了密码,则配置文件中需要配置密码,不然错误信息如下
Caused by: org.redisson.client.RedisException: ERR Client sent AUTH, but no password is set. channel: [id: 0xadf834eb, L:/20.0.2.11:65046 - R:epaas.e6gpshk.com/172.20.6.37:6379] command: (AUTH), params: (password masked)

4. 字符集和序列化方式配置问题

如果使用jackson导致序列化字符串后,字符串带两个双引号,导致获取的时候查出来为空。
解决方法配置字符串序列化
可以通过以下步骤进行配置:

  1. 创建Redisson客户端的配置对象:
Config config = new Config();
  1. 创建StringCodec对象,并设置其序列化方式:
StringCodec stringCodec = new StringCodec(Charset.forName("UTF-8"));
// 或者使用其他支持的编码方式,如ISO-8859-1
  1. 将StringCodec对象设置为Redisson的默认编码器:
config.setCodec(stringCodec);
  1. 创建Redisson客户端:
RedissonClient redissonClient = Redisson.create(config);

可以将Redisson的string类型数据的序列化方式配置为指定的编码方式。一般使用UTF-8编码方式,你也可以根据实际需求选择其他编码方式。

5. Redisson的序列化问题

  • 问题:使用默认的JDK序列化方式,在对象序列化和反序列化时可能会遇到兼容性问题。
  • 解决方案:可以使用其他序列化方案如FastJson或Jackson,通过设置自定义编码器来解决兼容性问题。

示例代码:

Config config = new Config();
config.setCodec(new JsonJacksonCodec()); // 使用Jackson序列化
RedissonClient redisson = Redisson.create(config);

6. 连接池问题:

  • 问题:连接池中的连接数不足,导致请求被阻塞。
  • 解决方案:增加连接池的最大连接数,或者调整连接池的配置参数,如最小空闲连接数和连接超时时间,以适应系统的并发需求。

示例配置:

Config config = new Config();
config.useSingleServer().setAddress("redis://127.0.0.1:6379").setConnectionPoolSize(100) // 设置连接池大小.setConnectionMinimumIdleSize(10) // 设置最小空闲连接数.setConnectTimeout(3000); // 设置连接超时时间
RedissonClient redisson = Redisson.create(config);

7. Redisson的高可用性问题:

  • 问题:当Redis主节点宕机时,应用程序无法连接到Redis数据库。
  • 解决方案:使用Redisson的哨兵模式或集群模式,配置多个Redis节点,当主节点宕机时自动切换到备用节点。

示例配置(哨兵模式):

Config config = new Config();
config.useSentinelServers().addSentinelAddress("redis://127.0.0.1:26379").addSentinelAddress("redis://127.0.0.1:26380").setMasterName("mymaster");
RedissonClient redisson = Redisson.create(config);

8. Redisson的并发问题

  • 问题:多个线程同时访问共享资源可能导致数据不一致或竞争条件。
  • 解决方案:使用Redisson的分布式锁来保证同一时间只有一个线程可以访问共享资源,或者使用原子操作来保证数据的原子性操作。

示例代码(分布式锁):

RLock lock = redisson.getLock("myLock");
lock.lock();
try {// 执行需要互斥的操作
} finally {lock.unlock();
}

9. Redisson的性能问题

  • 问题:系统并发量大时,Redisson的性能下降。
  • 解决方案:增加连接池的大小,使用异步操作来提高吞吐量,使用集群化部署和数据分片来提高并发性能。

示例配置(异步操作):

Config config = new Config();
config.useSingleServer().setAddress("redis://127.0.0.1:6379").setConnectionPoolSize(100).setNettyThreads(0).setThreads(0).setTransportMode(TransportMode.EPOLL).setUseLinuxNativeEpoll(true); // 使用异步操作提高性能
RedissonClient redisson = Redisson.create(config);

10 . Redisson的版本兼容问题:

  • 问题:使用不兼容的Redisson版本可能导致运行时错误。
  • 解决方案:在使用Redisson之前,确认Redisson的版本与Redis服务器的版本兼容,可以查阅Redisson的官方文档或咨询社区来获取相关信息。

示例代码(Maven依赖):

<dependency><groupId>org.redisson</groupId><artifactId>redisson</artifactId><version>3.15.2</version> <!-- 根据实际需求选择合适的版本 -->
</dependency>

2. 参考文档

参考文档

http://www.15wanjia.com/news/27480.html

相关文章:

  • 网站建设小组的运营模式韩国vs加纳分析比分
  • 小程序直播开发自动优化句子的软件
  • 企业网站建设的原则包括网站关键词优化排名软件系统
  • 做网站需要学习什么搜索引擎调词平台价格
  • 前端外包网站印度疫情最新消息
  • 零基础做网站如何创建网站
  • 成都电商网站建设北京网站优化排名推广
  • 网站日常维护内容网络营销可以做什么工作
  • 网站开发教学大纲1000个关键词
  • 网站建设遵循的原则成都竞价托管多少钱
  • 做外卖有哪些网站中国十大企业培训公司
  • 直播网站建设需要什么软件有哪些个人免费建站系统
  • 山东省建设执业资格注册管理中心网站网络广告营销策划方案
  • c 网站开发数据库谷歌海外广告投放推广
  • 沈阳做网站优化宁阳网站seo推广
  • 一个网站如何做外链游戏推广赚佣金的平台
  • 网站建设栏目标语口号线上营销渠道主要有哪些
  • 做跨境电商真的能赚钱吗关键词如何优化排名
  • 近期国内外重大新闻10条关键词优化教程
  • 网站公安备案流程图百度权重1
  • 初学seo网站推广需要怎么做佛山做网络优化的公司
  • 小程序链接网站自己做全媒体广告投放平台
  • 做网站贷款谷歌seo排名工具
  • 腾讯云 wordpress教程视频网站seo如何做好优化
  • 销售软件搜索引擎优化师
  • 怎么做网站计划优化网站关键词排名
  • 天津建设工程信息网里如何添加企业资质保定seo推广公司
  • 上海网页制作与网站设计哪家培训机构好
  • 濮阳做网站网络推广价格
  • 老网站做成适合手机端的网站怎么做seo优化工作怎么样