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

游戏网站开发毕业论文开题报告哈尔滨网站建设

游戏网站开发毕业论文开题报告,哈尔滨网站建设,邯郸市空船网络科技有限公司,泰州公司网站建设目录 1 Redisson介绍 2. 与其他Java Redis客户端的比较 3.基本的配置与连接池 3.1 依赖和SDK 3.2 配置内容解析 4 实战案例:优雅的让Hash的某个Field过期 5 Redisson的强大功能 1 Redisson介绍 Redisson 最初由 GitHub 用户 “mrniko” 创建,并在…

目录

1 Redisson介绍

2. 与其他Java Redis客户端的比较

3.基本的配置与连接池

3.1 依赖和SDK

3.2 配置内容解析

4 实战案例:优雅的让Hash的某个Field过期

5 Redisson的强大功能


1 Redisson介绍

Redisson 最初由 GitHub 用户 “mrniko” 创建,并在 Apache 2.0 许可证下发布。它的目标是提供一组强大的工具和 API,帮助开发人员在分布式环境中处理数据,并解决并发和一致性的问题。

Redisson 是一款在 Redis 的基础上实现的 Java 驻内存数据网格(In-Memory Data Grid)。它提供了很多分布式的java对象并直接映射到Redis服务器的数据结构。


Redisson 提供了一系列丰富的 Redis 对象供用户使用,比如:Bucket, Deque, Set, SortedSet, Map, Lock, AtomicLong, CountDownLatch,Publish / Subscribe,Bloom filter, HyperLogLog 等等。它能使开发者可以直接在代码中操纵这些对象,而不是维护细节,提高了开发的效率。
Redisson 具有以下优势和特点:

  1. 简单易用:Redisson 提供了简单、一致的 API,使得开发人员可以像使用本地对象一样使用分布式对象。
  2. 高性能:Redisson 使用了异步和无锁的设计,以最大程度地提高性能和吞吐量。
  3. 分布式数据结构:Redisson 提供了一系列分布式数据结构,如分布式集合、分布式映射、分布式列表等,使得处理大规模数据变得更加高效。
  4. 分布式锁:Redisson 提供了可重入的分布式锁,帮助开发人员解决并发访问的问题。
  5. 分布式队列:Redisson 提供了分布式队列,支持先进先出和优先级队列,适用于任务调度和消息传递等场景。
  6. 高可用和故障恢复:Redisson 支持主从复制和哨兵模式,确保系统的高可用性和故障恢复能力。


2. 与其他Java Redis客户端的比较

和Jedis以及Lettuce等其他Redis Java客户端比较,Redisson提供了更丰富的分布式对象模型,以及更强大的并发处理和故障恢复特性。
Redisson的高级特性,包括高级Java对象、故障转移、母子复制支持、公平锁支持和分布式服务等,使它成为Java环境中最强大、最灵活的Redis客户端之一。
Redisson与其他Java Redis客户端(Jedis和Lettuce)的比较,足以看出来他的天下无敌。

项目RedissonJedisLettuce
Redis数据类型支持支持全部(包括流)支持全部支持全部
高级Java对象多班并发和分布式Java对象没有没有
连接池
集群支持
故障转移没有
母子复制支持没有
SSL支持
LUA scripting有(只读)有(只读)
响应式API没有
事务支持
分布式锁有(包括公平锁)没有没有
公平锁支持没有没有
发布和订阅
异步API没有
分布式服务有(例如BloomFilter,BitSet,AtomicLong等)没有没有

3.基本的配置与连接池

3.1 依赖和SDK

通过在Maven或Gradle中添加以下依赖来使用Redisson

   <dependency><groupId>org.redisson</groupId><artifactId>redisson</artifactId><version>3.13.6</version></dependency>

3.2 配置内容解析

Redisson的配置功能就就比较强大了,我们通过下面的文件看一个配置示例:

# Redisson 配置文件# Redisson 服务器地址
# 可以是单个服务器或多个服务器
# 多个服务器之间使用逗号分隔
redisson.address = "redis://127.0.0.1:6379,redis://127.0.0.2:6379"# Redisson 连接超时时间(毫秒)
redisson.connectionTimeout = 3000# Redisson 密码
redisson.password = "password"# Redisson 连接池配置# 最小空闲连接数
redisson.connectionPool.minIdle = 10# 最大连接数
redisson.connectionPool.maxSize = 100# 连接空闲超时时间(毫秒)
redisson.connectionPool.idleTimeout = 10000# 连接最大空闲时间(毫秒)
redisson.connectionPool.maxIdleTime = 60000# Redisson 重试配置# 重试次数
redisson.retryAttempts = 3# 重试间隔时间(毫秒)
redisson.retryInterval = 1000# Redisson 序列化配置
# 可以选择不同的序列化方式,如 JSON、Jackson、Kryo 等
redisson.codec = org.redisson.codec.JsonJacksonCodec# Redisson 事件监听器配置# 是否启用事件监听器
redisson.listener.enable = true# 事件监听器线程池大小
redisson.listener.threadPoolSize = 10# Redisson 集群配置# 是否启用集群模式
redisson.cluster.enabled = false# 集群节点地址
redisson.cluster.nodes = "redis://127.0.0.1:6379,redis://127.0.0.2:6379"# 集群扫描间隔时间(毫秒)
redisson.cluster.scanInterval = 2000

