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

谁用fun域名做网站了微山网站建设

谁用fun域名做网站了,微山网站建设,如何用ai给网站做logo,哪些作弊网站使用multiGet方法 优点#xff1a;简单易用#xff0c;适用于获取少量键的场景。 缺点#xff1a;当获取的键数量较多时#xff0c;可能会因为网络延迟导致性能下降。此外#xff0c;如果某个键不存在#xff0c;对应的返回值会是null#xff0c;需要额外处理。 其他…使用multiGet方法 优点简单易用适用于获取少量键的场景。 缺点当获取的键数量较多时可能会因为网络延迟导致性能下降。此外如果某个键不存在对应的返回值会是null需要额外处理。 其他说明 multiGet方法适合处理的键的数量并没有一个严格的限制但是它的性能会随着键的数量增加而逐渐下降。这是因为multiGet方法会将所有的键在一次请求中发送到Redis服务器如果键的数量非常多可能会导致以下几个问题 网络延迟如果键的数量很多那么构建请求和接收响应所需的时间会增加这可能导致网络延迟成为性能瓶颈。响应体大小如果这些键对应的值都比较大那么一次multiGet请求的响应体可能会非常大这不仅会占用大量的网络带宽还可能对客户端和服务器的内存造成压力。Redis服务器压力如果大量的multiGet请求同时发送到Redis服务器尤其是在键的数量很多的情况下可能会对服务器造成较大的压力影响其他操作的性能。超时风险在高负载或者网络条件不佳的情况下大量的键可能会导致multiGet请求超时。 在实践中如果需要获取的键的数量在几十个到几百个通常使用multiGet方法不会出现性能问题。但是如果键的数量达到几千个或者更多可能就需要考虑其他策略比如 分批获取将大量的键分成多个批次每批次使用multiGet获取一部分键的值。使用scan命令对于需要匹配模式的大量键使用scan命令进行迭代获取。使用管道对于写入操作可以使用管道pipeline来减少网络往返次数提高效率。 总的来说是否使用multiGet方法以及适合处理多少键需要根据实际的应用场景和性能测试来决定。在不确定的情况下建议进行性能测试以确定在特定的环境下最佳的操作方式。 /*** 测试StringRedisTemplate.opsForValue().multiGet方法* * author 付聪* time 2024-10-11 15:36:26*/ Test public void testMultiGet() {ListString keys Arrays.asList(test-multiGet:key1, test-multiGet:key2, test-multiGet:key3);Integer i 1;for (String key : keys) {stringRedisTemplate.opsForValue().set(key, test-multiGet:value i, 1, TimeUnit.HOURS);}ListString values stringRedisTemplate.opsForValue().multiGet(keys);PrintUtil.println(StrUtil.format(values{}, values)); }使用executePipelined方法 优点可以显著减少网络往返次数提高批量操作的性能。适用于执行大量独立的写入或读取操作。 缺点编程模型相对复杂需要手动管理命令的发送和结果的收集。此外如果操作非常频繁可能会对Redis服务器造成压力。 /*** 测试StringRedisTemplate.executePipelined方法** author 付聪* time 2024-10-11 15:36:26*/ Test public void testExecutePipelined() {ListString keys Arrays.asList(test-executePipelined:key1, test-executePipelined:key2, test-executePipelined:key3);Integer i 1;for (String key : keys) {stringRedisTemplate.opsForValue().set(key, test-executePipelined:value i, 1, TimeUnit.HOURS);}/**** 该函数使用stringRedisTemplate执行管道操作批量获取多个键对应的值。具体步骤如下* 使用executePipelined方法执行管道操作。* 定义一个RedisCallback匿名类重写doInRedis方法。* RedisCallback#doInRedis是Spring Data Redis中的一个接口方法其作用是在Redis连接上执行自定义的Redis操作。具体来说* 参数RedisConnection connection表示当前的Redis连接。* 返回值可以是任意类型通常用于返回操作的结果。* 用途* 提供对底层Redis连接的直接访问允许执行更复杂的或自定义的Redis命令。* 可以在事务或管道中使用提高性能和效率。* 通过实现doInRedis方法开发者可以在Redis连接上执行任意的Redis命令从而实现更灵活的Redis操作。* 在doInRedis方法中遍历keys列表对每个键调用connection.get(key.getBytes())获取其值。* 返回null因为doInRedis方法的返回值不会影响最终结果。* executePipelined方法返回一个包含所有获取到的值的列表values。**/ListObject values stringRedisTemplate.executePipelined(new RedisCallbackString() {Overridepublic String doInRedis(RedisConnection connection) throws DataAccessException {for (String key : keys) {connection.get(key.getBytes());}// 返回null因为结果已经通过executePipelined返回。return null;}});PrintUtil.println(StrUtil.format(values{}, values)); }使用管道可以减少网络延迟提高Redis的操作效率。但是需要注意的是管道中的命令不能包含事务性的命令如MULTI和EXEC否则会抛出异常 。 使用scan方法 优点可以迭代地获取匹配特定模式的键适用于需要匹配大量键的场景且不会阻塞Redis服务器。 缺点scan命令返回的是游标需要多次迭代才能获取所有匹配的键且每次迭代返回的键数量有限可能需要多次迭代才能获取全部数据。此外scan命令在处理大量数据时效率较低。 /*** 测试scan方法** author 付聪* time 2024-10-18 10:09:38*/ Test public void testScan() {ListString keys Arrays.asList(test-scan:key1, test-scan:key2, test-scan:key3);Integer i 1;for (String key : keys) {stringRedisTemplate.opsForValue().set(key, test-scan:value i, 1, TimeUnit.HOURS);}/**** 该函数通过stringRedisTemplate执行一个Redis操作具体功能如下* (RedisCallbackSetString) 是一个类型转换操作作用如下* 将lambda表达式转换为RedisCallbackSetString类型。* RedisCallback是Spring Data Redis提供的一个接口用于执行自定义的Redis操作。* 通过这个转换可以将lambda表达式传递给stringRedisTemplate.execute方法从而在Redis连接上下文中执行自定义的逻辑。* 使用connection.scan方法扫描Redis中匹配模式test-scan:*的所有键。* count(100) 的作用是* 设置每次扫描操作返回的最大元素数量为100。* 这个参数可以控制每次scan操作返回的键的数量减少单次操作的数据量提高性能和响应速度。* 如果不设置count默认值通常为10。设置为100可以在一次扫描中返回更多的键减少总的扫描次数。* 将扫描结果中的每个键转换为字符串并添加到result集合中。* 最终返回包含所有匹配键的字符串集合。**/SetString values stringRedisTemplate.execute((RedisCallbackSetString) connection - {SetString result new HashSet();Cursorbyte[] cursor connection.scan(ScanOptions.scanOptions().match(test-scan:*).count(100).build());while (cursor.hasNext()) {result.add(new String(cursor.next()));}return result;});PrintUtil.println(StrUtil.format(values{}, values)); }使用scan方法可以避免keys命令可能带来的性能问题但是需要注意调节count的值避免产生和keys命令类似的效果可能会阻塞Redis 。 总结 每种方法都有其适用场景可以根据实际需求和性能测试结果选择最合适的方法。
http://www.hkea.cn/news/14515299/

