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

公司网站包含哪些内容澄海区建设局网站

公司网站包含哪些内容,澄海区建设局网站,怎么在建筑网站做翻译兼职,网站建设课程教学计划目录专栏导读一、同样是缓存#xff0c;用map不行吗#xff1f;二、Redis为什么是单线程的#xff1f;三、Redis真的是单线程的吗#xff1f;四、Redis优缺点1、优点2、缺点五、Redis常见业务场景六、Redis常见数据类型1、String2、List3、Hash4、Set5、Zset6、BitMap7、Bi… 目录专栏导读一、同样是缓存用map不行吗二、Redis为什么是单线程的三、Redis真的是单线程的吗四、Redis优缺点1、优点2、缺点五、Redis常见业务场景六、Redis常见数据类型1、String2、List3、Hash4、Set5、Zset6、BitMap7、BitField8、HyperLogLog9、GEO10、Stream七、总结专栏导读 作者简介哪吒CSDN2022博客之星Top1、CSDN2021博客之星Top2、多届新星计划导师✌、博客专家 专注Java硬核干货分享立志做到Java赛道全网Top N。 本文收录于Java基础教程系列进阶篇本专栏是针对大学生、初级Java工程师精心打造针对Java生态逐个击破不断学习打通Java技术栈。 订阅后可以阅读Java基础教程系列进阶篇中全部文章包含Java基础、Java高并发、Spring、MySQL等Java进阶技术栈。 还可以订阅其姐妹篇Java基础教程系列包含全部Java基础知识点、Java8新特性、Java集合、Java多线程、Java代码实例理论结合实战实现Java的轻松学习。 哪吒多年工作总结Java学习路线总结搬砖工逆袭Java架构师。 面试福音10万字208道Java经典面试题总结(附答案) 大家好我是哪吒。 一、同样是缓存用map不行吗 Redis可以存储几十个G的数据Map行吗Redis的缓存可以进行本地持久化Map行吗Redis可以作为分布式缓存Map只能在同一个JVM中进行缓存Redis支持每秒百万级的并发Map行吗Redis有过期机制Map有吗Redis有丰富的API支持非常多的应用场景Map行吗 二、Redis为什么是单线程的 代码更清晰处理逻辑更简单不用考虑各种锁的问题不存在加锁和释放锁的操作没有因为可能出现死锁而导致的性能问题不存在多线程切换而消耗CPU无法发挥多核CPU的优势但可以采用多开几个Redis实例来完善 三、Redis真的是单线程的吗 Redis6.0之前是单线程的Redis6.0之后开始支持多线程Redis内部使用了基于epoll的多路复用也可以多部署几个Redis服务器解决单线程的问题Redis主要的性能瓶颈是内存和网络内存好说加内存条就行了而网络才是大麻烦所以Redis6内存好说加内存条就行了而网络才是大麻烦所以Redis6.0引入了多线程的概念Redis6.0在网络IO处理方面引入了多线程如网络数据的读写和协议解析等需要注意的是执行命令的核心模块还是单线程的 四、Redis优缺点 1、优点 Redis是KV数据库MySQL是关系型数据库Redis速度更快Redis数据操作主要在内存中MySQL主要将数据存储在硬盘Redis速度更快Redis同样支持持久化RDBAOFRedis支持将数据异步将内存的数据持久化到硬盘上避免Redis宕机出现数据丢失的问题Redis性能极高读的速度是110000次/秒写的速度是81000次/秒Redis数据类型丰富不仅支持KV键值对还支持list、set、zset、hash等数据结构的存储Redis支持数据的备份即master-slave模式的数据备份Redis支持简单的事务操作满足原子性Redis支持读写分离分担读的压力Redis支持哨兵模式实现故障的自动转移单线程操作避免了频繁的上下文切换采用了非阻塞I/O多路复用机制性能卓越 2、缺点 数据存储在内存容易造成数据丢失存储容量受内存的限制只能存储少量的常用数据缓存和数据库双写一致性问题用于缓存时容易出现内存穿透、缓存击穿、缓存雪崩的问题修改配置文件后需要进行重启将硬盘中的数据同步到内存中消耗的时间较长而且数据同步的时间里Redis不能提供服务 五、Redis常见业务场景 Redis是基于内存的nosql数据库可以通过新建线程的形式进行持久化不影响Redis单线程的读写操作通过list取最新的N条数据模拟类似于token这种需要设置过期时间的场景发布订阅消息系统定时器、计数器缓存加速、分布式会话、排行榜、分布式计数器、分布式锁Redis支持事务、持久化、LUA脚本、发布/订阅、缓存淘汰、流技术等特性 六、Redis常见数据类型 1、String 1String简介 String 是最基本的 key-value 结构key 是唯一标识value 是具体的值value其实不仅是字符串 也可以是数字整数或浮点数value 最多可以容纳的数据长度是 512M。 2应用场景 ① 作为缓存数据库 在Java管理系统体系中大多数都是用MySQL存储数据redis作为缓存因为Redis具有支撑高并发的特性通常能起到加速读写和降低数据库服务器压力的作用大多数请求都会先请求Redis如果Redis中没有数据再请求MySQL数据库然后再缓存到Redis中以备下次使用。 ② 计数器 Redis字符串中有一个命令INCR keyincr命令会对值进行自增操作比如CSDN的文章阅读视频的播放量都可以通过Redis来计数每阅读一次就1同时将这些数据异步存储到MySQL数据库中降低MySQL服务器的写入压力。 ③ 共享session 在分布式系统中用户每次请求一般会访问不同的服务器 这就会导致session不同步的问题这时一般会使用Redis来解决这个问题将session存入Redis使用的时候从Redis中取出就可以了。 ④ 分布式锁 setnx key value加锁del key释放锁 3key操作命令 4set key value SET key value [NX | XX] [GET] [EX seconds | PX milliseconds | EXAT unix-time-seconds | PXAT unix-time-milliseconds | KEEPTTL] EX seconds设置过期时间单位秒PX milliseconds设置过期时间单位毫秒EXAT timestamp-seconds设置过期时间以秒为单位的UNIX时间戳PXAT timestamp-milliseconds设置过期时间以毫秒为单位的UNIX时间戳NX键不存在的时候设置键值XX键存在的时候设置键值KEEPTTL保留设置前指定键的生存时间GET返回指定键原本的值若键不存在返回nil 备注 命令不区分大小写而key是区分大小写的。 help 类型查看当前类型相关的操作命令。 Since the SET command options can replace SETNX, SETEX, PSETEX, GETSET, it is possible that in future versions of Redis these commands will be deprecated and finally removed。 5同时设置多个键值 6获取指定区间范围内的值 getrange、setrange。 7数值增减 INCR key递增数字INCRBY key increment增加指定的数值递增DECR key递减数值DECRBY key decrement指定指定的数值递减 8获取字符串的长度内容追加 STRLEN key获取值的长度APPEND key value内容追加 2、List 1List 列表简介 List 列表是简单的字符串列表按照插入顺序排序可以从头部或尾部向 List 列表添加元素。 列表的最大长度为 2^32 - 1也即每个列表支持超过 40 亿个元素。 主要功能有push/pop一般用在栈、队列、消息队列等场景。 left、right都可以插入添加如果键不存在创建新的链表如果键存在新增内容如果值全部移除对应的键也会消失 它的底层是双向链表对两端的操作性能很高通过索引下标操作中间的节点性能会较差。 2应用场景 ① 消息队列 使用 lpush rpop或者 rpush lpop实现消息队列Redis还支持阻塞操作在弹出元素的时候使用阻塞命令来实现阻塞队列。 ② 作为栈使用 使用 lpushlpop或者 rpushrpop实现栈。 ③ 文章列表 3常用命令 3、Hash 1hash简介 Hash 是一个键值对key - value集合value也是一个hash相当于 MapString,MapObject,Object。 2常用场景 由于特殊的数据结构hash一般作为存储bean使用StringJSON的数据结构存储特定的应用场景。 3常用命令 4、Set 1Set类型简介 Set 类型是一个无序并唯一的键值集合它的存储顺序不会按照插入的先后顺序进行存储。 一个集合最多可以存储 2^32-1 个元素。概念和数学中个的集合基本类似可以交集并集差集等等所以 Set 类型除了支持集合内的增删改查同时还支持多个集合取交集、并集、差集。 2应用场景 ① 相同好友可见 在朋友圈场景中对于点赞、评论的功能通过交集实现相同还有可见的功能。 ② 共同关注、共同喜好 ③ 抽奖功能 3常用命令 5、Zset 1Zset 类型简介 Zset 类型有序集合类型相比于 Set 类型多了一个排序属性 score分值对于有序集合 ZSet 来说每个存储元素相当于有两个值组成的一个是有序结合的元素值一个是排序值。 有序集合保留了集合不能有重复成员的特性分值可以重复但不同的是有序集合中的元素可以排序。 zset k1 score1 v1 score2 v2 2应用场景 ① 排行榜 通过score来记录点赞数然后根据score进行排序实现排行榜的功能。 ② 延迟消息队列 订单系统下单后需要在15分钟内进行支付操作否则自动取消订单。 将下单后15分钟后的时间作为score订单作为value存入Redis消费者轮询去消费如果消费的大于等于score则取消该订单。 3Zset常用命令 6、BitMap 1Bitmap简介 Bitmap即位图是一串连续的二进制数组0和1可以通过偏移量offset定位元素。BitMap通过最小的单位bit来进行0|1的设置表示某个元素的值或者状态时间复杂度为O(1)。 2应用场景 由于 bit 是计算机中最小的单位使用它进行储存将非常节省空间特别适合一些数据量大且使用二值统计的场景。 ① 签到统计 ② 判断用户是否登录 ③ 统计连续学习打卡的人 3BitMap常用命令 7、BitField 通过bitfield命令可以一次性操作多个比特位它会执行一系列操作并返回一个响应数组这个数组中的元素对参数列表中的相应操作的执行结果。 8、HyperLogLog 1HyperLogLog简介 Redis HyperLogLog 是 Redis 2.8.9 版本新增的数据类型是一种用于「统计基数」的数据集合类型基数统计就是指统计一个集合中不重复的元素个数。但要注意HyperLogLog 是统计规则是基于概率完成的不是非常准确标准误算率是 0.81%。 所以简单来说 HyperLogLog 提供不精确的去重计数。 HyperLogLog 的优点是在输入元素的数量或者体积非常非常大时计算基数所需的内存空间总是固定的、并且是很小的。 在 Redis 里面每个 HyperLogLog 键只需要花费 12 KB 内存就可以计算接近 2^64 个不同元素的基数和元素越多就越耗费内存的 Set 和 Hash 类型相比HyperLogLog 就非常节省空间。 2应用场景 百万级网页 UV 计数 3常用命令 pfadd key element添加元素pfcount key返回指定HyperLogLog的基数的估算值pfmerge destkey sourcekey将多个HyperLogLog合并成一个HyperLogLog 9、GEO 1GEO简介 Redis GEO 是 Redis 3.2 版本新增的数据类型主要用于存储地理位置信息并对存储的信息进行操作。 在日常生活中我们越来越依赖搜索“附近的餐馆”、在打车软件上叫车这些都离不开基于位置信息服务Location-Based ServiceLBS的应用。LBS 应用访问的数据是和人或物关联的一组经纬度信息而且要能查询相邻的经纬度范围GEO 就非常适合应用在 LBS 服务的场景中。 2应用场景 高德地图、滴滴打车等定位软件。 3常用命令 10、Stream 1Stream简介 Redis Stream 是 Redis 5.0 版本新增加的数据类型Redis 专门为消息队列设计的数据类型。 在 Redis 5.0 Stream 没出来之前消息队列的实现方式都有着各自的缺陷例如 发布订阅模式不能持久化也就无法可靠的保存消息并且对于离线重连的客户端不能读取历史消息的缺陷List 实现消息队列的方式不能重复消费一个消息消费完就会被删除而且生产者需要自行实现全局唯一 ID。 基于以上问题Redis 5.0 便推出了 Stream 类型也是此版本最重要的功能用于完美地实现消息队列它支持消息的持久化、支持自动生成全局唯一 ID、支持 ack 确认消息的模式、支持消费组模式等让消息队列更加的稳定和可靠。 2应用场景 消息队列 3常用命令 七、总结 Redis是一个key-value存储系统支持10种数据类型总结了为何要用Redis替代map作为程序缓存、Redis为什么是单线程的、Redis的优缺点、Redis的常用场景做了一次Redis的快速入门。 Java学习路线总结搬砖工逆袭Java架构师 10万字208道Java经典面试题总结(附答案) Java基础教程系列 Java基础教程系列进阶篇
http://www.w-s-a.com/news/397277/