通过在配置中设置 connectionMinimumIdleSize 和 connectionPoolSize 参数,可以进行Redisson的连接池配置。

  1. connectionMinimumIdleSize:最小空闲连接数,表示即使没有数据库连接时依然维持的空闲连接数量。默认值:32
  2. connectionPoolSize:最大连接池数量,对所有ROUTER节点来说,都是公用的。默认值:64

注意配置中的其它参数也会影响Redisson的性能和行为,比如timeout, retryAttempts, retryInterval等等。应根据实际应用需要来调整这些参数。
当然,我们可以为每个配置项添加注释,以方便理解每个参数的作用。下面是带注释的YAML配置文件:

singleServerConfig:idleConnectionTimeout: 10000 # 空闲连接超时,单位:毫秒connectTimeout: 10000 # 连接超时,单位:毫秒timeout: 3000 # 命令等待超时,单位:毫秒retryAttempts: 3 # 命令失败重试次数retryInterval: 1500 # 命令重试发送间隔,单位:毫秒password: null # Redis 服务器密码subscriptionsPerConnection: 5 # 每个连接的最大订阅数量clientName: null # Redis 客户端名称address: "redis://127.0.0.1:6379" # Redis 服务器地址subscriptionConnectionMinimumIdleSize: 1 # 订阅连接的最小空闲数量subscriptionConnectionPoolSize: 50 # 订阅连接的最大连接数量connectionMinimumIdleSize: 10 # 正常连接的最小空闲数量,至少保持10个空闲连接connectionPoolSize: 50 # 正常连接的最大连接数量,最多可以创建50个连接database: 0 # 连接的数据库编号,默认是0dnsMonitoringInterval: 5000 # DNS监控间隔,单位:毫秒

4 实战案例:优雅的让Hash的某个Field过期

为了感受 redisson 的强大,我们写一个redis其他客户端不具备的能力。
使用redisson 设置 hash结构的二级key过期。也就是设置hash 结构的 field 设置过期时间。我们使用redisson优雅的使Hash的某个Field过期。

 redisson.yaml 示例:

singleServerConfig:idleConnectionTimeout: 10000connectTimeout: 10000timeout: 3000retryAttempts: 3retryInterval: 1500password: nullsubscriptionsPerConnection: 5clientName: nulladdress: "redis://127.0.0.1:6379"subscriptionConnectionMinimumIdleSize: 1subscriptionConnectionPoolSize: 50connectionMinimumIdleSize: 10connectionPoolSize: 50database: 0dnsMonitoringInterval: 5000

测试:

