摘要: 先来简单了解下redis中提供的集群策略, 虽然redis有持久化功能能够保障redis服务器宕机也能恢复并且只有少量的数据损失,但是由于所有数据在一台服务器上,如果这台服务器出现硬盘故障,那就算是有备份也仍然不可避免数据丢失的问题。在实际生产环境中,我们不可能只使用一台redis服务器作为我们的缓 阅读全文
posted @ 2022-06-21 21:37 童话述说我的结局 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 一:Redis的AOF是什么? 以日志的形式来记录每个写操作(读操作不记录),将Redis执行过的所有写指令记录下来(读操作不记录),只许追加文件但不可以改写文件,redis启动之初会读取该文件重新构建数据,换言之,redis重启的话就根据日志文件的内容将写指令从前到后执行一次以完成数据的恢复工作。 阅读全文
posted @ 2022-06-20 21:57 童话述说我的结局 阅读(624) 评论(0) 推荐(2) 编辑
摘要: 一:什么是redis的持久化 Redis 持久化 Redis 提供了不同级别的持久化方式: RDB持久化方式能够在指定的时间间隔能对你的数据进行快照存储. AOF持久化方式记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据,AOF命令以redis协议追加保存每次写的操作到 阅读全文
posted @ 2022-06-19 20:11 童话述说我的结局 阅读(584) 评论(0) 推荐(0) 编辑
摘要: 一、Redis知识系统观 Redis从应用维度有:缓存使用、集群运用、数据结构的巧妙使用; Redis从系统维度有:可以归类为三类: 高性能:线程模型、网络 IO 模型、数据结构、持久化机制; 高可用:主从复制、哨兵集群; 高拓展:Cluster 分片集群 Redis 为了高性能,从各方各面都进行了 阅读全文
posted @ 2022-06-19 16:43 童话述说我的结局 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 一、什么是时间轮 时间轮这个技术其实出来很久了,在kafka、zookeeper等技术中都有时间轮使用的方式。 时间轮是一种高效利用线程资源进行批量化调度的一种调度模型。把大批量的调度任务全部绑定到同一个调度器上,使用这一个调度器来进行所有任务的管理、触发、以及运行。所以时间轮的模型能够高效管理各种 阅读全文
posted @ 2022-06-19 09:27 童话述说我的结局 阅读(1118) 评论(0) 推荐(1) 编辑
摘要: 一、什么是Lua脚本 Lua是一个高效的轻量级脚本语言(和JavaScript类似),用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。Lua在葡萄牙语中是“月亮”的意思,它的logo形式卫星,寓意是Lua是一个“卫星语言”,能够方便地嵌入 阅读全文
posted @ 2022-06-18 21:14 童话述说我的结局 阅读(1079) 评论(0) 推荐(0) 编辑
摘要: 官网:https://github.com/redisson/redisson/wiki/%E7%9B%AE%E5%BD%95 一、什么是分布式锁 1.1、什么是分布式锁 分布式锁,即分布式系统中的锁。在单体应用中我们通过锁解决的是控制共享资源访问的问题,而分布式锁,就是解决了分布式系统中控制共享资 阅读全文
posted @ 2022-06-16 20:04 童话述说我的结局 阅读(3888) 评论(0) 推荐(2) 编辑
摘要: 一、redis简单应用 其实在写这个redis专题时我想了很久,我觉得redis没什么好说的,因为现在是个人都会用redis,但是我在写netty专题时发现,netty里面很多东西和概念有很多跟redis的很多应用和底层很相似和可以借鉴的地方,所以后来想想,还是写个专题来简单聊聊。按照我以前的习惯在 阅读全文
posted @ 2022-06-15 00:00 童话述说我的结局 阅读(854) 评论(0) 推荐(1) 编辑
摘要: 1、数据库存存储性能优化 在mysql的文章专题中我写过了关于传统关系型数据库的一些优化思路,整体来说,通过优化之后能够提升程序访问数据库的计算性能。但是还是有一些情况,即便是优化之后,使用传统关系型数据库无法解决的,比如。 当数据量达到TB级别时,传统关系型数据库基本做了分库分表,单表数据量也是非 阅读全文
posted @ 2022-06-14 00:06 童话述说我的结局 阅读(471) 评论(0) 推荐(2) 编辑
摘要: 断断续续已经写了三年时光了,三年时光历历在目,也许这是我最后一年写技术类文章了。之前听朋友说,在三亚吹着海风写着代码是一种享受,所以头一热也就来体验了一把。陌生的环境给人一种空灵的感受,在这个我从未留过回忆的城市,给人一种什么都可以抓住的冲动,但也有什么都不敢抓的恐惧,也许这就是从头来过的体验,写完 阅读全文
posted @ 2022-06-05 14:46 童话述说我的结局 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 前面东西说完后,现在可以说一些和我们平时进行性能调优相关的东西了,那怎么看和我们JVM性能调优相关的东西呢,其实这对我们开发来说是一个比较头痛的问题,其实我们JDK官网给了一些我们相关的指令,我们可以用这些命令去排查当前JAVA中当前有多少个进程、可以知道我们内存空间中他是一个什么样的结构、哪些对象 阅读全文
posted @ 2022-02-10 14:44 童话述说我的结局 阅读(434) 评论(3) 推荐(0) 编辑
摘要: 一、垃圾收集器 有了前面JVM参数的了解下面来看下JVM的垃圾收集器;如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。 JVM(HotSpot)有7种垃圾收集器,7种垃圾收集器作用于不同的分代,如果两个收集器之间存在连续,就说明他们可以搭配使用。从JDK1.3到现在,从Ser 阅读全文
posted @ 2022-02-09 09:05 童话述说我的结局 阅读(351) 评论(0) 推荐(0) 编辑
摘要: 一、垃圾收集算法 由前面文章就可以知道已经能够确定一个对象为垃圾了,接下来要考虑的就是回收,下面介绍常见的垃圾回收算法。 1.1、标记-清除(Mark-Sweep) 1.1.1、标记 标记就是找出内存中需要回收的对象,并且把它们标记出来;标记就是将堆中所有的对象都会被扫描一遍,从而才能确定需要回收的 阅读全文
posted @ 2022-02-08 12:41 童话述说我的结局 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 一、引用 Java 中的引用的定义很传统:如果 reference (引用)类型的数据中存储的数值代表的是另外一块内存的起始地址,就称这块内存代表着一个引用。 这种定义很纯粹,但是太过狭隘,一个对象在这种定义下只有被引用或者没有被引用两种状态,对于如何描述一些处于判刑中又或者我们想扔又舍不得的对象就 阅读全文
posted @ 2022-02-07 08:34 童话述说我的结局 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 一、JVM内存模型 1.1、与运行时数据区 前面讲过了运行时数据区那接下来我们聊下内存模型,JVM的内存模型指的是方法区和堆;在很多情况下网上讲解会把内存模型和运行时数据区认为是一个东西,这是错误的想法,如果不信可以自己去官网求证 内存模型我们可以分为非堆区(元空间,用的是本地内存)和堆区,在堆区分 阅读全文
posted @ 2022-02-02 17:12 童话述说我的结局 阅读(382) 评论(0) 推荐(0) 编辑
摘要: 一、java对象的内存布局 一个Java对象在内存中包括3个部分:对象头、实例数据和对齐填充 二、验证hashCode的储存方式 使用jol工具导入对应包、 <dependency> <groupId>org.openjdk.jol</groupId> <artifactId>jol-core</a 阅读全文
posted @ 2022-02-01 17:24 童话述说我的结局 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 一、CPU和内存的交互 今天除夕,祝大家新年快乐,其实,我们知道的,我们的CPU跟内存会有非常频繁的交互,因为如果这个频繁的交互是交给我们的磁盘的话,那么随着我们的CPU运转速度越来越快,那么我们的磁盘的读写性能远远跟不上我们的CPU读写的速度,哪怕是我们现在的SSD,固态硬盘,也仅仅只是减少了我们 阅读全文
posted @ 2022-01-31 07:31 童话述说我的结局 阅读(431) 评论(0) 推荐(2) 编辑
摘要: 一、日志和监控 1.1、Log 1.1.1、容器级别 通过docker命令查看容器级别的日志 docker ps >containerid docker logs containerid >查看容器的日志情况 kubectl命令查看 kubectl logs -f <pod-name> -c <co 阅读全文
posted @ 2022-01-30 09:21 童话述说我的结局 阅读(383) 评论(0) 推荐(0) 编辑
摘要: 一、常见的部署方案 滚动更新 服务不会停止,但是整个pod会有新旧并存的情况。 重新创建 先停止旧的pod,然后再创建新的pod,这个过程服务是会间断的。 蓝绿 (无需停机,风险较小) 部署v1的应用(一开始的状态)所有外部请求的流量都打到这个版本上 部署版本2的应用版本2的代码与版本1不同(新功能 阅读全文
posted @ 2022-01-29 20:52 童话述说我的结局 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 一、Resource和Dashboard 1.1、Resource 因为K8S的最小操作单元是Pod,所以这里主要讨论的是Pod的资源 官网:https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-cont 阅读全文
posted @ 2022-01-28 18:12 童话述说我的结局 阅读(227) 评论(0) 推荐(0) 编辑