高性能zap go

一次TiDB GC阻塞引发的性能问题分析

背景 前不久从项目一线同学得到某集群的告警信息,某个时间段 TiDB duration 突然异常升高,持续时间6小时左右,需要定位到具体原因。 分析过程 第一招,初步判断 由于项目条件苛刻,历经苦难才拿到监控,在此之前只能靠现场同学的口述排查,oncall人太难了。。 既然是duration升高,那 ......
性能 问题 TiDB

JAVA中生成随机数Random VS ThreadLocalRandom性能比较

前言 大家项目中如果有生成随机数的需求,我想大多都会选择使用Random来实现,它内部使用了CAS来实现。 实际上,JDK1.7之后,提供了另外一个生成随机数的类ThreadLocalRandom,那么他们二者之间的性能是怎么样的呢? Random的使用 Random类是JDK提供的生成随机数的类, ......

玩转 Go 生态|Hertz WebSocket 扩展简析

WebSocket 是一种可以在单个 TCP 连接上进行全双工通信,位于 OSI 模型的应用层。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。 ......
WebSocket 生态 Hertz Go

goioc:一个使用 Go 写的简易的 ioc 框架

goioc 介绍 goioc 是一个基于 GO 语言编写的依赖注入框架,基于反射进行编写。 支持泛型; 简单易用的 API; 简易版本的对象生命周期管理,作用域内对象具有生命; 延迟加载,在需要的时候才会实例化对象; 支持结构体字段注入,多层注入; 对象实例化线程安全,作用域内只会被执行一次。 下载 ......
简易 框架 goioc ioc Go

CAP 7.0 版本发布通告 - 支持延迟消息,性能炸了?

前言 今天,我们很高兴宣布 CAP 发布 7.0 版本正式版,我们在这个版本中带来了大批新特性以及对性能的优化和改进。 自从今年 1月份发布 6.0 版本以来,已经过去了快1年的时间。在过去的将近1年的时间里,我们也发布了几个次要版本和小版本(6.0.1, 6.1.0, 6.2.0, 6.2.1), ......
通告 性能 版本 消息 CAP

.net6&7中如何优雅且高性能的使用Json序列化

.net中的SourceGenerator让开发者编可以写分析器,在项目代码编译时,分析器分析项目既有的静态代码,允许添加源代码到GeneratorExecutionContext中,一同与既有的代码参与编译。这种技术其实是把一些运行时才能去获取程序集相关资源的方式提前到编译前了。 .net6开始, ......
序列 高性能 net6 Json net

go操作Kafka

1. Kafka介绍 1.1.1. Kafka是什么 kafka使用scala开发,支持多语言客户端(c++、java、python、go等) Kafka最先由LinkedIn公司开发,之后成为Apache的顶级项目。 Kafka是一个分布式的、分区化、可复制提交的日志服务 LinkedIn使用Ka ......
Kafka

Python:对程序做性能分析及计时统计

如果只是想简单地对整个程序做计算统计,通常使用UNIX下的time命令就足够了。由于我用的是Mac系统,和Linux系统的输出可能有不同,不过关键都是这三个时间:user: 运行用户态代码所花费的时间,也即CPU实际用于执行该进程的时间,其他进程和进程阻塞的时间不计入此数字;system: 在内核中... ......
性能分析 性能 程序 Python

Go1.20 新版覆盖率方案解读

玩过Go覆盖率的同学当有所了解,Go的覆盖率方案最初的设计目标仅是针对单测场景,导致其局限性很大。而为了适配更多的场景,行业内各种博客、插件、黑科技介绍也层出不穷。当然,过去我们也开源过Go系统测试覆盖率收集利器 - goc,算其中比较完善,比较系统的了。且从用户使用角度来看,goc也确实解决了行业 ......
覆盖率 方案 Go1 Go 20

MySQL 性能压测工具-sysbench,从入门到自定义测试项

sysbench是一个开源的、基于LuaJIT(LuaJIT 是 Lua 的即时编译器,可将代码直接翻译成机器码,性能比原生 lua 要高) 的、可自定义脚本的多线程基准测试工具,也是目前用得最多的 MySQL 性能压测工具。 基于 sysbench,我们可以对比 MySQL 在不同版本、不同硬件配 ......
sysbench 性能 工具 MySQL

go slice不同初始化方式性能&数组比较

go语言开发中,slice是我们常用的数据类型之一,也是因为它的灵活性,自己也很少使用数组,当然我也知道它的一些特性,不过没有真实的去验证它,因为大多数使用场景没必要对code太过苛刻,但是如果封装作为包为其他逻辑提供使用的时候,我觉得还是要在意这些事的,毕竟作为公共包使用时,也就证明了使用的频率的 ......
数组 性能 方式 slice amp

【性能优化】单一接口优化过程全记录(主要涉及Redis)

接口优化过程记录 问题背景 某个接口耗时长(247ms),但里面逻辑不算复杂,只进行了简单的对象引用以及操作了多次Redis 步骤1:链路追踪,确定业务耗时点 接口里通过链路追踪以及日志查询发现主要是操作Redis的这条链路耗时变长 步骤2:从Redis找问题,列出可能点 原因可能是: Redis本 ......
接口 性能 过程 Redis

Go | 闭包的使用

闭包基本介绍 闭包就是 一个函数 和其相关的 引用环境 组合的一个整体 好处: 保存引用的变量,下次继续使用,不会销毁 下面通过闭包的方式,写一个数字累加器,体验一下闭包的妙处👇 闭包实现数字累加 package main import "fmt" // 累加器 // 闭包 - 函数柯里化 // ......
闭包 Go

.NET性能优化-使用内存+磁盘混合缓存

我们回顾一下上一篇文章中的内容,有一个朋友问我这样一个问题: 我的业务依赖一些数据,因为数据库访问慢,我把它放在Redis里面,不过还是太慢了,有什么其它的方案吗? 其实这个问题比较简单的是吧?Redis其实属于网络存储,我对照下面的这个表格,可以很容易的得出结论,既然网络存储的速度慢,那我们就可以 ......
缓存 磁盘 内存 性能 NET

基于 RocketMQ 的 Dubbo-go 通信新范式

RocketMQ 新功能尝鲜!让 Dubbo-go 通过 RocketMQ 进行 RPC 通信来扩展 Dubbo-go 的通信方式,利用 Dubbo-go 丰富的服务治理能力和 RocketMQ 稳定的 RPC 通信能力,两者强强联合,打造 RPC 通信新范式。 ......
范式 RocketMQ Dubbo-go Dubbo go

.NET性能优化-ArrayPool同时复用数组和对象

前两天在微信后台收到了读者的私信,问了一个这样的问题,由于私信回复有字数和篇幅限制,我在这里统一回复一下。读者的问题是这样的: 大佬您好,之前读了您的文章受益匪浅,我们有一个项目经常占用 7-8GB 的内存,使用了您推荐的ArrayPool以后降低到 4GB 左右,我还想着能不能继续优化,于是 du ......
数组 ArrayPool 对象 同时 性能
共4126篇  :138/138页 首页上一页138下一页尾页