相关文章:

  • 南京做网站哪家公司好运营和营销哪个更好
  • 企业网站建设的本质及特点做企业内部管理网站要多久
  • 一个ip做几个网站吗培训推广 seo
  • 帮别人做app网站门户的兼职单页网站模板
  • 做分析图地图网站网站上海备案查询
  • 打开网站很慢中国建设银行u盾下载假网站吗
  • 宁波网站建设熊掌号wordpress问卷插件
  • 淘宝哪些做网站关键词排名的有用吗北京互联网营销公司
  • 温州快速网站建设排名路飞和女帝做h的网站
  • php mysql开发的网站开发外贸网络营销公司
  • 无锡网站排名哪家好外贸网站有哪些推广
  • 网站建设公司营业执照图片网站通内容管理系统
  • 网站建设的基本术语html简单百度网页代码
  • 北京建站模板制作永久网站建设教程
  • 深圳制作网站搜行者seo智联招聘企业登录入口
  • 深圳网站建设案做视频网站服务器怎么选择
  • 扬州市建设工程造价管理站网站怎么购买国外服务器
  • 并提示网站菜单导航及用户登录05网寒假作业答案
  • 手机网站在线制作缪斯装饰设计有限公司
  • 保定网站建设公司哪家好优秀网站管理员
  • 怎样做网络销售网站环球中心建于哪一年
  • 网站建设规划方案ppt模板最新网站源码
  • 郑州华恩科技做网站怎么样万江网站制作
  • 吉林省住房和城乡建设厅网站官网抖音代运营排名
  • 做网站上线一般要多久网站导航设计
  • 网站互联网设计图风格定制软件开发方案
  • 无锡市城乡建设局网站百度官网网站登录
  • 站酷高高手网站服务器连接被重置
  • 大学生帮别人做网站做英文网站用目录还是子域名
  • 网站开发和前端是一样吗wifi域名是什么