相关文章:

  • 惠州网站建设排名wordpress3万篇文章优化
  • 创建网站的三种方法北京建王园林工程有限公司
  • jsp网站建设模板下载十大免费excel网站
  • 网络公司网站图片网站建立好了自己怎么做优化
  • 云主机是不是可以搭建无数个网站百度快速seo优化
  • 房地产怎么做网站推广建立音乐网站
  • 川畅科技联系 网站设计网站开发的教学视频
  • 为什么学网站开发凡科登陆
  • 设计师常备设计网站大全中山精品网站建设信息
  • 杭州建设工程网seo服务是什么
  • 兼职做问卷调查的网站wordpress mysql设置
  • 怎么在百度上能搜到自己的网站山西seo谷歌关键词优化工具
  • 网站搭建免费模板飞鱼crm下载
  • 网站开发竞品分析app制作公司深圳
  • 网站建设ssc源码修复设计班级网站建设
  • 网站重定向凡科做网站不要钱
  • 佛山html5网站建设微信营销软件破解版
  • 网站单页做301南京百度推广
  • 私人做网站要多少钱展芒设计网页
  • 怎样网站制作设计如何在网上推广农产品
  • 做关键词排名卖网站聚名网
  • 吉林省住房城乡建设厅网站首页体育器材网站建设方案
  • 网站建设及维护专业手机金融界网站
  • 常州网站建设工作室建立网站有怎么用途
  • 如何盗取网站推广策划书模板
  • 游戏网站建设计划书网络开发需要学什么
  • 手机网站维护费网站开发包括网站过程
  • 懂做游戏钓鱼网站的网站建设技术的发展
  • 网站被百度收录百度一下你就知道 官网
  • 雅客网站建设做网站用什么做