腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
腾讯云架构师技术同盟
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
腾讯云架构师技术同盟
返回腾讯云官网
我的独立博客
专栏成员
举报
43
文章
5289
阅读量
13
订阅数
订阅专栏
申请加入专栏
全部文章(43)
函数(19)
数据(9)
haskell(8)
内存(8)
存储(6)
缓存(5)
优化(4)
语法(4)
指针(4)
rust(3)
case(3)
list(3)
mysql(3)
连接(3)
数组(3)
系统(3)
原理(3)
源码(3)
字符串(3)
php(2)
go(2)
cpu(2)
instance(2)
redis(2)
sum(2)
time(2)
typeclass(2)
遍历(2)
变量(2)
编码(2)
编译(2)
测试(2)
程序(2)
队列(2)
对象(2)
二进制(2)
工作(2)
计算机(2)
架构(2)
客户端(2)
设计(2)
事务(2)
算法(2)
索引(2)
数据库(1)
git(1)
linux(1)
centos(1)
http(1)
ssh(1)
推荐系统(1)
数据结构(1)
迁移(1)
bitmap(1)
cat(1)
client(1)
cube(1)
function(1)
ghci(1)
gmp(1)
gnu(1)
height(1)
int(1)
key(1)
keynote(1)
lambda(1)
max(1)
mmap(1)
mutex(1)
pool(1)
product(1)
reduce(1)
sharing(1)
shift(1)
simd(1)
slice(1)
string(1)
sudo(1)
trace(1)
wait(1)
websocket(1)
x86(1)
编译器(1)
并发(1)
部署(1)
磁盘(1)
泛型(1)
服务(1)
服务端(1)
服务器(1)
工具(1)
继承(1)
基础(1)
集合(1)
集群(1)
解决方案(1)
进程(1)
乱码(1)
内存管理(1)
搜索(1)
调试(1)
统计(1)
网络编程(1)
线程(1)
线程安全(1)
协议(1)
性能(1)
性能优化(1)
硬件(1)
源码分析(1)
原型(1)
数据库连接池(1)
搜索文章
搜索
搜索
关闭
Mysql身份认证过程
缓存
mysql
连接
字符串
存储
最近有一些hersql的用户希望能支持mysql的caching_sha2_password认证方式,caching_sha2_password与常用的mysql_native_password认证过程差异还是比较大的,因此抽空研究了一下caching_sha2_password身份认证过程,并为hersql支持了caching_sha2_password的能力
Orlion
2025-01-11
65
0
使用AVX2指令集加速推荐系统MMR层余弦相似度计算
性能
优化
源码
推荐系统
算法
前一段时间公司上线了一套Go实现的推荐系统,上线后发现MMR层虽然只有纯计算但耗时十分离谱,通过pprof定位问题所在之后进行了优化,虽然降低了非常多但是我们认为其中还有优化空间。
Orlion
2024-10-11
149
0
redis georadius源码分析与性能优化
性能优化
优化
源码分析
redis
编码
最近接到一个需求,开发中使用了redis georadius命令取附近给定距离内的点。完工后对服务进行压测后发现georadius的性能比预期要差,因此我分析了georadius的源码,并对原始的实现方案进行了优化,总结成了本文。
Orlion
2024-09-02
109
0
与世界分享我刚编的mysql http隧道工具-hersql原理与使用
原理
http
mysql
工具
客户端
本文是与世界分享我刚编的转发ntunnel_mysql.php的工具的后续,之前的实现有些拉胯,这次重构了下。需求背景是为了在本地macbook上通过开源的mysql可视化客户端(dbeaver、Sequel Ace等)访问我司测试环境的mysql,整个测试环境的如图所示:
Orlion
2024-09-02
141
0
Go数据库连接池设置不合理导致大量TIME_WAIT连接占满端口问题排查与解决
go
time
wait
连接
数据库连接池
最近公司内部准备尝试使用下腾讯的TDSQL,因此组内同学写了一段很简单的查询TDSQL的go web程序,使用ab对其进行一个简单压测以获取TDSQL的性能表现,go代码如下:
Orlion
2024-09-02
173
0
统计一个数字二进制位1的个数
二进制
函数
算法
统计
硬件
问题本质实际就是给定一个数字,比如一个二进制数10101101,计算出这个数字中二进制位1的个数,对于10101101这个数字来说它有5个位为1,即:10101101
Orlion
2024-09-02
110
0
记一次SIMD指令优化计算的失败经历
函数
优化
simd
编译
测试
书接上回 《统计一个数字二进制位1的个数》,现在我们已经知道如何快速计算出一个int64数字的二进制位1的个数,那么回到我们最初的需求,我们的目的是快速统计一个bitmap中二进制位1的个数,假设我们使用[]uint64来实现bitmap,那么如果要统计这个bitmap中二进制位1的个数,我们可以遍历每个元素,计算出每个uint64元素二进制位1的个数,最后加起来,代码大概如下:
Orlion
2024-09-02
117
0
一种应用于特定场景的支持LRU的线程安全的无锁uint32->uint32 cache实现
缓存
key
遍历
线程安全
存储
几年前给公司前台业务一个QPS很高的接口做了一个优化,主要请求来源是当前在线用户,接口核心逻辑就是从codis中根据一个数字查询对应的用户id(小于1亿),这两个数字的映射关系是不变的,可以理解为codis中有一个map[uint32]uint32的映射表,这个映射表只增不改。
Orlion
2024-09-02
84
0
rust所有权和借用中的一些case
变量
源码
指针
rust
case
学习rust有一段时间了,也用rust写了两个小项目,过程中发现一些rust教程在所有权和引用这一章节的讲解还是不够丰富,有很多case没有讲到,对所有权和引用的理解不够深入,这就导致实际应用时经常卡在所有权和引用,后面查阅一些资料在社区请教一些大佬后才理解,因此将最近练习过程中遇到的一些所有权和引用方面的问题总结成本文,分享给大家,帮大家踩踩坑。
Orlion
2024-09-02
119
0
一个用rust写的类似于Skywalking/CAT的迷你trace PHP扩展
rust
cat
time
trace
php
最近在学习rust,恰好看到了skywalking的php扩展采用了rust编写。有用过Skywalking/CAT之类监控系统的同学应该知道,这类系统对我们开发工作帮助非常大,能够非常快的帮我们定位到问题的关键,比如说现在有一个api的请求响应非常慢,那我们就可以从系统提供的web ui中查询这个api请求的链路各个节点的耗时,从而精准的定位慢的关键。
Orlion
2024-09-02
72
0
磁盘哈希结构-Linear Hashing
内存
存储
数据结构
遍历
磁盘
最近在思考一个问题,如果一个存储引擎不需要支持范围查询,那么使用hashtable这样的数据结构是否更合适?恰好看到了lotusdb中使用了一个diskhash的库,从源码看是使用了一种Linear Hashing的哈希表数据结构,由于磁盘与内存的特性不同,因此磁盘哈希结构与常见的内存hashtable不太一样,特意研究了下。
Orlion
2024-09-02
126
0
又一个Rust练手项目-wssh(SSH over Websocket Client)
连接
ssh
rust
client
websocket
公司内部的发布系统提供一个连接到k8s pod的web终端,可以在网页中连接到k8s pod内。实现原理大概为通过websocket协议代理了k8s pod ssh,然后在前端通过xterm.js+websocket实现了web终端的效果。
Orlion
2024-09-02
127
0
深入理解原子操作的本质
函数
内存
数据
协议
缓存
本文以go1.14 darwin/amd64中的原子操作为例,探究原子操作的汇编实现,引出LOCK指令前缀、可见性、MESI协议、Store Buffer、Invalid Queue、内存屏障,通过对CPU体系结构的探究,从而理解以上概念,并在最终给出一些事实。
Orlion
2024-09-02
266
0
Go源码解析之sync.Mutex锁
源码
go
mutex
队列
函数
在解释Lock()和Unlock()源码之前我们必须先整体了解下Mutex的设计,不然下面的源码很难看懂。
Orlion
2024-09-02
103
0
Golang切片与实现原理
slice
函数
内存
数组
原理
array是切片用来存储数据的底层数组的指针,len为切片中元素的数量,cap为切片的容量即数组的长度
Orlion
2024-09-02
74
0
事务隔离级别实现原理
数据
索引
原理
并发
事务
数据库隔离级别以及Mysql实操 一文中,我描述了为了解决并发事务间的冲突,实现事务的隔离性,SQL标椎定义了四种隔离级别,今天就通过这篇文章来看下SQL标准中每种隔离级别的实现原理以及InnoDB引擎又是如何实现的。
Orlion
2024-09-02
182
0
brk与mmap
函数
内存
原型
指针
mmap
glibc的malloc函数在申请大于128K的内存时使用mmap分配内存,mmap会从堆区和栈区中间的部分划分内存,而在申请小于128K的内存时使用brk从堆上划分内存。
Orlion
2024-09-02
122
0
keynote中插入高亮代码的方法
乱码
搜索
语法
keynote
编码
直接复制vscode中的代码到keynote中效果惨不忍睹,经过一番搜索,发现了一种效果很好的方法,而且keynote中可编辑
Orlion
2024-09-02
141
0
bitcask的设计与实现
存储
工作
设计
数据
索引
最近在研究LSM tree,听闻bitcask在LSM tree各种各样的应用中是一个比较简单的实现,所以就以它为突破口,了解下LSM tree真实世界的实现。
Orlion
2024-09-02
123
0
golang sync.Pool分析
队列
对象
函数
缓存
pool
pin的作用是将当前G与P绑定,禁止被抢占。那么为什么要禁止被抢占呢?原因是G被抢占后再恢复执行之后再绑定的可能就不是被抢占之前的P了
Orlion
2024-09-02
104
0
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档