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

太原网站制作公司飞向未来wordpress 音频播放

太原网站制作公司飞向未来,wordpress 音频播放,wordpress 最强大主题,怎么建网站站点一.redis的发布订阅 什么 是发布和订阅 Redis 发布订阅 (pub/sub) 是一种消息通信模式#xff1a;发送者 (pub) 发送消息#xff0c;订阅者 (sub) 接收消息。 Redis 客户端可以订阅任意数量的频道。 1、Redis的发布和订阅 客户端订阅频道发布的消息 频道发布消息 订阅者就可以…一.redis的发布订阅 什么 是发布和订阅 Redis 发布订阅 (pub/sub) 是一种消息通信模式发送者 (pub) 发送消息订阅者 (sub) 接收消息。 Redis 客户端可以订阅任意数量的频道。 1、Redis的发布和订阅 客户端订阅频道发布的消息 频道发布消息 订阅者就可以收到消息 2、发布订阅的代码实现 打开一个客户端订阅channel1 SUBSCRIBE channel1 打开另一个客户端给channel1发布消息hello publish channel1 hello 返回的1是订阅者数量 打开第一个客户端可以看到发送的消息 二.Redis事务 1.事务简介 可以一次执行多个命令本质是一组命令的集合。一个事务中的 所有命令都会序列化按顺序地串行化执行而不会被其它命令插入不许加塞。 单独的隔离的操作 官网说明 https://redis.io/docs/interact/transactions/                https://redis.io/docs/interact/transactions/ MULTI、EXEC、DISCARD、WATCH。这四个指令构成了 redis 事务处理的基础。 1.MULTI 用来组装一个事务将命令存放到一个队列里面 2.EXEC 用来执行一个事务//commit 3.DISCARD 用来取消一个事务//rollback 4.WATCH 用来监视一些 key一旦这些 key 在事务执行之前被改变则取消事务的执行。 例子 redis MULTI //标记事务开始 OK redis INCR user_id //多条命令按顺序入队 QUEUED queued redis INCR user_id QUEUED redis INCR user_id QUEUED redis PING QUEUED redis EXEC //执行 1) (integer) 1 2) (integer) 2 3) (integer) 3 4) PONG 有关事务经常会遇到的是两类错误 1.调用 EXEC 之前的错误 “调用 EXEC 之前的错误”有可能是由于语法有误导致的也可能时由于内存不足导致的。只要出现某个命令无法成功写入缓冲队列的情况redis 都会进行记录在客户端调用 EXEC 时redis 会拒绝执行这一事务 multi OKhaha QUEUEDping QUEUEDexec ReplyError: EXECABORT Transaction discarded because of previous errors. 2.调用 EXEC 之后的错误 multi OKset age 23 QUEUED //age 不是集合所以如下是一条明显错误的指令sadd age 23 QUEUEDset age 29 QUEUEDexec //执行事务时redis 不会理睬第 2 条指令执行错误 OK OKget age 29 //可以看出第 3 条指令被成功执行了 2.redis事务冲突 双十一去购物的时候使用同一张银行卡去付款 10000 一个请求想给金额减8000 一个请求想给金额减5000 一个请求想给金额减1000 解决方案 悲观锁 select * from biao where 11 for update 悲观锁(Pessimistic Lock), 顾名思义就是很悲观 每次去拿数据的时候都认为别人会修改所以每次在拿数据的时候都会上锁 这样别人想拿这个数据就会block直到它拿到锁。 传统的关系型数据库里边就用到了很多这种锁机制 比如行锁表锁等读锁写锁等都是在做操作之前先上锁。 12306抢票 乐观锁 version 1 查余额 10000 version1 100008000 -8000 update uuuu set moner-8000 where version1 1.1 10000 -5000 UPDATE uuuuu SET MONTY-5000 WHERE VERSION1 2000 20001000 UPDATE uuuu SET MONTY-1000 WHERE VERSION1.1 1.2 version select * from ttt where uid 1 version money 1 10000 乐观锁 乐观锁(Optimistic Lock), 顾名思义就是很乐观 每次去拿数据的时候都认为别人不会修改所以不会上锁 但是在更新的时候会判断一下在此期间别人有没有去更新这个数据 可以使用版本号等机制。乐观锁适用于多读的应用类型 这样可以提高吞吐量。Redis就是利用这种check-and-set机制实现事务的。 三.Redis的使用 java操作redis 创建java项目 添加redis的依赖 dependencygroupIdredis.clients/groupIdartifactIdjedis/artifactIdversion3.2.0/version /dependency 相关API key的api Testpublic void testRedis() {//设置连接的服务器 端口号默认是6379// 服务器的默认值是localhostJedis jedisnew Jedis(8.140.27.154); // redis的服务器的密码jedis.auth(xxx); //设置密码// 设置选中的数据库的下标jedis.select(15);// 设置键值对jedis.set(k1, v1);jedis.set(k2, v2);jedis.set(k3, v3);//获取所有的key值SetString keys jedis.keys(*);System.out.println(keys.size());for (String key : keys) {System.out.println(key);}// 判断key是否存在System.out.println(jedis.exists(k1));//获取key的过期时间System.out.println(jedis.ttl(k1));// 获取key对应的值System.out.println(jedis.get(k1));}} string-api // 批量设置 jedis.mset(str1,v1,str2,v2,str3,v3); //批量获取key System.out.println(jedis.mget(str1,str2,str3)); hash-api //设置 一个key叫做hash1 对应的field是usernamevalue是lisi jedis.hset(hash1,userName,lisi); //获取key为hash1的对应的fileld为username的值 System.out.println(jedis.hget(hash1,userName)); MapString,String map new HashMapString,String(); map.put(telphone,13838389438); map.put(address,郑州); map.put(email,abc163.com); //批量设置 jedis.hmset(hash2,map); //批量获取 ListString result jedis.hmget(hash2, telphone,email); for (String element : result) {System.out.println(element); } set-api jedis.sadd(orders, order01); jedis.sadd(orders, order02); jedis.sadd(orders, order03); jedis.sadd(orders, order04); SetString smembers jedis.smembers(orders); for (String order : smembers) {System.out.println(order); } //删除集合中的元素 jedis.srem(orders, order02); zset-api jedis.zadd(zset01, 100d, z3); jedis.zadd(zset01, 90d, l4); jedis.zadd(zset01, 80d, w5); jedis.zadd(zset01, 70d, z6);SetString zrange jedis.zrange(zset01, 0, -1); for (String e : zrange) {System.out.println(e); } list-api //添加 jedis.lpush(mylist,test1,test2,test3); //获取list里面的值 ListString mylist jedis.lrange(mylist, 0, -1); for (String s : mylist) {System.out.println(s); } redis整合springboot 创建springboot项目 过程略 加入redis的依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-redis/artifactId /dependencydependencygroupIdorg.apache.commons/groupIdartifactIdcommons-pool2/artifactIdversion2.6.0/version /dependencydependencygroupIdredis.clients/groupIdartifactIdjedis/artifactId /dependency 编写配置文件 #设置reis的索引 spring.redis.database15 #设置连接redis的密码 spring.redis.passwordxxx #设置的redis的服务器 spring.redis.host192.168.xx.33 #端口号 spring.redis.port6379 #连接超时时间毫秒 spring.redis.timeout1800000 #连接池最大连接数使用负值表示没有限制 spring.redis.lettuce.pool.max-active20 #最大阻塞等待时间(负数表示没限制) spring.redis.lettuce.pool.max-wait-1 #连接池中的最大空闲连接 spring.redis.lettuce.pool.max-idle5 #连接池中的最小空闲连接 spring.redis.lettuce.pool.min-idle0 设置配置类 package com.example.demo;import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.PropertyAccessor; import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.cache.CacheManager; import org.springframework.cache.annotation.CachingConfigurerSupport; import org.springframework.cache.annotation.EnableCaching; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.cache.RedisCacheConfiguration; import org.springframework.data.redis.cache.RedisCacheManager; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer; import org.springframework.data.redis.serializer.RedisSerializationContext; import org.springframework.data.redis.serializer.RedisSerializer; import org.springframework.data.redis.serializer.StringRedisSerializer;import java.time.Duration;EnableCaching Configuration public class RedisConfig extends CachingConfigurerSupport {/*** 连接池的设置** return*/Beanpublic JedisPoolConfig getJedisPoolConfig() {JedisPoolConfig jedisPoolConfig new JedisPoolConfig();return jedisPoolConfig;}/*** RedisTemplate* param factory* return*/Beanpublic RedisTemplateString, Object redisTemplate(RedisConnectionFactory factory) {RedisTemplateString, Object template new RedisTemplate();RedisSerializerString redisSerializer new StringRedisSerializer();Jackson2JsonRedisSerializer jackson2JsonRedisSerializer new Jackson2JsonRedisSerializer(Object.class);ObjectMapper om new ObjectMapper();// 指定要序列化的域field,get和set,以及修饰符范围ANY是都有包括private和publicom.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);// 指定序列化输入的类型类必须是非final修饰的final修饰的类比如String,Integer等会跑出异常om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);jackson2JsonRedisSerializer.setObjectMapper(om);template.setConnectionFactory(factory);//key序列化方式template.setKeySerializer(redisSerializer);//value序列化template.setValueSerializer(jackson2JsonRedisSerializer);//value hashmap序列化template.setHashValueSerializer(jackson2JsonRedisSerializer);return template;}/*** 缓存处理* param factory* return*/Beanpublic CacheManager cacheManager(RedisConnectionFactory factory) {RedisSerializerString redisSerializer new StringRedisSerializer();Jackson2JsonRedisSerializer jackson2JsonRedisSerializer new Jackson2JsonRedisSerializer(Object.class); //解决查询缓存转换异常的问题ObjectMapper om new ObjectMapper();om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);jackson2JsonRedisSerializer.setObjectMapper(om); // 配置序列化解决乱码的问题,过期时间600秒RedisCacheConfiguration config RedisCacheConfiguration.defaultCacheConfig().entryTtl(Duration.ofSeconds(600)).serializeKeysWith(RedisSerializationContext.SerializationPair.fromSerializer(redisSerializer)).serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(jackson2JsonRedisSerializer)).disableCachingNullValues();RedisCacheManager cacheManager RedisCacheManager.builder(factory).cacheDefaults(config).build();return cacheManager;} }
文章转载自:
http://www.morning.tsnmt.cn.gov.cn.tsnmt.cn
http://www.morning.rkdw.cn.gov.cn.rkdw.cn
http://www.morning.mygbt.cn.gov.cn.mygbt.cn
http://www.morning.clqpj.cn.gov.cn.clqpj.cn
http://www.morning.bdtpd.cn.gov.cn.bdtpd.cn
http://www.morning.hxxzp.cn.gov.cn.hxxzp.cn
http://www.morning.nrqnj.cn.gov.cn.nrqnj.cn
http://www.morning.qxltp.cn.gov.cn.qxltp.cn
http://www.morning.sfrw.cn.gov.cn.sfrw.cn
http://www.morning.fkgqn.cn.gov.cn.fkgqn.cn
http://www.morning.swdnr.cn.gov.cn.swdnr.cn
http://www.morning.fllfc.cn.gov.cn.fllfc.cn
http://www.morning.mqxrx.cn.gov.cn.mqxrx.cn
http://www.morning.bfsqz.cn.gov.cn.bfsqz.cn
http://www.morning.qnftc.cn.gov.cn.qnftc.cn
http://www.morning.qmqgx.cn.gov.cn.qmqgx.cn
http://www.morning.kgltb.cn.gov.cn.kgltb.cn
http://www.morning.zrbpx.cn.gov.cn.zrbpx.cn
http://www.morning.pqfbk.cn.gov.cn.pqfbk.cn
http://www.morning.hjbrd.cn.gov.cn.hjbrd.cn
http://www.morning.rwmqp.cn.gov.cn.rwmqp.cn
http://www.morning.xjkfb.cn.gov.cn.xjkfb.cn
http://www.morning.qgmbx.cn.gov.cn.qgmbx.cn
http://www.morning.nmbbt.cn.gov.cn.nmbbt.cn
http://www.morning.gjzwj.cn.gov.cn.gjzwj.cn
http://www.morning.dywgl.cn.gov.cn.dywgl.cn
http://www.morning.xkjrs.cn.gov.cn.xkjrs.cn
http://www.morning.nmyrg.cn.gov.cn.nmyrg.cn
http://www.morning.lkcqz.cn.gov.cn.lkcqz.cn
http://www.morning.tjjkn.cn.gov.cn.tjjkn.cn
http://www.morning.slnz.cn.gov.cn.slnz.cn
http://www.morning.qnhcx.cn.gov.cn.qnhcx.cn
http://www.morning.yskhj.cn.gov.cn.yskhj.cn
http://www.morning.clpdm.cn.gov.cn.clpdm.cn
http://www.morning.fbnsx.cn.gov.cn.fbnsx.cn
http://www.morning.rjmb.cn.gov.cn.rjmb.cn
http://www.morning.ummpdl.cn.gov.cn.ummpdl.cn
http://www.morning.rtkgc.cn.gov.cn.rtkgc.cn
http://www.morning.xhqr.cn.gov.cn.xhqr.cn
http://www.morning.kqglp.cn.gov.cn.kqglp.cn
http://www.morning.hqxyt.cn.gov.cn.hqxyt.cn
http://www.morning.zpqlf.cn.gov.cn.zpqlf.cn
http://www.morning.yrqb.cn.gov.cn.yrqb.cn
http://www.morning.ztjhz.cn.gov.cn.ztjhz.cn
http://www.morning.rmfh.cn.gov.cn.rmfh.cn
http://www.morning.c7625.cn.gov.cn.c7625.cn
http://www.morning.ntnml.cn.gov.cn.ntnml.cn
http://www.morning.skdrp.cn.gov.cn.skdrp.cn
http://www.morning.czzpm.cn.gov.cn.czzpm.cn
http://www.morning.lctrz.cn.gov.cn.lctrz.cn
http://www.morning.mszls.cn.gov.cn.mszls.cn
http://www.morning.qbwbs.cn.gov.cn.qbwbs.cn
http://www.morning.wfkbk.cn.gov.cn.wfkbk.cn
http://www.morning.xdmsq.cn.gov.cn.xdmsq.cn
http://www.morning.yrqb.cn.gov.cn.yrqb.cn
http://www.morning.hymmq.cn.gov.cn.hymmq.cn
http://www.morning.xjmyq.com.gov.cn.xjmyq.com
http://www.morning.hxhrg.cn.gov.cn.hxhrg.cn
http://www.morning.jqcrf.cn.gov.cn.jqcrf.cn
http://www.morning.rnfwx.cn.gov.cn.rnfwx.cn
http://www.morning.gcfrt.cn.gov.cn.gcfrt.cn
http://www.morning.srrrz.cn.gov.cn.srrrz.cn
http://www.morning.xcxj.cn.gov.cn.xcxj.cn
http://www.morning.hqgkx.cn.gov.cn.hqgkx.cn
http://www.morning.kpxnz.cn.gov.cn.kpxnz.cn
http://www.morning.pgmyn.cn.gov.cn.pgmyn.cn
http://www.morning.lmxrt.cn.gov.cn.lmxrt.cn
http://www.morning.mglqf.cn.gov.cn.mglqf.cn
http://www.morning.jcbjy.cn.gov.cn.jcbjy.cn
http://www.morning.kwqqs.cn.gov.cn.kwqqs.cn
http://www.morning.wlgpz.cn.gov.cn.wlgpz.cn
http://www.morning.wdwfm.cn.gov.cn.wdwfm.cn
http://www.morning.tfpmf.cn.gov.cn.tfpmf.cn
http://www.morning.clpkp.cn.gov.cn.clpkp.cn
http://www.morning.znqmh.cn.gov.cn.znqmh.cn
http://www.morning.gcdzp.cn.gov.cn.gcdzp.cn
http://www.morning.krrjb.cn.gov.cn.krrjb.cn
http://www.morning.gqbtw.cn.gov.cn.gqbtw.cn
http://www.morning.qmxsx.cn.gov.cn.qmxsx.cn
http://www.morning.xfxlr.cn.gov.cn.xfxlr.cn
http://www.tj-hxxt.cn/news/268595.html

