MySQL进阶:MySQL基本架构图
参考:小林 coding、《MySQL 实战 45 讲》、《MySQL 技术内幕》、检索整理。 MySQL 基本架构图 Server 层负责建立连接、分析和执行 SQL。MySQL 大多数的核心功能模块都在这实现,主要包括连接器、查询缓存、解析器、预处理器、优化器、执行器等。另外,所有的内置函数(如日期、时间、数学和加密函数等)和所有跨存储引擎的功能(如存储过程、触发器、视图等)都在 Server 层实现。 存储引擎层负责数据的存储和提取。支持 InnoDB、MyISAM、Memory 等多个存储引擎,不同的存储引擎共用一个 Server 层。现在最常用的存储引擎是 InnoDB;从 MySQL 5.5 版本开始,InnoDB 成为了 MySQL 的默认存储引擎。我们常说的索引数据结构,就是由存储引擎层实现的;不同的存储引擎支持的索引类型也不相同,比如 InnoDB 默认使用 B+ 树索引,在数据表中创建的主键索引和二级索引默认也是 B+ 树索引。 连接与会话MySQL 基于 TCP 协议传输。 SHOW PROCESSLIST;:查看当前有多少客户端连接。 最大空闲时长...
MongoDB:python操作mongo对应的方法
mongo数据库的简介mongoDB是一个基于分布式文件存储的数据库。它是非关系型数据库 mongo的特点它的特点是高性能、易部署、易使用,存储数据非常方便。主要功能特性有:1.面向集合存储,易存储对象类型的数据。2.模式自由。3.支持动态查询。4.支持完全索引,包含内部对象。5.支持查询。6.支持复制和故障恢复。7.使用高效的二进制数据存储,包括大型对象(如视频等)。8.自动处理碎片,以支持云计算层次的扩展性9.支持RUBY,PYTHON,JAVA,C++,PHP等多种语言。10.文件存储格式为BSON(一种JSON的扩展) mongo的数据逻辑结构 SQL MongoDB 表(Table) 集合(Collection) 行(Row) 文档(Document) 列(Col) 字段(Field) 主键(PrimaryKey) 对象(ObjectId) 文档 -> 关系库中的一行数据 多个文档组成一个集合 -> 关系数据库的表 多个集合构成数据库 包含 -> 集合 -> 包含 -> 文档 mongo数据存储结构mo...
数据库概论:学习笔记与要点整理
数据库的概念数据库rank:https://db-engines.com/en/ranking 12按照数据结构来组织,存储,管理数据的仓库不管使用什么存储的介质,数据库的数据模型才是核心技术 数据库的构成12345678- 数据(Data) - 数据库中存储的基本对象(文本,视频,音频,图像等)凡是可以描述事物的符号- 数据库(DataBase简称DB) - 存放数据的仓库- 数据库管理系统(DataBaseManagementSystem简称DBMS) - 用来维护和管理数据- 数据库系统(DataBaseSystem) - 由数据库,数据库管理系统以及其他应用开发工具,应用程序和数据库管理员组成的存储,管理,处理和维护数据的系统 数据库的数据模型 层次结构 以树型结构表示实体及其之间的联系。关系支持一对多。代表数据库IBM IMS 网状结构 节点描述数据,节点的联系就是数据的关系,一个节点允许有多个父节点 关系型结构(最重要的) 关系型数据库:指采用了关系模型来组织数据的数据库。关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一...
ascii、unicode、utf-8、gbk 区别?
ascii、unicode、utf-8、gbk 区别? ASCII (American Standard Code for Information Interchange–美国信息交换标准代码) Unicode(Universal Multiple-Octet Coded Character Set),简称 UCS GBK(Chinese Internal Code Specification–汉字内码扩展规范) UTF(Unicode Transformation Format–Unicode转换格式) 注意: 字符集(Charset)charset = char + set,char 是字符,set是集合,charset就是字符的集合。字符集就是是这个编码方式涵盖了哪些字符,每个字符都有一个数字序号。 编码方式(Encoding)编码方式就是一个字符要怎样编码成二进制字节序,或者反过来怎么解析。也即给你一个数字序号,要编码成几个字节,字节顺序如何,或者其他特殊规则。 Unicode 只是字符集 UTF-8 是一种 Unicode 字符集的编码方式 由...
RPC:REST
关于RPC和REST还有SOAP具体看看这个:https://www.iculture.cc/cybersecurity/pig=25911?only_author=1 RESTREST,是Representational State Transfer 的简写,中文描述表述性状态传递(是指某个瞬间状态的资源数据的快照,包括资源数据的内容、表述格式(XML、JSON)等信息。)。REST 是一种软件架构风格。 这种风格的典型应用,就是HTTP。 如何理解 引用阮一峰博客的文字:-(1)每一个URI代表一种资源; -(2)客户端和服务器之间,传递这种资源的某种表现层; -(3)客户端通过四个HTTP动词,对服务器端资源进行操作,实现”表现层状态转化”。 RPC RPC,是Remote Procedure Call Protocol的简写,中文描述是远程过程调用,它可以实现客户端像调用本地服务(方法)一样调用服务器的服务(方法)。它本身并不是一个具体的协议,而是一种调用方式。 RPC框架要做到的最基本的三件事:1、服务端如何确定客户端要调用的函数;在远程调用中,客户端和服务...
到底什么是云计算和云原生:什么是云计算?
云计算什么是云计算?这是AWS官方的解释: 云计算通过互联网按需提供 IT 资源,并且采用按使用量付费的定价方式。您可以根据需要从诸如 Amazon Web Services (AWS) 之类的云提供商那里获得技术服务,例如计算能力、存储和数据库,而无需购买、拥有和维护物理数据中心及服务器。 特点: 敏捷性 云使您可以轻松使用各种技术,从而可以更快地进行创新,并构建几乎任何可以想象的东西 弹性 云使您可以轻松使用各种技术,从而可以更快地进行创新,并构建几乎任何可以想象的东西 节约成本 云技术将您的固定支出(如数据中心和物理服务器)转变为可变支出,并且只需按实际用量付费 云计算模型:基础设施即服务 (IaaS)基础设施即服务有时缩写为 IaaS,包含云 IT 的基本构建块,通常提供对联网功能、计算机(虚拟或专用硬件)以及数据存储空间的访问。基础设施即服务提供最高等级的灵活性和对 IT 资源的管理控制,其机制与现今众多 IT 部门和开发人员所熟悉的现有 IT 资源最为接近。 平台即服务 (PaaS):平台即服务消除了组织对底层基础设施(一般是硬件和操作系统)的管理...
熔断-限流-降级-链路追踪:熔断机制
熔断机制发起服务调用的时候,如果被调用方返回的错误率超过一定的阈值或触发某些特定策略,那么后续的请求将不会真正发起请求,而是在调用方直接返回错误。 限流当系统的处理能力不能应对外部请求的突增流量时,为了不让系统奔溃,必须采取限流的措施。https://blog.csdn.net/qq_37362891/article/details/123299341 降级服务降级是指 当服务器压力剧增的情况下,根据实际业务情况及流量,对一些服务和页面有策略的不处理或换种简单的方式处理,从而释放服务器资源以保证核心业务正常运作或高效运作。说白了,就是尽可能的把系统资源让给优先级高的服务。 链路追踪 zipkin(OpenTracing兼容)拦截请求,侵入传输协议支持:HTTP,MQ jaeger(OpenTracing兼容)拦截请求,侵入传输协议支持:UDP/HTTP skywalking(OpenTracing兼容)字节码注入,无侵入 传输协议支持:gRPC pinpoint(OpenTracing不兼容)字节码注入,无侵入传输协议支持:Thrift客户端支持语言不支持GOTLogh...
身份认证、授权、鉴权、权限管理:认证(identification)
认证(identification)确认声明者的身份根据声明者独特的识别信息 授权(authorization)获取用户的委派权限 颁发一个授信媒介,不可被篡改,不可伪造,受保护 Http Basic Authentication(https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers/Authorization) session-cookie token/jwt OAuth 鉴权(authentication)https://blog.csdn.net/sxf1061700625/article/details/124753095对所声明的权限真实性进行鉴别的过程权限是一个抽象的逻辑概念,定义和配置可执行的操作,而控制是具体的实现方式,通过一定的方式控制操作的允许和禁止鉴权和授权是一一对应关系,解析授信媒介,确认其合法性、有效性 权限控制(access/permission control)权限是一个抽象的逻辑概念,定义和配置可执行的操作,而控制是具体的实现方式,通过一定的方式控制操作的允许和...
cookie,token,session,jwt你们是不是在讨论同一件事
注意 cookie只是一个载体,可以承载各种认证内容,这是http协议请求头携带的一种规定形式。 token是一个很广泛的概念,他既可以做用户身份认证,也可以做安全机制的认证,简单理解他就是一段认证的字符串 jwt是token的一种实现方式 JWT与OAuth的区别(https://segmentfault.com/a/1190000040920592) OAuth2是一种授权框架 ,JWT是一种认证协议 OAuth2用在使用第三方账号登录的情况(比如使用weibo, qq, github登录某个app),而JWT是用在前后端分离, 需要简单的对后台API进行保护时使用。 浏览器发起跨域请求的时候,是不会主动带上cookie的,详细查看ajax这篇文章 就本质来说 JWT 没有对 “状态” 这件事任何规定和限制,其本身只是一种数据格式而已,所以在实现上甚至可以把 Session ID 放在 JWT 里,把 JWT 当 Cookie 用 cookie实现方式 http协议是无状态的协议,相同的请求请求多次,他不会记录,他也不认识。因此引入cookie技术,客户端请求服务器,...
vim命令:help
help:h {TEXT} 123456:h motion # 第一章我们讲过了motion,可以试着自己看看:h buffer # buffer是vim处理文件缓存的方式:h tab # tab和浏览器、vscode的tab一样:h window # 窗口的概念 和窗口相关的是split,窗口分割:h # 当然可以打开整个帮助手册:h z # z命令帮助 基础1.转到文件结尾G2.或转到第9行9G3.删除所有内容(先用G转到文件尾) ,使用::1,.d或者删除第9行到第200行的内容(先用200G转到第200行) ,使用:9,.d4.删除光标所在处字符x5.删除光标所在前字符(大写 X )X6.删除到下一个单词开头dw7.删除到本单词末尾de8.删除到本单词末尾包括标点在内dE9.删除到前一个单词db10.删除到前一个单词包括标点在内dB11.删除一整行dd12.删除光标位置到本行结尾D d$13.删除光标位置到本行开头d0说明:这是在vim中 ,“.”当前行 ,“1,.”表示从第一行到当前行 ,“d”删除,3dd代表删除三行。J将光...