首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
写代码的lorre
掘友等级
后端工程师
|
携程、字节
获得徽章 0
字节跳动技术团队
动态
文章
专栏
沸点
收藏集
关注
作品
赞
5
文章 5
沸点 0
赞
5
返回
|
搜索文章
写代码的lorre
赞了这篇文章
BLACK595
1年前
关注
多用户抢红包,如何保证只有一个抢到
前言 在一个百人群中,群主发了个红包,设置的3个人瓜分。如何能够保证只有3个人能抢到。100个人去抢,相当于就是100个线程去争夺这3个资源,如果处理不好,可能就会发生“超...
24
11
分享
写代码的lorre
后端工程师 @携程、字节
·
1年前
关注
使用前缀和解决【560.和为 K 的子数组】问题
给你一个整数数组 nums 和一个整数 k ,请你统计并返回该数组中和为 k 的子数组的个数 。 子数组是数组中元素的连续非空序列。可以使用前缀和来解决此类问题...
0
评论
分享
写代码的lorre
后端工程师 @携程、字节
·
1年前
关注
Redis是如何支持海量数据的存储和读取的
Redis是一个键值对KV型数据库,数据都是保存在内存中的,可以支持海量数据的存储和读取。Redis是如何做到O(1)时间复杂度的查询?又是如何存储海量数据的?本文将从底层...
3
评论
分享
写代码的lorre
后端工程师 @携程、字节
·
1年前
关注
实现一个LFU算法
LFU,全称Least Frequently Used,即最不经常使用 常被用于缓存淘汰策略,核心思想就是依据缓存的访问次数来降序排序。缓存访问次数多的排前面,当需要删除缓...
13
评论
分享
写代码的lorre
后端工程师 @携程、字节
·
1年前
关注
理解和实现一个LRU算法
LRU,全称Least Recently Used,即最近最少使用 常被用于缓存淘汰策略,核心思想就是依据缓存的访问时间来降序排序。 最新被访问的缓存排前面,当需要删除缓存...
3
评论
分享
写代码的lorre
赞了这篇文章
Melo_
后台开发 | v : Melo__Jun @字节跳动
·
2年前
关注
「Redis原理」Redis 网络模型 -- 阻塞非阻塞IO、IO多路复用、epoll详解
①常见的几种网络模型? ②Java中常见的IO模型 ③什么是IO多路复用 ④IO多路复用的三种实现方式 ⑤边缘触发和水平触发 ⑥select,poll,epoll的区别 ⑦...
27
评论
分享
写代码的lorre
赞了这篇文章
Q的博客
高级技术专家 @美团
·
4年前
关注
深度解析 Raft 分布式一致性协议
笔者期望通过一篇权威靠谱、清晰易懂的系统性文章,帮助读者深入理解 Raft 算法,并能付诸于工程实践中,同时解读不易理解或容易误解的关键点。 本文是 Raft 实战系列理论...
349
51
分享
写代码的lorre
后端工程师 @携程、字节
·
1年前
关注
redis底层数据结构 - 简单动态字符串sds
redis为用户提供了五种基本数据类型:字符串(string)、列表(list)、哈希(hash)、集合(set)、有序集合(zset)。这些对用户提供的数据类型,都是基于...
1
评论
分享
写代码的lorre
后端工程师 @携程、字节
·
1年前
关注
【滑动窗口】1.从长度最小的子数组入门
数组中的窗口,本质就是子数组 字符串中的窗口,本质就是子串 所以滑动窗口一般用来解决数组子数组或字符串子串的问题...
0
评论
分享
写代码的lorre
后端工程师 @携程、字节
·
1年前
关注
LeetCode热题100 - 盛最多水的容器
给定一个长度为n的整数数组height。有n条垂线,第 i 条线的两个端点是(i,0)和(i,height[i])。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最...
0
评论
分享
写代码的lorre
后端工程师 @携程、字节
·
1年前
关注
详解排序之堆排序
堆是一种数据结构,它需要同时满足两个条件: 1. 是一个完全二叉树;2. 所有父节点的值 >= 子节点的值,或所有父节点的值 <= 子节点的值。我们可以使用堆这种数据结构来...
1
评论
分享
写代码的lorre
后端工程师 @携程、字节
·
1年前
关注
golang内存对齐
本文深入分析了什么是内存对齐,为什么需要内存对齐,以及如何进行内存对齐。内存对齐可以减少CPU访问内存次数,提升性能,提升访问的原子性和程序可移植性。了解内存对齐后,可以进...
1
1
分享
写代码的lorre
后端工程师 @携程、字节
·
1年前
关注
字节开源golang单元测试框架mockey实践
单元测试是用来验证代码的正确性。被验证的代码可以是一个模块,一个类,一个函数或者方法。正确性是指在给定的输入下,总能得到预期的输出。本文分享如何使用goconvey + m...
7
9
分享
写代码的lorre
后端工程师 @携程、字节
·
2年前
关注
使用golang实现一个MapReduce
在日常业务开发中,我们经常遇到需要并发处理的场景。比如查询db,为了保证查询性能,拆分成并发请求,减少耗时和提高性能,返回聚合后的结果。我们可以实现一个MapReduce,...
40
8
分享
写代码的lorre
后端工程师 @携程、字节
·
2年前
关注
sync.Once只执行一次的原理
在某些场景下,我们希望某个操作或者函数仅被执行一次,比如单例模式的初始化,一些资源配置的加载等。 golang中的sync.Once就实现了这个功能。...
9
3
分享
写代码的lorre
后端工程师 @携程、字节
·
2年前
关注
WaitGroup原理分析
在实际业务开发中,我们会遇到以下场景:请求数据库,批量获取1000条数据记录后,处理数据。我们可以把一次请求拆分成多次请求,并发去处理,当所有的并发请求完成后,再继续处理这...
0
评论
分享
写代码的lorre
关注了
字节跳动技术团队
后端工程师 @携程、字节
写代码的lorre
后端工程师 @携程、字节
·
2年前
关注
基于Mutex,实现读共享,写互斥 - RWMutex的底层原理和源码分析
在实际业务中,往往是读操作次数大于写操作次数,sync.Mutex提供的互斥锁,不能支持并发的读操作,所以就有了sync.RWMutex。RWMutex具有读共享,写互斥,...
3
评论
分享
写代码的lorre
后端工程师 @携程、字节
·
2年前
关注
golang并发编程基础 - Mutex的使用和源码分析
在实际编码中,我们经常遇到并发问题,产生并发问题的原因主要有以下两点: 存在共享资源 存在非原子性,并发操作共享资源的场景 解决并发问题,常见的方式之一就是使用sync.M...
1
2
分享
下一页
个人成就
文章被点赞
133
文章被阅读
29,985
掘力值
1,164
字节跳动技术团队
关注了
3
关注者
43
收藏集
2
关注标签
7
加入于
2021-12-03