相关文章:

  • 免费网站建设视频网站这么做404页面
  • 专门做岛屿的网站襄阳百度seo
  • 移动网站建站系统中国建设教育培训中心官网
  • 网站分页需要前端做还是后端关于网站开发的商业计划书
  • 网站备案成功后怎么弄西安建设工程诚信平台
  • 优化网站架构西安网站网站建设
  • 徐州网站建设魔站桂林视频网站制作
  • 有网站如何做直播专业简历制作
  • 广州 环保 凡人网站建设网站系统分类
  • ip代理提取网站源码网络电话免费30分钟
  • 中山精品网站建设精英安徽最新消息
  • 网站如何做超级链接什么网站做热能表好
  • 新乡电子商务网站建设标签云wordpress
  • 网站怎么在工信部备案信息查询国内5大搜索引擎
  • 向国旗敬礼做美德少年网站西安在线网站制作
  • 茂港网站建设公司网站开发工程师职责
  • 和幼儿做网站爱四川最好的网络优化公司
  • 建设网站一定要数据库吗广州大石附近做网站的公司哪家好
  • 信息最全的网站17做网站郑州
  • 做公司 网站建设价格黄浦集团网站建设
  • 一键自助建站怎样进入网站管理系统
  • 网站建设的公司工作室宝安网站设计
  • 专业商城网站制作网上书店网站建设
  • 做公司网站的模板下载网站服务器放置地查询
  • 做网站是学什么专业优化技术
  • 中学生做的安全作业网站怎么给自己的网站做模版
  • 哈尔滨企业建站成都百度推广排名优化
  • 网站建设课程学习建网站市场
  • 莱州做网站的公司wordpress站点临时关闭
  • 物联网平台是什么seo搜索排名优化方法