产品
解决方案
文档与社区
权益中心
定价
云市场
合作伙伴
支持与服务
了解阿里云
AI 助理
备案
控制台
开发者社区
首页
探索云世界
探索云世界
云上快速入门,热门云上应用快速查找
了解更多
问产品
动手实践
官方博客
考认证
TIANCHI大赛
活动广场
活动广场
丰富的线上&线下活动,深入探索云世界
任务中心
做任务,得社区积分和周边
高校计划
让每位学生受益于普惠算力
训练营
资深技术专家手把手带教
话题
畅聊无限,分享你的技术见解
开发者评测
最真实的开发者用云体验
乘风者计划
让创作激发创新
阿里云MVP
遇见技术追梦人
直播
技术交流,直击现场
下载
下载
海量开发者使用工具、手册,免费下载
镜像站
极速、全面、稳定、安全的开源镜像
技术资料
开发手册、白皮书、案例集等实战精华
插件
为开发者定制的Chrome浏览器插件
探索云世界
新手上云
云上应用构建
云上数据管理
云上探索人工智能
云计算
弹性计算
无影
存储
网络
倚天
云原生
容器
serverless
中间件
微服务
可观测
消息队列
数据库
关系型数据库
NoSQL数据库
数据仓库
数据管理工具
PolarDB开源
向量数据库
热门
百炼大模型
Modelscope模型即服务
弹性计算
云原生
数据库
云效DevOps
龙蜥操作系统
平头哥
钉钉开放平台
物联网
大数据
大数据计算
实时数仓Hologres
实时计算Flink
E-MapReduce
DataWorks
Elasticsearch
机器学习平台PAI
智能搜索推荐
数据可视化DataV
人工智能
机器学习平台PAI
视觉智能开放平台
智能语音交互
自然语言处理
多模态模型
pythonsdk
通用模型
开发与运维
云效DevOps
钉钉宜搭
支持服务
镜像站
码上公益
viidqgcg2s2nk_个人页
viidqgcg2s2nk
文章
68
问答
0
视频
0
个人介绍
暂无个人介绍
擅长的技术
获得更多能力
通用技术能力:
暂时未有相关通用技术能力~
云产品技术能力:
暂时未有相关云产品技术能力~
阿里云技能认证
详细说明
高分内容
最新动态
文章
问答
视频
暂无更多信息
2022年05月
05.10
21:46:47
发表了文章
2022-05-10 21:46:47
LotusDB 设计与实现—3 内存 memtable
顾名思义,memtable 是内存中维护的组件,在 LSM Tree 存储模型中,memtable 相当于一块内存 buffer,数据写入到 WAL 后,然后在 memtable 中更新。memtable 的数据积累到一定的阈值之后,批量 Flush 到磁盘,这样做的目的是延迟写磁盘,并且将随机的 IO 写入转换为批量的顺序 IO,这也是 LSM 存储模型的核心思路。
05.10
21:45:20
发表了文章
2022-05-10 21:45:20
LotusDB 设计与实现—2 WAL 日志
WAL 是 Write Ahead Log 的简称,通常叫做预写日志,是为了预防内存崩溃,保证数据不丢失的常用手段。WAL 是 LSM 存储模型中重要的组件,在 LotusDB 当中的重要性是一样的。
05.10
21:40:49
发表了文章
2022-05-10 21:40:49
用 Go 语言写了一个全新的存储引擎
经历了大概 4 个月的打磨,LotusDB 的第一个 release 版本终于发布了,我看了下,有 200 多次 commit(接近 rosedb 一年多的 commit 次数了)。
05.10
21:39:07
发表了文章
2022-05-10 21:39:07
学习 C++ 的一点浅薄经验
工作所需,需要学习下 C++,今天就谈一下自己是怎么快速学习 C++,并且在工作中实际上手开发的,希望能够给大家一些启发。
05.10
21:37:42
发表了文章
2022-05-10 21:37:42
实现分布式 kv—2 raft leader 选举
raft 是一个分布式一致性算法,主要保证的是在分布式系统中,各个节点的数据一致性。raft 算法比较复杂,因为它所解决的分布式一致性问题本来就是一个比较棘手的问题,raft 算法的实现主要可以拆解为三个部分: • 领导选举 • 日志复制 • 安全性
05.10
21:36:07
发表了文章
2022-05-10 21:36:07
实现分布式 kv—1 Standalone KV
TinyKV 是 PingCAP 的一个开源课程:https://github.com/tidb-incubator/tinykv,旨在实现一个简易的分布式 kv,其中很多代码框架它已经提供了,我们只需要填充具体的逻辑即可。
05.10
21:32:30
发表了文章
2022-05-10 21:32:30
Go 语言—数据结构和算法项目推荐
Hello大家好,我是 roseduan,上一篇文章我为大家推荐了一些 Go 语言的入门练手项目,希望对你有所帮助。 今天分享的是一些数据结构和算法的项目,在我自己学习 Go 语言的时候,在掌握基础的语法知识之后,会针对性的刷一些 leetcode 题目,借此来巩固自己的语法知识,然后也能够保持解算法题目的感觉,可谓是一举两得吧。 所以从下面这些优秀的项目中,一定能够找适合你的项目哦!
05.10
21:30:24
发表了文章
2022-05-10 21:30:24
Go 语言入门练手项目推荐
大家好,我是 roseduan,经常看到一些小伙伴学习完 Go 语言的基础知识之后,无法找到合适的练手项目,然后就很迷茫。 今天我向大家推荐几个我觉得还不错的 Go 语言入门练手项目,你可以根据自己的兴趣,选择一个合适的,自己去看看,学习一下。
05.10
21:28:09
发表了文章
2022-05-10 21:28:09
最简单的 gRPC 教程—4 多路复用、元数据、负载均衡
前面已经介绍了几种 gRPC 的进阶特性,这篇文章再来看看 gRPC 的: • 多路复用 • 元数据 • 负载均衡 我把前面的 Order 服务再复制一份,作为本篇文章的代码演示。
05.10
21:26:12
发表了文章
2022-05-10 21:26:12
最简单的 gRPC 教程—3 拦截器、截止、取消
前面的两篇文章已经基本讲述了 gRPC 的使用方法,相信已经能够应对大多数开发场景了,只不过我们有时候需要针对业务作出一些定制,这时候就必须要更加了解 gRPC 的一些特性了,比如: • 拦截器 • 截止时间 • 取消
05.10
21:24:31
发表了文章
2022-05-10 21:24:31
最简单的 gRPC 教程—2 通信模式
gRPC 包含四种基础的通信模式: • 一元模式(Unary RPC) • 服务器端流 RPC(Server Sreaming RPC) • 客户端流 RPC(Client Streaming RPC) • 双向流 RPC(Bidirectional Streaming RPC)
05.06
21:44:55
发表了文章
2022-05-06 21:44:55
Java 并发设计模式(二)
Thread Local Storage 表示线程本地存储模式。 大多数并发问题都是由于变量的共享导致的,多个线程同时读写同一变量便会出现原子性,可见性等问题。局部变量是线程安全的,本质上也是由于各个线程各自拥有自己的变量,避免了变量的共享。
05.06
21:26:36
发表了文章
2022-05-06 21:26:36
LotusDB 设计与实现—1 基本概念
LotusDB 是一个基于 LSM Tree 进行设计,并结合 B+ 树优势的单机 KV 存储引擎,读写性能稳定、快速。
05.06
21:23:33
发表了文章
2022-05-06 21:23:33
用 Go 语言造了一个全新的 kv 存储引擎
经历了大概 4 个月的打磨,LotusDB 的第一个 release 版本终于发布了,我看了下,有 200 多次 commit(接近 rosedb 一年多的 commit 次数了)。
05.06
21:14:50
发表了文章
2022-05-06 21:14:50
rosedb 事务实践
事务是传统关系型数据库中必不可少的功能,例如 Mysql、Oracle、PostgreSql 都支持事务,但是在 NoSQL 数据库中,事务的概念比较弱化,在实现上也没有关系型数据库那么复杂。
05.06
21:05:55
发表了文章
2022-05-06 21:05:55
从零实现一个 k-v 存储引擎
写这篇文章的目的,是为了帮助更多的人理解 rosedb,我会从零开始实现一个简单的包含 PUT、GET、DELETE 操作的 k-v 存储引擎,你可以将其看做是一个简易版本的 rosedb,就叫它 minidb 吧(mini 版本的 rosedb)。
05.06
20:57:03
发表了文章
2022-05-06 20:57:03
Go 语言学习路线来啦
时不时的有人问我一些关于 Go 语言学习路线、学习资源方面的问题,这篇文章就来详细说一说。借此希望给那些正在学习,或是想学习 Go 语言的朋友一些帮助。
05.06
20:50:13
发表了文章
2022-05-06 20:50:13
使用 Go 实现一个简单的 k-v 数据库
大家好,我是 roseduan,今天我向大家推荐一下我写的一个 Go 语言实战项目—rosedb。
05.06
20:48:02
发表了文章
2022-05-06 20:48:02
最简单的 gRPC 教程— 1 初识 gRPC
gRPC 是 Google 开源的一个高性能的 RPC(Remote Procedure Call) 框架
05.06
20:40:06
发表了文章
2022-05-06 20:40:06
学习 Go 语言 1 — 基础语法(二)
最近在闲来无事之际开始学习点 Go 语言,Go 语言在近几年很火,有 Docker 和 Kubernetes 这两大杀器做支撑,它已经是云计算领域主流的编程语言了,并且有蚕食部分 C、C++、Java 等领域的趋势,怀着一些对新技术的兴趣,我开始学习了 Go 语言,在对其有了简单的了解之后,我渐渐开始喜欢上这门语言了。
05.06
20:39:53
发表了文章
2022-05-06 20:39:53
学习 Go 语言 1 — 基础语法(一)
最近在闲来无事之际开始学习点 Go 语言,Go 语言在近几年很火,有 Docker 和 Kubernetes 这两大杀器做支撑,它已经是云计算领域主流的编程语言了,并且有蚕食部分 C、C++、Java 等领域的趋势,怀着一些对新技术的兴趣,我开始学习了 Go 语言,在对其有了简单的了解之后,我渐渐开始喜欢上这门语言了。
05.06
18:45:35
发表了文章
2022-05-06 18:45:35
经典排序算法分析(二)
排序指的是将一组对象按照特定的逻辑顺序重新排列的过程,排序的应用十分广泛,可以说是无处不在,它在商业数据处理和现代科学计算中发挥着举足轻重的作用,目前已知的应用最广泛的排序算法—快速排序,更是被誉为了 20 世纪科学和工程领域的十大算法之一。
05.06
18:42:27
发表了文章
2022-05-06 18:42:27
经典排序算法分析(一)
排序指的是将一组对象按照特定的逻辑顺序重新排列的过程,排序的应用十分广泛,可以说是无处不在,它在商业数据处理和现代科学计算中发挥着举足轻重的作用,目前已知的应用最广泛的排序算法—快速排序,更是被誉为了 20 世纪科学和工程领域的十大算法之一。
05.06
18:24:45
发表了文章
2022-05-06 18:24:45
字符串匹配之 BM 算法
字符串匹配是计算机科学领域中最古老、研究最广泛的问题之一,层出不穷的前辈们也总结了非常多经典的优秀算法,例如 BF 算法、RK 算法、BM 算法、KMP 算法,今天我介绍的主角是 BM 算法。
05.06
18:17:32
发表了文章
2022-05-06 18:17:32
Mysql 索引模型 B+ 树详解
首先,在了解 mysql 中的 B+ 树之前,我们需要搞懂什么是二叉树。二叉树是一种常见的非线形数据结构,数据是以一对多的形态组织起来的
05.06
18:13:22
发表了文章
2022-05-06 18:13:22
收藏!Linux常用命令合集
收藏!Linux常用命令合集
05.06
18:10:35
发表了文章
2022-05-06 18:10:35
Java SDK 并发包全面总结(三)
Java 并发包中的 Lock 和 Condition 主要解决的是线程的互斥和同步问题,这两者的配合使用,相当于 synchronized、wait()、notify() 的使用。
05.06
18:09:35
发表了文章
2022-05-06 18:09:35
Java SDK 并发包全面总结(二)
Java 并发包中的 Lock 和 Condition 主要解决的是线程的互斥和同步问题,这两者的配合使用,相当于 synchronized、wait()、notify() 的使用。
05.06
18:08:00
发表了文章
2022-05-06 18:08:00
十大排序算法总结(三)
排序算法中涉及到了两个概念: 原地排序:根据算法对内存的消耗情况,可以将算法分为原地排序和非原地排序,原地排序特指空间复杂度为 O(1) 的排序。 排序算法的稳定性:例如排序一个数组 [1, 5, 3, 7, 4, 9, 5],数组中有两个 5,排序之后是 [1, 3, 4, 5, 5, 7, 9],如果排序之后的两个 5 的前后顺序没有发生变化,那么称这个排序是稳定的,反之则是不稳定的。
05.06
18:06:53
发表了文章
2022-05-06 18:06:53
十大排序算法总结(二)
排序算法中涉及到了两个概念: 原地排序:根据算法对内存的消耗情况,可以将算法分为原地排序和非原地排序,原地排序特指空间复杂度为 O(1) 的排序。 排序算法的稳定性:例如排序一个数组 [1, 5, 3, 7, 4, 9, 5],数组中有两个 5,排序之后是 [1, 3, 4, 5, 5, 7, 9],如果排序之后的两个 5 的前后顺序没有发生变化,那么称这个排序是稳定的,反之则是不稳定的。
05.06
18:04:38
发表了文章
2022-05-06 18:04:38
十大排序算法总结(一)
排序算法中涉及到了两个概念: 原地排序:根据算法对内存的消耗情况,可以将算法分为原地排序和非原地排序,原地排序特指空间复杂度为 O(1) 的排序。 排序算法的稳定性:例如排序一个数组 [1, 5, 3, 7, 4, 9, 5],数组中有两个 5,排序之后是 [1, 3, 4, 5, 5, 7, 9],如果排序之后的两个 5 的前后顺序没有发生变化,那么称这个排序是稳定的,反之则是不稳定的。
05.06
17:54:59
发表了文章
2022-05-06 17:54:59
Java 并发设计模式(三)
Thread Local Storage 表示线程本地存储模式。 大多数并发问题都是由于变量的共享导致的,多个线程同时读写同一变量便会出现原子性,可见性等问题。局部变量是线程安全的,本质上也是由于各个线程各自拥有自己的变量,避免了变量的共享。
05.06
17:49:09
发表了文章
2022-05-06 17:49:09
Java 并发设计模式(一)
Thread Local Storage 表示线程本地存储模式。 大多数并发问题都是由于变量的共享导致的,多个线程同时读写同一变量便会出现原子性,可见性等问题。局部变量是线程安全的,本质上也是由于各个线程各自拥有自己的变量,避免了变量的共享。
05.06
17:37:37
发表了文章
2022-05-06 17:37:37
Java SDK 并发包全面总结(一)
Java 并发包中的 Lock 和 Condition 主要解决的是线程的互斥和同步问题,这两者的配合使用,相当于 synchronized、wait()、notify() 的使用。
05.06
17:26:34
发表了文章
2022-05-06 17:26:34
Java 中的线程安全容器
常用的一些容器例如 ArrayList、HashMap、都不是线程安全的,最简单的将这些容器变为线程安全的方式,是给这些容器所有的方法都加上 synchronized 关键字。
05.06
17:21:58
发表了文章
2022-05-06 17:21:58
一文读懂 Java 中的原子类
Java 并发包中的原子类都是基于无锁方案实现的,相较于传统的互斥锁,无锁并没有加锁、解锁、线程切换的消耗,因此无锁解决方案的性能更好,同时无锁还能够保证线程安全。
05.06
17:12:39
发表了文章
2022-05-06 17:12:39
Java 并发学习笔记(二)
请参看前一篇文章:Java 并发学习笔记(一)——原子性、可见性、有序性问题
05.06
17:09:25
发表了文章
2022-05-06 17:09:25
吐血分享谷歌浏览器插件
在如今的浏览器市场份额中,谷歌浏览器一家独大,霸占了将近百分之六十的份额。谷歌浏览器的流行程度可见一斑,我平时用的最多的浏览器就是它了。
05.06
17:03:25
发表了文章
2022-05-06 17:03:25
Java 并发学习笔记(一)——原子性、可见性、有序性问题
计算机的 CPU、内存、I/O 设备的速度一直存在较大的差异,依次是 CPU > 内存 > I/O 设备,为了权衡这三者的速度差异,主要提出了三种解决办法: • CPU 增加了缓存,均衡和内存的速度差异 • 发明了进程、线程,分时复用 CPU,提高 CPU 的使用效率 • 编译指令优化,更好的利用缓存 三种解决办法虽然有效,但是也带来了另外的三个问题,分别就是并发 bug 产生的源头。
05.06
17:00:09
发表了文章
2022-05-06 17:00:09
Spring boot 整合 Elasticsearch
前面学习了 Elasticsearch 的简单基本操作,例如安装,基本的操作命令等,今天就来看看 es 和 Spring boot 的简单整合,实现增删改查的功能。众所周知,Spring boot 支持多种 NoSql 数据库,例如 redis、mongodb,elasticsearch 也是其中的一种。并且实现了 Spring boot 一贯的自动化配置,使用起来也是十分方便的。
05.06
16:57:39
发表了文章
2022-05-06 16:57:39
Spring Data JPA设置表联合主键
遇到了一个新的问题,就是如何使用 Spring Data JPA 建立表的联合主键?网上找了很多答案,自己也踩了一些坑,总结出了三种方式,记录一下。
05.06
16:55:18
发表了文章
2022-05-06 16:55:18
Tomcat 上的项目参数传递问题
部署在 Tomcat 上面的 Spring Boot 项目,在某些情况下,我们可能会修改配置文件中的参数,这样应该怎么做呢?
05.06
16:50:41
发表了文章
2022-05-06 16:50:41
动态控制 Spring Boot 中的 @Scheduled 定时任务
Spring Boot 中的 @Scheduled 注解为定时任务提供了一种很简单的实现,只需要在注解中加上一些属性,例如 fixedRate、fixedDelay、cron(最常用)等等,并且在启动类上面加上 @EnableScheduling 注解,就可以启动一个定时任务了。 但是在某些情况下,并没有这么简单,例如项目部署上线之后,我们可能会修改定时任务的执行时间,并且停止、重启定时任务等,因为定时任务是直接写死在程序中的,修改起来不是非常的方便。所以,简单记录一下自己的一些解决方案,仅供参考。
05.06
16:48:20
发表了文章
2022-05-06 16:48:20
Elasticsearch 学习笔记——2.es 的简单命令操作
首先,我们需要一些数据来支持我们的操作,这里我采用的是使用 filebeat 来采集数据到 es ,filebeat 也是 elastic 系列的产品,专门用来收集日志文件,使用十分的简单,在官网(下载地址)下载安装包解压,然后修改一下配置文件 filebeat.yml,
05.06
16:43:30
发表了文章
2022-05-06 16:43:30
浅谈 Spring Boot 中的 @Conditional 注解
Spring boot 中的 @Conditional 注解是一个不太常用到的注解,但确实非常的有用,我们知道 Spring Boot 是根据配置文件中的内容,决定是否创建 bean,以及如何创建 bean 到 Spring 容器中,而 Spring boot 自动化配置的核心控制,就是 @Conditional 注解。 @Conditional 注解是 Spring 4.0 之后出的一个注解,与其搭配的一个接口是 Condition,@Conditional 注解会根据具体的条件决定是否创建 bean 到容器中,接下来看看 @Conditional 注解的简单使用。
05.06
16:39:19
发表了文章
2022-05-06 16:39:19
Elasticsearch 学习笔记——1.在 Linux 上安装 elasticsearch
一个偶然的机会,leader 让我看看关于 es 的内容,之前我还未接触过,打开官网一看,发现关于 ealstic 的组件还真是不少,当然 ealsticsearch 应该是其中最流行、最有用和最受欢迎的了,截止到今天(2019.04.05),elasticsearch 在 Github 上面已经有 39k+ star 了。所以,最近在学习它,并且也想写一点学习笔记,分享出来供大家参考。
05.06
16:33:53
发表了文章
2022-05-06 16:33:53
数据结构与算法——图
前面说完了树这种数据结构,接下来在看看一种更加复杂的非线性数据结构——图。
05.06
16:29:07
发表了文章
2022-05-06 16:29:07
数据结构与算法——堆的应用
前面说完了堆这种数据结构,并且讲到了它很经典的一个应用:堆排序,其实堆这种数据结构还有其他很多的应用,今天就一起来看看,主要有下列内容: • 优先级队列 • 求 Top K 问题 • 求中位数
05.06
16:26:46
发表了文章
2022-05-06 16:26:46
数据结构与算法——堆
堆(Heap),其实是一种特殊的二叉树,主要满足了二叉树的两个条件: 1. 堆是一种完全二叉树,还记得完全二叉树的定义吗?叶节点都在最底下两层,最后一层的节点都靠左排列,并且除了最后一层,其他层的节点个数都要达到最大,这种树叫做完全二叉树。 2. 堆中的每个节点的值都必须大于等于(或者小于等于)其左右子节点的值。 对于堆中的每个节点都大于等于其左右子节点的值,叫做大顶堆,反之,则叫做小顶堆。看看下面的图就能懂了。
1
2
跳转至:
发表了文章
2022-05-10
LotusDB 设计与实现—3 内存 memtable
发表了文章
2022-05-10
LotusDB 设计与实现—2 WAL 日志
发表了文章
2022-05-10
用 Go 语言写了一个全新的存储引擎
发表了文章
2022-05-10
学习 C++ 的一点浅薄经验
发表了文章
2022-05-10
实现分布式 kv—2 raft leader 选举
发表了文章
2022-05-10
实现分布式 kv—1 Standalone KV
发表了文章
2022-05-10
Go 语言—数据结构和算法项目推荐
发表了文章
2022-05-10
Go 语言入门练手项目推荐
发表了文章
2022-05-10
最简单的 gRPC 教程—4 多路复用、元数据、负载均衡
发表了文章
2022-05-10
最简单的 gRPC 教程—3 拦截器、截止、取消
发表了文章
2022-05-10
最简单的 gRPC 教程—2 通信模式
发表了文章
2022-05-06
Java 并发设计模式(二)
发表了文章
2022-05-06
LotusDB 设计与实现—1 基本概念
发表了文章
2022-05-06
用 Go 语言造了一个全新的 kv 存储引擎
发表了文章
2022-05-06
rosedb 事务实践
发表了文章
2022-05-06
从零实现一个 k-v 存储引擎
发表了文章
2022-05-06
Go 语言学习路线来啦
发表了文章
2022-05-06
使用 Go 实现一个简单的 k-v 数据库
发表了文章
2022-05-06
最简单的 gRPC 教程— 1 初识 gRPC
发表了文章
2022-05-06
学习 Go 语言 1 — 基础语法(二)
正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息
正在加载, 请稍后...
暂无更多信息