记录:拼多多服务端开发初面问题

面试问题

代码

实现字符串运算:
'()‘表示1,’()()‘表示1+1=2,’(())‘表示1的平方;输入字符串’(()()(()))'求运算结果

项目

问了两三个实践项目的具体内容

提问

(1)进程和线程的区别
(2)知道协程吗
(3)ACID是什么
ACID,是指在可靠数据库管理系统(DBMS)中,事务(transaction)所应该具有的四个特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability).这是可靠数据库所应具备的几个特性。
1)原子性(Atomicity)
原子性意味着数据库中的事务执行是作为原子。即不可再分,整个语句要么执行,要么不执行。在SQL SERVER中,每一个单独的语句都可以看作是默认包含在一个事务之中,每一个语句本身具有原子性,要么全部执行,这么全部不执行,不会有中间状态:
2)一致性(Consistency)
一致性即在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。
一致性体现在两个层面:
A.数据库机制层面
数据库层面的一致性是,在一个事务执行之前和之后,数据会符合你设置的约束(唯一约束,外键约束,Check约束等)和触发器设置.这一点是由SQL SERVER进行保证的.
B.业务层面
对于业务层面来说,一致性是保持业务的一致性.这个业务一致性需要由开发人员进行保证.很多业务方面的一致性可以通过转移到数据库机制层面进行保证.比如,产品只有两个型号,则可以转移到使用CHECK约束使某一列必须只能存这两个型号.
3)隔离性(Isolation)
隔离性。事务的执行是互不干扰的,一个事务不可能看到其他事务运行时,中间某一时刻的数据。
在Windows中,如果多个进程对同一个文件进行修改是不允许的,Windows通过这种方式来保证不同进程的隔离性,而SQL Server中,通过SQL SERVER对数据库文件进行管理,从而可以让多个进程可以同时访问数据库:SQL Server利用加锁和阻塞来保证事务之间不同等级的隔离性.
一般情况下,完全的隔离性是不现实的,完全的隔离性要求数据库同一时间只执行一条事务,这样的性能可想而知.想要理解SQL Server中对于隔离性的保障,首先要了解事务之间是如何干扰的.事务之间的互相影响的情况分为几种,分别为:脏读(Dirty Read),不可重复读,幻读。
4)持久性(Durability)
持久性,意味着在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。即使出现了任何事故比如断电等,事务一旦提交,则持久化保存在数据库中.

(4)MySQL的视图和表有什么区别
区别:
1)视图是已经编译好的sql语句。而表不是
2)视图没有实际的物理记录。而表有。
3)表是内容,视图是窗口。
4)表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时修改,但视图只能有创建的语句来修改
5)表是内模式,试图是外模式
6)视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些SQL语句的集合。从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构。
7)表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。
8)视图的建立和删除只影响视图本身,不影响对应的基本表。
通俗的讲,视图是靠表的sql语句创建的,例如经常想要查看的两表进行关联查询数据,可以放在视图里面,这样节省我们经常预览想要的数据。视图名不能跟数据库表名重复。视图查询跟表的查询一样。视图不可以进行对数据的增、删、改,表可以。
(5)http1.0和2.0有什么区别

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值