[转帖]perf学习-linux自带性能分析工具

目前在做性能分析的事情,之前没怎么接触perf,找了几篇文章梳理了一下,按照问题的形式记录在这里。 方便自己查看。 什么是perf? linux性能调优工具,32内核以上自带的工具,软件性能分析。在2.6.31及后续版本的Linux内核里,安装perf非常的容易。 几乎能够处理所有与性能相关的事件。

开源.NetCore通用工具库Xmtool使用连载 - 随机值篇

【Github源码】 《上一篇》 详细介绍了Xmtool工具库中的散列算法类库,今天我们继续为大家介绍其中的随机值类库。 基于系统提供的Random获取随机值方法已经足够简单和易用,本类库只对日常开发过程中最常用到的生成随机验证码方法进行了封装,后续发现其他有价值的常用随机值需求,会陆续添加到类库中

纯分享:将MySql的建表DDL转为PostgreSql的DDL

# 背景 现在信创是搞得如火如荼,在这个浪潮下,数据库也是从之前熟悉的Mysql换到了某国产数据库。 该数据库我倒是想吐槽吐槽,它是基于Postgre 9.x的基础上改的,至于改了啥,我也没去详细了解,当初的数据库POC测试和后续的选型没太参与,但对于我一个开发人员的角度来说,它给我带来的不便主要是

DevOps|乱谈开源社区、开源项目与企业内部开源

之前的一篇文章《从特拉斯辞职风波到研发效能中的荒唐事》中关于企业内源的内容在研发效能群内引起了大家的热烈讨论。有的小伙伴不同意,有的小伙伴非常不同意,我觉得这都是非常正常的反馈,话不说不透,理不辩不明,我还是特别希望能和大家一起把这个问题弄明白。这篇文章就是那篇文章的后续,本文主要讨论开源社区、开源

纠删码技术在vivo存储系统的演进【上篇】

本文将学术界和工业界的纠删码技术的核心研究成果进行了相应的梳理,然后针对公司线上存储系统的纠删码进行分析,结合互联网企业通用的IDC资源、服务器资源、网络资源、业务特性进行分析对原有纠删码技术进行优化和微创新,提出了融合EC整体方案以及可落地的RS+LRC+中间结果优化+并行修复跨AZ带宽设计方案,为后续的工程实践提供重要原理和架构支撑。

4.9 x64dbg 内存处理与差异对比

LyScript 插件中针对内存读写函数的封装功能并不多,只提供了最基本的`内存读取`和`内存写入`系列函数的封装,本章将继续对API接口进行封装,实现一些在软件逆向分析中非常实用的功能,例如ShellCode代码写出与置入,内存交换,内存区域对比,磁盘与内存镜像比较,内存特征码检索等功能,学会使用这些功能对于后续漏洞分析以及病毒分析都可以起到事半功倍的效果,读者应重点关注这些函数的使用方式。

2023年4月小结

