学习笔记——redis事务、乐观锁、悲观锁
2023-01-29 一、redis事务与乐观锁相关命令 1、redis事务 (1)redis事务的含义 redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序执行。事务在执行过程中,不会被其他客户端送来的命令请求所打断。 (2)redis事务的作用 redis事务的主要作用就是串联 ...
03初识MapReduce
初识MapReduce 一、什么是MapReduce MapReduce是一种编程范式,它借助Map将一个大任务分解成多个小任务,再借助Reduce归并Map的结果。MapReduce虽然原理很简单,但是使用MapReduce设计出一个解决问题的应用却不是一件简单的事情。下面通过一个简单的小例子来介 ...
Redis之key的淘汰策略
淘汰策略概述 redis作为缓存使用时,在添加新数据的同时自动清理旧的数据。这种行为在开发者社区众所周知,也是流行的memcached系统的默认行为。 redis中使用的LRU淘汰算法是一种近似LRU的算法。 淘汰策略 针对淘汰策略,redis有一下几种配置方案: 1、noeviction:当触发内 ...
C++11 智能指针 shared_ptr
C++11 智能指针 shared_ptr Written on 2023-01-16 个人学习智能指针记录合集: C++11 智能指针 C++11 智能指针 shared_ptr C++11 智能指针 unique_ptr C++11 智能指针 weak_ptr std::shared_ptr 共 ...
探讨下如何更好的使用缓存 —— Redis缓存的特殊用法以及与本地缓存一起构建多级缓存的实现
本篇文章,我们就一起聊一聊如何来更好的使用缓存,探寻下如何降低缓存交互过程的性能损耗、如何压缩缓存的存储空间占用、如何保证多个操作命令原子性等问题的解决策略,让缓存在项目中可以发挥出更佳的效果。 ...
10.关于synchronized的一切,我都写在这里了
大家好,我是王有志。关注王有志,一起聊技术,聊游戏,从北漂生活谈到国际风云。 之前我们已经通过3篇文章由浅到深的分析了synchronized的用法和原理: synchronized的基础:synchronized都问啥? 偏向锁升级到轻量级锁:从源码揭秘偏向锁的升级 轻量级锁升级到重量级锁:什么是 ...
Redis 数据结构-双向链表
Redis 数据结构-双向链表 最是人间留不住,朱颜辞镜花辞树。 1、简介 Redis 之所以快主要得益于它的数据结构、操作内存数据库、单线程和多路 I/O 复用模型,进一步窥探下它常见的五种基本数据的底层数据结构。 Redis 常见数据类型对应的的底层数据结构。 String:简单动态字符串。 L ...
09.什么是synchronized的重量级锁?
大家好,我是王有志。关注王有志,一起聊技术,聊游戏,聊在外漂泊的生活。点击这里查看王有志的资源分享,点击这里参加抽奖活动。 今天我们继续学习synchronized的升级过程,目前只剩下最后一步了:轻量级锁->重量级锁。 通过今天的内容,希望能帮助大家解答synchronized都问啥?中除锁粗化, ...
Redis缓存何以一枝独秀?——从百变应用场景与热门面试题中感受下Redis的核心特性与使用注意点
在分布式盛行的今天,本地缓存明显无法满足分布式场景的缓存诉求。作为应对之法,集中式缓存被广泛的使用在各中分布式系统中,而使用最广泛的莫过于大家耳熟能详的Redis了,本篇开始聊一聊Redis相关的内容。 ...
.gitignore文件配置以及gitee提交报Push rejected...错误解决
.gitignore文件配置 .gitignore 文件可以用来忽略被指定的文件或文件夹的改动。记录在.gitignore文件里的文件或文件夹是不会被 git 跟踪到,也就是被忽略的文件是不会被上传到远程仓库的,如果文件已经存在于远程仓库中就无法通过.gitignore文件来忽略。 下面总结了一些可 ...
从Redis、HTTP协议,看Nett协议设计,我发现了个惊天大秘密
1. 协议的作用 TCP/IP 中消息传输基于流的方式,没有边界 协议的目的就是划定消息的边界,制定通信双方要共同遵守的通信规则 2. Redis 协议 如果我们要向 Redis 服务器发送一条 set name Nyima 的指令,需要遵守如下协议 // 该指令一共有3部分,每条指令之后都要添加回 ...
面试官:为什么 wait/notify 必须与 synchronized 一起使用??
来源:blog.csdn.net/randompeople/article/details/114917087 为什么 java wait/notify 必须与 synchronized 一起使用 这个问题就是书本上没怎么讲解,就是告诉我们这样处理,但没有解释为什么这么处理?我也是基于这样的困惑去了 ...