第 12 页 - 知识库
[MySQL相关]什么是存储过程?

存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。存储过程理解的简单一点就是“数据库中的程序”,可以在不需要外部程序(如C,java等)...

MySQL事务的特性

原子性(Atomicity):事务中的全部操作在数据库中是不可分割的,要么全部完成,要么均不执行。一致性(Consistency):几个并行执行的事务,其执行结果必须与按某一顺序串行执行的结果相一致。隔离性(Isolation):事务...

[MySQL相关]什么是视图?以及视图的使用场景有哪些?

视图是一种虚拟的表,具有和物理表相同的功能只暴露部分字段给访问者,所以就建一个虚表,就是视图。查询的数据来源于不同的表,而查询者希望以统一的方式查询,这样也可以建立一个视图,把多个表查询结果联合起来,查询者只需要直接从视图中获取数据,...

Redis回收进程是如何工作的

一个客户端运行了新的命令,添加了新的数据。redis检查内存使用情况,如果大于maxmemory的限制,则根据设定好的策略进行回收。一个新的命令被执行等等,所以我们不断地穿越内存限制的边界,通过不断达到边界然后不断回收回到边界以下。如...

Redis集群方案该怎么做?都有哪些方案?

1,codis目前用的最多的集群方案,基本和twemproxy一致的效果,但它支持在节点数量改变情况下,旧节点数据客恢复到新hash节点2rediscluster3.0自带的集群,特点在于他的分布式算法不是一致性hash,而是has...

redis和mecached的区别,以及使用场景

区别1、redis和Memcache都是将数据存放在内存中,都是内存数据库。不过memcache还可以用于缓存其他东西,例如图片,视频等等2、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的...

Redis宕机怎么解决?

宕机:服务器停止服务‘如果只有一台redis,肯定会造成数据丢失,无法挽救多台redis或者是redis集群,宕机则需要分为在主从模式下区分来看:slave从redis宕机,配置主从复制的时候才配置从的redis,从的会从主的red...

索引的工作原理及其种类

数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询,更新数据库表中数据。索引的实现通常使用B树以其变种B+树。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在...

drop,delete与truncate的区别

drop直接删掉表,truncate删除表中数据,再插入时自增长id又从1开始,delete删除表中数据,可以加where字句。1.delete语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存...

视图的作用,视图可以更改么?

视图是虚拟的表,与包含数据的表不一样,视图只包含使用时动态检索数据的查询;不包含任何列或数据。使用视图可以简化复杂的sql操作,隐藏具体的细节,保护数据;视图创建后,可以使用与表相同的方式利用它们。视图不能被索引,也不能有关联的触发器...

MySQL 主键 超键 候选键 外键

主键:数据库表中对存储数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null).超键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以作为一个超键,多个属性...

Session,Cookie,JWT的理解

为什么要使用会话管理众所周知,HTTP协议是一个无状态的协议,也就是说每个请求都是一个独立的请求,请求与请求之间并无关系。但在实际的应用场景,这种方式并不能满足我们的需求。举个大家都喜欢用的例子,把商品加入购物车,单独考虑这个请求,服...

CORS 和 CSRF的区别?

什么是CORS?CORS是一个W3C标准,全称是“跨域资源共享"(Cross-originresouresharing).它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而客服了AJAX只能同源使用的限制。什么...

Django、Flask、Tornado的对比?

1、Django走的大而全的方向,开发效率高。它的MTV框架,自带的ORM,admin后台管理,自带的sqlite数据库和开发测试用的服务器,给开发者提高了超高的开发效率。重量级web框架,功能齐全,提供一站式解决的思路,能让开发...

什么是wsgi,uwsgi,uWSGI?

WSGI:web服务器网关接口,是一套协议。用于接收用户请求并将请求进行初次封装,然后将请求交给web框架。实现wsgi协议的模块:wsgiref,本质上就是编写一socket服务端,用于接收用户请求(django)werkzeug,...

Flask 和 Django 路由映射的区别?

在django中,路由是浏览器访问服务器时,先访问的项目中的url,再由项目中的url找到应用中url,这些url是放在一个列表里,遵从从前往后匹配的规则。在flask中,路由是通过装饰器给每个视图函数提供的,而且根据请求方式的不同可...

什么是OAuth 2.0?

开放授权开放授权(OAuth)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用OAuth2.0OAuth2.0是OAuth协议的下一...

依赖注入

依赖注入是将所依赖的传递给将使用的从属对象(即客户端)。该服务是将会变成客户端的状态的一部分。传递服务给客户端,而非允许客户端来建立或寻找服务实现方式基于接口。实现特定接口以供外部容器注入所依赖类型的对象基于set方法。实现特定...

控制反转

控制反转(InversionofControl,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。其中最常见的方式叫做依赖注入(DependencyInjection,简称DI),还有一种方式叫...

抽象类和接口

抽象类可以为项目提供一种组织机制。抽象类不能实例化,只能由具体(可实例化的类)继承抽象类的接口以及它的所有具体属性与大多数抽象类一样,接口也有抽象方法。不过,不能像在抽象类中那样在接口中包含具体方法或变量

OOP 思想

面向对象程序设计(Object-orientedprogramming,OOP)是种具有对象概念的程序编程典范,同时也是一种程序开发的抽象方针

策略模式

定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化适用性许多相关的类仅仅是行为有异。“策略”提供了一种用多个行为中的一个行为来配置一个类的方法需要使用一个算法的不同变体算法使用客户不...

观察者模式

定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新适用性当一个抽象模型有两个方面,其中一个方面依赖于另一方面。将这二者封装在独立的对象中以使它们可以各自独立地改变和复用当对一个对象的...

适配器模式

将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作适用性你想使用一个已经存在的类,而它的接口不符合你的需求你想创建一个可以复用的类,改类可以与其他不相关的类或不可预见(可能不...