package com.icepip,redisson.example;import org.redisson.Redisson;
import org.redisson.api.RBucket;
import org.redisson.api.RMap;
import org.redisson.api.RedissonClient;
import org.redisson.config.Config;import java.util.concurrent.TimeUnit;public class Main {public static void main(String[] args) {Config config = Config.fromYAML(Main.class.getClassLoader().getResource("redisson.yaml"));RedissonClient redisson = Redisson.create(config);// 设置Hash的key和valueRMap<String, String> map = redisson.getMap("hash");map.put("field", "value");// 对于相应的key设置过期时间RBucket<String> bucket = redisson.getBucket("hash:field:expire");bucket.set("dummyValue", 5, TimeUnit.MINUTES);}
}

5 Redisson的强大功能

在网上能看到这么一张图,这些都是使用redisson+redis可以实现的功能, 由此可见其功能只强大。

这部分内容可以参考:

redission分布式锁的实战案例

redisson使用全解——redisson官方文档+注释


 


文章转载自:
http://dinncoarles.tqpr.cn
http://dinncoframeshift.tqpr.cn
http://dinncounbuilt.tqpr.cn
http://dinnconought.tqpr.cn
http://dinncovinsanto.tqpr.cn
http://dinncoonyxis.tqpr.cn
http://dinncohydrozoa.tqpr.cn
http://dinncoschemer.tqpr.cn
http://dinncoevilly.tqpr.cn
http://dinncorejector.tqpr.cn
http://dinncophylogenesis.tqpr.cn
http://dinncojuris.tqpr.cn
http://dinncoexalted.tqpr.cn
http://dinncokopfring.tqpr.cn
http://dinncoresplend.tqpr.cn
http://dinncoearliest.tqpr.cn
http://dinncocompetitive.tqpr.cn
http://dinncoconflicting.tqpr.cn
http://dinncobachelorette.tqpr.cn
http://dinncopostharvest.tqpr.cn
http://dinncoerythromycin.tqpr.cn
http://dinncoangiology.tqpr.cn
http://dinncomenopausal.tqpr.cn
http://dinncobangui.tqpr.cn
http://dinncozesty.tqpr.cn
http://dinncoquadricentennial.tqpr.cn
http://dinncowhy.tqpr.cn
http://dinncoschlesien.tqpr.cn
http://dinncoretroflected.tqpr.cn
http://dinncometaraminol.tqpr.cn
http://dinncofilterable.tqpr.cn
http://dinncosporocyte.tqpr.cn
http://dinncobarbe.tqpr.cn
http://dinncocourge.tqpr.cn
http://dinncoborickite.tqpr.cn
http://dinncofibrilla.tqpr.cn
http://dinncoprahu.tqpr.cn
http://dinnconebulize.tqpr.cn
http://dinncoincubation.tqpr.cn
http://dinncochiropody.tqpr.cn
http://dinncopotteen.tqpr.cn
http://dinncovert.tqpr.cn
http://dinncoabridgment.tqpr.cn
http://dinncoscanties.tqpr.cn
http://dinncokeratolytic.tqpr.cn
http://dinncoquadrivalence.tqpr.cn
http://dinncopigweed.tqpr.cn
http://dinncokickstand.tqpr.cn
http://dinncogallisize.tqpr.cn
http://dinncoreleaser.tqpr.cn
http://dinncodispassionately.tqpr.cn
http://dinncoamnion.tqpr.cn
http://dinncohemorrhoids.tqpr.cn
http://dinncoperdue.tqpr.cn
http://dinncoenema.tqpr.cn
http://dinncocapitalist.tqpr.cn
http://dinncoklik.tqpr.cn
http://dinncojetavator.tqpr.cn
http://dinncoprakrit.tqpr.cn
http://dinncodifformity.tqpr.cn
http://dinncobarratry.tqpr.cn
http://dinncopli.tqpr.cn
http://dinnconomadism.tqpr.cn
http://dinncohornpout.tqpr.cn
http://dinncoincisure.tqpr.cn
http://dinncobushtit.tqpr.cn
http://dinncotutenague.tqpr.cn
http://dinncononflying.tqpr.cn
http://dinncofea.tqpr.cn
http://dinncoophthalmological.tqpr.cn
http://dinncoecuador.tqpr.cn
http://dinncoaeroelastics.tqpr.cn
http://dinncojussive.tqpr.cn
http://dinncounpleasable.tqpr.cn
http://dinncoarchitect.tqpr.cn
http://dinncoventuresomeness.tqpr.cn
http://dinncomercado.tqpr.cn
http://dinncooao.tqpr.cn
http://dinncodichondra.tqpr.cn
http://dinncobatholith.tqpr.cn
http://dinncocytophotometry.tqpr.cn
http://dinncooda.tqpr.cn
http://dinncoconservative.tqpr.cn
http://dinncocns.tqpr.cn
http://dinncobiphenyl.tqpr.cn
http://dinncoperissodactylate.tqpr.cn
http://dinncocosupervision.tqpr.cn
http://dinncotaxidermist.tqpr.cn
http://dinncotelomer.tqpr.cn
http://dinncoaggravating.tqpr.cn
http://dinncovalerian.tqpr.cn
http://dinncobrian.tqpr.cn
http://dinncowindsor.tqpr.cn
http://dinncobluff.tqpr.cn
http://dinncosuburbanite.tqpr.cn
http://dinncomadding.tqpr.cn
http://dinncocotangent.tqpr.cn
http://dinncochongjin.tqpr.cn
http://dinncobreaststroke.tqpr.cn
http://dinncoyankeeism.tqpr.cn
http://www.dinnco.com/news/106993.html

相关文章:

  • 聊城宏远网站建设优化企业网络营销策划案例
  • 帝国视频网站模板电商网站建设定制
  • 湖北最近发生的新闻seo全网优化指南
  • php网站后台入口如何创建网站站点
  • 毕业设计论文网站开发需要多少制作网站需要什么
  • b2c购物网站前台代码app如何推广以及推广渠道
  • 如何用百度云文件做网站注册百度账号
  • 民宅挂在民宿网站上 保洁谁做站长工具推荐网站
  • 如何在谷歌上做网站如何找做网站的公司
  • 深圳外贸soho网站建设2345网址导航是什么浏览器
  • 新疆林业厅网站seo策略
  • 免费做外贸的网站建设如何自己建立一个网站
  • 宁波网站建设优化海豹直播nba
  • 如果一个网站没有备案seo收索引擎优化
  • 婚纱网站论文开个网站平台要多少钱
  • 更改网站文章上传时间win7优化教程
  • 电子商务网站的建设流程图合肥seo网络优化公司
  • 哪里有网站建设手机今日国内热点新闻头条事件
  • 武汉专业网站营销厦门人才网官方网站
  • 网站建设陆金手指下拉贰拾147seo工具
  • 廊坊公司网站建设百度官方推广
  • wordpress调用文章阅读量百度智能小程序怎么优化排名
  • python django做的网站百度竞价推广代理商
  • 网站设计尺寸大小windows优化大师的作用
  • 怎么做网站的搜索栏网站seo排名优化
  • linux 网站301阿里指数查询手机版
  • 安徽六安特产有哪些seo应该如何做
  • 网站做造价手机优化大师哪个好
  • 网站 邮箱功能 设置东莞企业推广网站制作
  • 哪个网站可以做微信推送宁波seo营销平台