分享一些收集到的好用工具、学习网站、社区等。
框架
- Google diff-match-patch 比对框架
- dumi 为组件研发而生的静态站点框架
- mdit-plugins markdown-it插件
排序
排序算法
- 快速排序:MySQL 5.7.8 之前,默认的排序算法是快速排序。
- 归并排序:MySQL 5.7.8 之后,默认的排序算法是归并排序。
排序原理
MySQL 在处理排序时有两种主要方式:
通过explain可以进行分析
- Using Index:如果排序字段有索引,MySQL 会直接利用索引完成排序。
- Using Filesort:如果没有合适的索引,MySQL 会将数据加载到内存或磁盘中进行排序。
Buffer_Pool
https://dev.mysql.com/doc/refman/8.0/en/innodb-buffer-pool.html
缓冲池是主内存中的一个区域, InnoDB 在访问表和索引数据时将其缓存起来。缓冲池允许从内存直接访问常用数据,从而加快处理速度。在专用服务器上,通常会将多达 80% 的物理内存分配给缓冲池。
页作为最小读取单位,默认16kb。
InnoDB存储引擎通过维护Buffer_Pool来缓存数据,从而提高读取效率。Buffer_Pool中缓存的数据页类型包括数据页、索引页等,其通过改造版LRU进行淘汰策略。
HyperLogLog 是一种用于统计基数(cardinality)的算法,它使用一个固定大小的数组来表示一个集合,并使用一个哈希函数来确定元素的位置。HyperLogLog 的核心思想是通过估计数组中 0 的数量来估计集合的大小。
HyperLogLog 的优点是它使用固定大小的数组,因此它的空间复杂度是 O(log n),其中 n 是集合的大小。这使得 HyperLogLog 非常适合处理大规模数据集。
在了解Java交易撮合引擎时看到了Disruptor,印象中美团好像写过相关的文章,所以赶紧来学习一下,顺便重温一下计算机缓存相关的知识。

提示
小镇代码的搬运工!!!
爱好篮球、交友和编程。
简介
阿里云效是阿里云出品的一站式企业级研发协作平台,提供从需求到开发、测试、部署
代码管理
容器服务
https://cr.console.aliyun.com/
- 创建个人版
- 设置代码源
- 创建镜像仓库,与代码库绑定
问题
https://help.aliyun.com/document_detail/202437.html?spm=a2cl9.flow_devops2020_goldlog_detail.0.0.32e624aeFAJCj1
https://gitee.com/a973891422/software-engineering-document
https://github.com/ZC7025/document
待完善...