浅析InnoDB引擎的索引和索引原理 什么是InnoDB的索引 InnoDB的索引就是一颗B+树。页是InnoDB引擎在内存和磁盘之间交换数据的基本单位,页的大小一般是16KB,页的大小可以在启动MySQL服务的时候通过更改innodb_page_size参数来设置。而InnoDB索引的节点就是页。 B+树的叶节点上的页是数据页,用于存放用户存入数据库中的一条一条的记录,而非叶子节点上的页是索引页,存放索引记录。一个节点存一个页,所以又有”索引就是数据,数据就是索引“之说。B+树同一层上的页又是以双向链表的形式来组…

2021年10月16日 0条评论 3点热度 阅读全文

无状态状态机 一:前言 ​ 在项目中经常有一些工单,申请之类需要对状态进行流转。这种需求一般都是满足什么条件然后就翻转状态。这些流程结构相似得逻辑,感觉可以抽象处理。用一个通用得结构处理,可以让系统更加整洁,代码逻辑更加单一。 ​ 发现阿里开源一种,轻量级得无状态状态机得组件。仔细研究一下,确实很适合这种场景下对代码逻辑得解耦,相比于if-else代码更加让人容易理解,也更加优雅。 二:状态机的模型 State:状态 Event:事件,状态由事件触发,引起变化 Transition:流转,表示从一个状态到另一个状态…

2021年10月16日 0条评论 2点热度 阅读全文

内容提供者ContentProvider与前文的界面Activity、服务Service、广播接收者BroadcastReveiver,并列称为Android的四大组件,均是需要自定义子类继承上述组件类,并在清单文件中静态注册或逻辑代码中动态注册才能正常使用。 android.content.ContentProvider内容提供者类,是用来对其他应用程序提供分享数据内容的组件类,在应用程序间的文件共享一文中,针对Android7.0以上版本所注册的FileProvider文件提供者,便是已经定义过的Content…

2021年10月16日 0条评论 2点热度 阅读全文

缘起今天在微信群里有同学问 ”纯.net 项目,有必要上dapr吗?”  当时不假思索的说不是微服务没必要,其他群友也说没必要。下午细想了一下,觉得这个和微服务没有关系,如果我的应用是个单体架构(将所有功能都部署在一个web容器中运行的系统就叫做巨石型应用),但是它却用到了分布式中间件,比如缓存、消息队列,Actor模型呢,这些分布式中间件的标准化API 正是Dapr的价值所在。 看我前两天写的文章 为什么 Dapr 如此令人兴奋 第二点,Dapr利用Sidecar的模式,把代码中的一些横切关注点需求(C…

2021年10月16日 0条评论 2点热度 阅读全文

文章转载前需和原作者联系,否则追究法律责任 题目链接:https://www.luogu.com.cn/problem/P1008 首先我们来分析一下题目。要求是枚举三个数,比例为1:2:3,且各个数字由1-9组成。 我们采用枚举的方式来进行这道题目。首先,数字满足两个条件(比例为1:2:3,且各个数字由1-9组成),我们只需要枚举其中的一种条件,然后判断第二种条件是否满足即可。 举例:枚举数字比例1:2:3,然后进行判断数位是否由1-9组成。代码框架: #include<bits/stdc++.h> …

2021年10月16日 0条评论 2点热度 阅读全文

本篇目标 介绍引导扇区。 介绍软盘结构(FAT12)。 用汇编代码把加载器读取到内存中。 用汇编代码把内核加载器读取到内存中。 简略流程 计算机启动的简略流程如下: BIOS对应的中文术语是“基本输入输出系统”。计算机启动时,首先运行的便是BIOS。 BIOS是计算机厂商预置在计算机硬件中的一种软件,它会完成一些操作。我们只需知道,它会从内存地址0x7c00处读取引导扇区,就足够了。引导扇区的作用是从软盘中读取加载器。 我们把”引导扇区“叫做boot,把引导扇区的源码文件命名为boot.asm。boot恰好占用一个…

2021年10月16日 0条评论 2点热度 阅读全文

建议和 Conda 命令一起看,pip 和conda命令有点相似。《Conda 命令》 1 查看帮助文档 pip --help 使用该命令将告诉你 pip 的常用命令。 使用时,输入pip <command> [options] 形式的指令,即可执行相应的命令,并且,command 和 options 可以任意组合 pip install --help pip uninstall --help 结果如下: Usage: pip install [options] <requirement…

2021年10月16日 0条评论 3点热度 阅读全文

需求: 从接口动态获取子菜单数据 动态加载 要求只有展开才加载子菜单数据 支持刷新,页面显示正常       思路: 一开始比较乱,思路很多。想了很多 首先路由和菜单共用一个全局route, 数据的传递也是通过store的route, 然后要考虑的俩个点就是一个就是渲染菜单和加载路由,可以在导航首位里处理路由,处理刷新。还有一个地方就是菜单组件里展开事件里面 重新生成菜单数据,路由。大体思路差不多,做完就忘了..... 刷新的问题需要用本地缓存处理,之前一直缓存这个route 大数据,…

2021年10月16日 0条评论 2点热度 阅读全文

今天做项目的时候用到七牛云,关于对资源的操作是在后端做的,用的SDK,但是,在网上没找到详细的解析,官方文档也没有太详细的解说,所以无奈只好看下源码 这里做一下简单的记录 from qiniu import build_batch_delete, Auth, BucketManager #需要填写你的 Access Key 和 Secret Key,这个在你的个人中心里有 access_key = 'Access_Key' secret_key = 'Secret_Key' #构建鉴权对象 q = Auth(acc…

2021年10月16日 0条评论 2点热度 阅读全文

一、linux信号是什么 基本概念 信号是事件发生时对进程的通知机制,也就是所谓的软件中断。信号和硬件的中断类似,是软件层对中断机制的模拟,在多数情况下是无法预测信号产生的时间,所以软件层提供了一种处理异步事件的方法。 二、 信号来源 信号的来源分为硬件来源和软件来源。 硬件来源: 硬件发生异常,即硬件检测到错误条件并通知内核,随即再由内核发送相应的信号给相关进程,如除数为0、无效的内存引用等。 用户按终端键,引起终端产生的信号(比如Ctrl + C键产生SIGINT)。 软件来源: 用户通过指令杀死,如kill指…

2021年10月16日 0条评论 2点热度 阅读全文