深入理解MySQL索引底层数据结构

在日常工作中,我们会遇见一些慢SQL,在分析这些慢SQL时,我们通常会看下SQL的执行计划,验证SQL执行过程中有没有走索引。通常我们会调整一些查询条件,增加必要的索引,SQL执行效率就会提升几个数量级。我们有没有思考过,为什么加了索引就会能提高SQL的查询效率,为什么有时候加了索引SQL执行反而会没有变化,本文就从MySQL索引的底层数据结构和算法来进行详细分析。

关于接口可维护性的一些建议

在做新需求开发或者相关系统的维护更新时,尤其是涉及到不同系统的接口调用时,在可维护性方面,总感觉有很多地方差强人意。一些零星思考,抛砖引玉,希望引发更多的思考和讨论。总结了大概有如下几条建议:

【程序员日记】---从业务编排到低代码

之前总聊微服务,今天换一个话题---低代码。低代码这个词也是最近这几年很火的概念,尤其是遇到大环境下行,很多大厂和互联网那个公司也在慢慢在低代码方向发力,当然,对于传统项目交付型的软件公司,低代码也具有相当大的吸引力。

分而治之 -- 浅谈分库分表及实践之路

今天想聊一下分库分表,因为对于快速增长的业务来说,这个是无法回避的一环。之前我在做商城相关的SAAS系统,商品池是一个存储瓶颈,商品池数量会基于租户增长和运营变得指数级增长,短短几个月就能涨到几千万的数据,而运营半年后就可能过亿。而对于订单这种数据,也会跟着业务的成长,也会变得愈发巨大。

初探webAssembly

本文从为什么需要WebAssembly、WebAssembly的工作原理、哪些语言可用来创建WebAssembly模块、WebAssembly可以用在哪里 以及 怎么使用 几方面简要介绍了webAssembly。如果之前没有了解过webAssembly,可以做一些简要的了解。

从源码层面深度剖析Spring循环依赖

本文从源码层面介绍了Spring如何创建bean、如何解决循环依赖,同时也介绍了不能解决哪些循环依赖,同时在文章的最后解决循环依赖报错的几个方法

分布式事务的华丽进化

说到分布式事务,大家并不陌生。在实际工作中,用得比较多的还是柔性分布式事务,今天主要把在工作中运用到的几种柔性分布式事务的场景及实现方式做一个简单介绍,也可以看做是柔性分布式事务的一个演进过程。

你想要的【微前端】都在这里了!

某次遇到一个从0到1的大型项目,该项目涉及两个端,除了鉴权和部分业务逻辑不同外,页面UI和其余逻辑几乎一致,遇到这种项目,该如何架构?既能保证项目顺利开发完成,又能保证后期的迭代、维护、可扩展?

解决pod健康检查问题

解决pod健康检查问题 引自:Solving the mystery of pods health checks failures in Kubernetes。原文中的某些描述并不清晰,本文作了调整。 很早以前,环境中的pod有时候会遇到健康检查失败的问题,但并没有什么明显表征,且几乎是立马就会恢复

前瞻|Java 21 新特性 String Templates(字符串模版)

在日常写Java的时候,对于字符串的操作是非常普遍的,其中最常见的就是对字符串的组织。也因为这个操作非常普遍,所以诞生了很多方案,总下来大概有这么几种: - 使用`+`拼接 - 使用`StringBuffer`和`SpringBuilder` - `String::format` and `Stri

Python 网络编程

自计算机诞生以来,计算机网络逐渐从单机模型发展成了网络互联模型 最初只是远程终端连接,终端(键盘和显示器)分布在各地然后与主机相连,用户通过终端来与远程主机进行交互,终端只能与主机通信 再到多个主机之间互联,几台固定的计算机相连在一起形成计算机网络,这种网络一般是私有的(局域网) 随着时代的发展,人

bash shell 无法使用 perl 正则

哈喽大家好,我是咸鱼。今天跟大家分享一个关于正则表达式的案例,希望能够对你有所帮助 案例现象 前几天有一个小伙伴在群里求助,说他这个 shell 脚本有问题,让大家帮忙看看 可以看到,这个脚本首先将目标文本文件的名字当作该脚本的第一个参数($1)传递进去,然后查看这个文本文件的内容(cat $1),

Pandas 加载数据的方法和技巧

哈喽大家好,我是咸鱼 相信小伙伴们在学习 python 数据分析的过程中或多或少都会听说或者使用过 pandas pandas 是 python 的一个拓展库,常用于数据分析 今天咸鱼将介绍几个关于 pandas 导入数据的方法和技巧 ## 从 URL 获取 csv 数据 关于 pandas 导入

【Azure 媒体服务】使用编码预设文件(Preset.json)来自定义编码任务 -- 创建视频缩略图

问题描述 在Azure门户上创建Transform Encoding时候,只能选择 Built-in Preset 编码方式(如:H265ContentAwareEncoding) 在创建编码任务时,除了在门户上可选的几种内置的编码格式外,还可以通过自定义的编码预设文件(Preset.json)对视

【Azure Redis】Redis服务负载达到100%后的影响及有何优化方法

问题描述 Redis服务负载达到100%后的影响及有何优化方法 问题解答 Redis的负载达到100% 意味着 Redis 服务器繁忙,无法跟上请求,导致客户端发送出来的请求超时。 常规情况下有一下几种情况可以导致这个问题: 1) 请求量变大达到服务上限 2) 执行默写时间复杂度高的指令,如KEYS

.NET周报【12月第3期 2022-12-23】

由于众所周知的原因,大佬们纷纷加入羊群,笔者也未能幸免,体验下来这绝对不是普通感冒的症状,身体不适,熬了几天,所以本周更新比较晚;另外精力有限,对于国际板块只有链接没有简介,十分抱歉! 在这个艰难时刻,大家照顾好自己和家人,做好防护,祝没羊的永远"郭襄",祝已羊的早日康复,没有一个冬天不可逾越,没有

看我是如何用C#编写一个小于8KB的贪吃蛇游戏的

译者注:这是Michal Strehovský大佬的一篇文章,他目前在微软.NET Runtime团队工作,主要是负责.NET NativeAOT功能的开发。我在前几天看到这篇文章,非常喜欢,虽然它的内容稍微有点过时(还是使用的.NET Core 3.0),不过其中的一些编程技巧和思维方式很受用,特

8KB的C#贪吃蛇游戏热点答疑和.NET7版本

在之前的一篇文章《看我是如何用C#编写一个小于8KB的贪吃蛇游戏》中,介绍了在.NET Core 3.0的环境下如何将贪吃蛇游戏降低到8KB。不过也有很多小伙伴提出了一些疑问和看法,主要是下面这几个方面: .NET Core 3.0可以做到这么小,那么.NET7表现会不会更好? 不敢在生产中用这样的

.NET周报 【4月第2期 2023-04-08】

国内文章 LRU缓存替换策略及C#实现 https://www.cnblogs.com/eventhorizon/p/17290125.html 这篇文章讲述了缓存替换策略,特别是LRU算法。LRU算法基于这样一个假设:如果数据最近被访问过,那么将来被访问的几率也更高。通常我们会用双向链表来实现这个

.NET周刊【9月第1期 2023-09-03】

## 国内文章 ### 如何正确实现一个自定义 Exception https://www.cnblogs.com/kklldog/p/how-to-design-exception.html 最近在公司的项目中,编写了几个自定义的 Exception 类。提交 PR 的时候,sonarqube 提