由于最近服务器和域名出了问题,做了博客的迁移,也改了博客的二级域名。博客地址迁移到了朋友的本地服务器上,确保了数据的安全,可靠。之前挤压了一部分的博客笔记会补上。最近都在做chatgpt的服务开发。熬了一个月了,会把我的踩坑那些记录下来。后续的安排也会贴在博客 里。chatgpt网站:[https:

KMP字符串匹配算法

挑战最通俗的KMP算法讲解 什么是 \(KMP\) KMP是一种用于模式串匹配问题的算法。 给出一个文本串和模式串,查询模式串在文本串中的(出现次数、出现位置等等)的问题称为“模式串匹配问题”。 KMP算法的本质是:针对模式串构建一个特定的数组,用于在匹配失败时减少后续匹配过程中的无用比较,可以将时

一个混乱千万级软件项目

背景:公司接到一个亿级的项目,软件大概占到1/4的比例,整个项目包含了硬件和软件团队。软件团队是要实是一个软件产品,让其控制各种硬件设备做自动化运作,并打通上下游系统的数据。软件同时统计分析(包括机器学习和AI) 整个项目设备的运作和任务执行情况,服务于后续运营优化。 项目成员结构:大项目经理,对这

聊一聊 dotnet-trace 调查 lock锁竞争

一:背景 1. 讲故事 最近在分析一个 linux 上的 dump,最后的诱因是大量的lock锁诱发的高频上下文切换,虽然问题告一段落,但我还想知道一点信息,所谓的高频到底有多高频?锁竞争到底是一个怎样的锁竞争? 如果了解这些信息对我们后续分析此类问题非常有帮助。 要想获取此类信息,看 dump 肯

线程池使用小结

转载请注明出处: 在Java中,Executors是一个线程池的工厂类,它可以创建不同类型的线程池。下面是几种常见的Executors线程池,以及它们的使用区别: FixedThreadPool:这种类型的线程池有一个固定的线程数量,一旦线程池中的全部线程都在处理任务,那么后续提交的任务将会等待。如

Spring源码:Bean生命周期(五)

在今天的文章中,我们将深入探讨 Bean 的属性注入和初始化流程,从而使其成为一个真正意义上的 Bean。这个过程包括属性注入、Aware 接口回调、BeanPostProcessor 的前置和后置处理等多个步骤,通过本文的学习,读者将能够更深入地了解 Spring 框架中 Bean 的属性注入和初始化过程,为后续的学习和实践打下坚实的基础。

迁移现有用户数据到ABP vNext

## 前言 使用 ABP vNext(下文简称 ABP)时,通常都是从 cli 开始新建模板,从一个空项目开始。对已经存续的项目来说,现有的数据,特别是用户等核心数据需要进行迁移。 老的项目,随着规模越来越大,每次修改都需要更改非常多地方,最重要的是,共用数据库使得维护起来需要小心翼翼。为了后续维护

工作流Activiti 迁移 Camunda

后端操作 意思就是: ①更改maven②改包名、类名③改bpmn model中语法④检查迁移后有哪些功能缺失了 1、更改maven 改为 2、换包名、类名 意思就是将 org.activiti.* 开头的改为 org.camunda.bpm.* 3、改bpmn model中语法 不改的话会出现语法解

后端每日一题 2:DNS 解析过程

本文首发于公众号:腐烂的橘子 本文梗概: DNS 是什么,有什么作用 一条 DNS 记录是什么样的 DNS 域名解析原理 DNS 服务器如何抵御攻击 DNS 是什么,有什么作用 DNS(Domain Name System)是一种应用层协议,用于映射域名和 ip 地址。 为什么要做映射呢?就像可以用

后端每日一题 1:说一下三次握手

本文首发于公众号:腐烂的橘子 三次握手的流程 第 1 步 - 初始连接请求 SYN(Synchronize) 服务端状态 LISTEN,客户端向服务端发送一个 SYN 标志位的报文段(TCP segment) 这个报文段包含初始序列号 x,以及最大报文段大小等字段 客户端发送报文后,状态设置为 SY

Git 版本控制:构建高效协作和开发流程的最佳实践

版本控制是软件开发的核心,促进团队协作与项目管理。通过制定明确的分支命名策略,遵循一致的代码提交规范,如指明提交类型和简短描述,增强了历史记录的可读性,可以清晰地组织和理解项目的结构与进展。

[转帖]后台性能优化实践实战

近年来公司的业务数据量和用户流量都呈现出了非常迅猛的增长趋势,为了解决历史架构设计中的不足,应对诸多因素引发的风险并保证通天塔平台的稳定运行,通天塔后端组专项成立了一个“通天塔后端技术优化组”,号召并鼓励团队每个人积极参与进来,全盘分析和梳理、技术设计和技术Review、形成技术优化需求、排期、自测

后量子密码研究思考与实践

后量子密码研究思考与实践 中国电信翼支付后量子密码研究思考与实践 量子计算的威胁 2022年10月,法国物理学家阿兰•阿斯佩Alain Aspect,美国理论与实验物理学家约翰•弗朗西斯•克劳泽John F. Clauser以及奥地利科学家安东•塞林格Anton Zeilinger共同获得了诺贝物理

跨域:后端工程师最熟悉的陌生“人”

摘要:跨域,对后端工程师来说,可谓既熟悉又陌生。 本文分享自华为云社区《后端老司机的跨域之旅》,作者: 勇哥java实战分享。 跨域,对后端工程师来说,可谓既熟悉又陌生。 这两个月我以架构师的角色参与一款教育产品的孵化,有了一段难忘的跨域之旅。 写这篇文章,我想分享我在跨域这个知识点的经历和思考,希