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

wordpress商品分类seo官网优化详细方法

wordpress商品分类,seo官网优化详细方法,网站开发所需配置,app 网站平台建设实施方案整合redis可查看博文 springboot 整合redis_springboot整合redis csdn-CSDN博客 集群中操作注意事项 1 多键操作失败: 当使用multiGet等需要同时访问多个键的方法时,如果没有使用Hash Tags,这些键可能会被分配到不同的槽中。如果这些槽位于…

整合redis可查看博文
springboot 整合redis_springboot整合redis csdn-CSDN博客

集群中操作注意事项

1 多键操作失败
当使用multiGet等需要同时访问多个键的方法时,如果没有使用Hash Tags,这些键可能会被分配到不同的槽中。如果这些槽位于不同的Redis节点上,那么multiGet将无法正确返回所有键的值。

2 Pipeline操作受限
在Redis集群中,pipeline操作不能跨越多个槽进行。如果通过pipeline发送的命令涉及多个不同的槽(即键被分配到了不同的节点),则可能会导致部分命令失败或者整个pipeline操作效率降低。

3 事务支持有限
Redis集群不支持原生的MULTI/EXEC事务模型,特别是当事务涉及多个不同的槽时。因此,尝试在集群模式下使用事务来管理多个键的操作可能会失败。


代码示例
1 application.yml

spring:application:name: zha7zha8data:redis:cluster:nodes:- 192.168.1.100:6381- 192.168.1.100:6382- 192.168.1.100:6383- 192.168.1.100:6384- 192.168.1.100:6385- 192.168.1.100:6386

2 测试类,注意:{user}: 这样的标识,名称无所谓,只要都加了相同的标识,写了些反例和正例

import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.RedisCallback;
import org.springframework.data.redis.core.StringRedisTemplate;
import java.util.Arrays;
import java.util.List;@SpringBootTest(classes = Zha7zha8Application.class)
public class RedisClusterTest {@Autowiredprivate StringRedisTemplate redisTemplate;/*** 反例:未使用 Hash Tags,可能导致 Key 分配到不同的 Slot* 注意:由于 'user:dfss' 和 'user:00' 没有共同的 Hash Tag,*      这些键可能会被分配到不同的槽中,这在某些情况下(如 multiGet)可能会导致问题。*      例如,在Redis集群环境中,如果这些键位于不同的节点上,那么 multiGet 可能无法正确返回所有键的值。*/@Testvoid testWithoutHashTags() {// 定义两个没有使用 Hash Tags 的键String key1 = "user:dfss";String key2 = "user:11";// 设置键值对redisTemplate.opsForValue().set(key1, "Alice");redisTemplate.opsForValue().set(key2, "Bob");// 尝试从 Redis 中获取这两个值List<String> values = redisTemplate.opsForValue().multiGet(Arrays.asList(key1, key2));System.out.println("从 Redis 中获取的值 (无 Hash Tags): " + values);}/*** 正例:使用 Hash Tags 确保 'user:1' 和 'user:2' 在同一个 Slot*      使用相同的 Hash Tag '{user}' 确保了 'user:1' 和 'user:2' 被分配到同一个槽中,*      这样可以保证 multiGet 操作能够成功返回所有相关的键值。*/@Testvoid testWithHashTags() {// 定义两个使用相同 Hash Tags 的键String key1 = "{user}:1";String key2 = "{user}:2";// 设置键值对redisTemplate.opsForValue().set(key1, "Alice");redisTemplate.opsForValue().set(key2, "Bob");// 从 Redis 中获取这两个值List<String> values = redisTemplate.opsForValue().multiGet(Arrays.asList(key1, key2));System.out.println("从 Redis 中获取的值 (有 Hash Tags): " + values);}/*** Pipeline 操作反例* 注意:由于 'user:1' 和 'user:2' 没有共同的 Hash Tag,*      这些键可能会被分配到不同的槽中。虽然 pipeline 操作会尝试执行所有的命令,*      但如果涉及到跨多个节点的操作,可能会导致部分命令失败或效率降低。*/@Testvoid pipelineOperationWithoutHashTags() {// 定义两个没有使用 Hash Tags 的键String key1 = "user:1";String key2 = "user:2";// Pipeline 操作List<Object> results = redisTemplate.executePipelined((RedisCallback<String>) connection -> {connection.set(key1.getBytes(), "Alice".getBytes());connection.set(key2.getBytes(), "Bob".getBytes());return null;});System.out.println("Pipeline 操作的结果 (无 Hash Tags): " + results);}/*** Pipeline 操作正例* 使用相同的 Hash Tag '{user}' 确保了 'user:1' 和 'user:2' 被分配到同一个槽中,* 这使得 pipeline 操作能够在同一节点上顺利执行,提高了操作的一致性和效率。*/@Testvoid pipelineOperationWithHashTags() {// 定义两个使用相同 Hash Tags 的键String key1 = "{user}:1";String key2 = "{user}:2";// Pipeline 操作List<Object> results = redisTemplate.executePipelined((RedisCallback<String>) connection -> {connection.set(key1.getBytes(), "Alice".getBytes());connection.set(key2.getBytes(), "Bob".getBytes());return null;});System.out.println("Pipeline 操作的结果 (有 Hash Tags): " + results);}
}
http://www.dtcms.com/wzjs/248173.html

相关文章:

  • 企业建站wordpress山西seo
  • wetest网站开发企业网站seo排名
  • 重庆市建设网站公司seo的公司排名
  • 东莞网站优化方式百度明星搜索量排行榜
  • 专业网站建设市场北京网站优化实战
  • 做网站要钱嘛网络销售适合什么人做
  • 网站建设南通上海百度推广开户
  • 一锅汤资源分享网站建设大全关键词网络推广企业
  • 湖州网站建设制作最新网站推广方法
  • wordpress文章列表多图展示seo的含义是什么意思
  • 网站设计的研究方法有哪些私域流量营销
  • word做招聘网站网络推广外包公司哪家好
  • 湖州网站设计浙北数据网络营销的主要手段和策略
  • 汕头站扩建工程百度优化培训
  • 四川城乡和建设厅网站首页哪个公司的网站制作
  • 台州网站设计开发google adwords关键词工具
  • 长沙建设教育培训网沈阳关键词优化费用
  • 做网站建设公司哪家好新闻头条今日要闻国内新闻最新
  • 网络营销主要做哪些事情优化seo是什么
  • 怎样做网站jsp网络营销就业前景和薪水
  • 网络架构模拟设计seo哪个软件好
  • 网站预约挂号怎么做网站公司网站建设
  • 网站域名在哪里注册百度学术官网入口网页版
  • 网站开发是前端开发吗2023疫情最新消息今天
  • 网站开发英文论文资料广州排前三的seo公司
  • 长清区网站建设宣传百度指数是什么意思
  • 苏州园区做网站公司中山疫情最新消息
  • 汕头市政府官网迈步者seo
  • 营口网站建设单位网站的优化公司
  • 微型营销网站制作郑州众志seo