首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
pianozcl
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
21
文章 21
沸点 0
赞
21
返回
|
搜索文章
最新
热门
HashMap源码解析
本篇文章来介绍我们常用的集合类 HashMap,它通过散列函数将数据映射到表中的某个位置,以提升查询速度。其底层用于存放数据的数组也叫散列表 我们知道 Java 中的 HashMap 底层是一个数组,数组的每个元素是一个链表或者红黑树。我们也知道它的一些特性,比如允许key、v…
Redis源码解析-skiplist跳跃表
跳跃表是一种有序数据结构,查找和插入操作的平均时间复杂度都是O(log n)。与常用的自平衡搜索树相比,例如红黑树,跳跃表通过多层链表实现,其结构简单易于实现,其查询删除效率通常堪比红黑树。本篇文章会对跳跃表简要说明,并重点分析Redis跳跃表核心源码 1. 跳跃表 跳跃表是通…
ArrayList源码解析
在业务场景以及日常开发中,ArrayList往往是最频繁使用的List实现类,这由它的结构以及特性决定。ArrayList顾名思义,其底层是由数组实现,因此查询时间复杂度是常数级别的,再加之有一些小优化,查询速度会更快。由于其底层是数组实现,插入和删除都是O(n)级别的。业务场…
Visual Studio Code debug Redis
阅读Redis源码避免不了debug,直接使用GDB调试很不方便。本文分享使用Visual Studio Code调试Redis的方式。 1. 插件市场安装所需编译器 我这里导入源码后到目录结构如下图。首次下载记得进入根目录编译 2. 添加debug所需配置 3. debug
一分钟看明白Java位运算
在阅读源码的时候,经常会碰到位运算,例如Java8中的HashMap部分源码。不同语言有各自的位运算方式,又大同小异。本篇文章带你一分钟彻底掌握Java中的位运算 1. 整数的机器级表示 对于Java,int类型长度为32位。我这里为了方便说明,假设某种语言的整数类型位4位,那…
Redis源码解析-SDS简单动态字符串
1. 获取源码 2. SDS数据结构 以下代码是数据结构的定义,可以看到字符串有五种定义。只有第一种结构不一样,下面四种结构类似 以上参数,其中len,alloc,flags都是字符串的描述信息,可以看作是头信息。真正存储字符串的是buf[]数组,这个数组是由malloc函数动…
【Docker】Tomcat镜像构建与应用集成
1. 拉取tomcat镜像 2. 启动容器 执行以上命令进入容器,并进入webapps文件夹下,发现是空文件夹。在tomcat问价夹下还有一个webapps.dist目录,这个才是我们需要的 3. 部署war包到tomcat容器 4. 使用Dockerfile来部署应用 4.1…
【Docker】Docker集成Nginx部署静态网站
1. 创建目录编写Dockerfile 2. 构建镜像 3. 配置静态页面 4. 启动容器 访问浏览器可以看到刚才部署的页面。若要对页面作出修改,只需要修改宿主机映射目录下的文件,无需重新启动。这也是-v参数的作用
【Docker】Dockerfile构建镜像与命令详解
传统方式部署集群,你需要在每台机器搭建环境,配置各种中间件,这样不但效率低下,而且很难保证环境的一致性,而且配置如果有改动,需要挨个机器修改。 有了Docker,上述问题都能解决。但是官方镜像大多时候并不能满足需求,因此需要自己构建适用于应用的镜像。构建镜像可以以交互式方式启动…
【Redis运维篇】Redis高可用之哨兵模式
Redis主从复制模式下,一旦主节点发生故障,需要人工干预进行故障转移,故障转移的实时性与准确性都无法保障。Redis2.6版本以上提供了Redis Sentinel(哨兵)来自动发现和转移故障,实现高可用 Redis Sentinel包含若干个Sentinel节点和Redis…
下一页
个人成就
文章被点赞
27
文章被阅读
20,251
掘力值
547
关注了
16
关注者
5
收藏集
8
关注标签
82
加入于
2020-03-13