zoukankan      html  css  js  c++  java
  • 数据库,前端和框架须知


    1.列举常见的关系型数据库和非关系型都有那些?
    关系型:sqllite,db2,oracle,access,sql server MySQL
    非关系型:MangoDB,redis


    2.MySQL常见数据库引擎及比较?
    InnoDB:支持事务处理,支持外键,支持崩溃修复能力和并发控制。如果需要对事务的完整性要求比较高(比如银行),
    要求实现并发控制(比如售票),那选择InnoDB有很大的优势。如果需要频繁的更新、删除操作的数据库,
    也可以选择InnoDB,因为支持事务的提交(commit)和回滚(rollback)。

    MyISAM:插入数据快,空间和内存使用比较低。如果表主要是用于插入新记录和读出记录,
    那么选择MyISAM能实现处理高效率。如果应用的完整性、并发性要求比 较低,也可以使用。

    MEMORY:所有的数据都在内存中,数据的处理速度快,但是安全性不高。如果需要很快的读写速度,
    对数据的安全性要求较低,可以选择MEMOEY。它对表的大小有要求,不能建立太大的表。所以,这类数据库只使用在相对较小的数据库表。


    3.什么是事务?MySQL如何支持事务?
    事务由一个或多个sql语句组成一个整体,要么完全地执行,要么完全地不执行。四大特点:原子性、一致性、隔离性和持久性。
    在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务。


    4.MySQL索引种类
    普通索引、唯一索引、主键索引、组合索引和全文索引


    5.主键和外键的区别?
    主键是用于唯一标识数据库表中一行数据的。
    外键是建立与表与表之前的联系,方便程序的编写


    6.乐观锁和悲观锁
    悲观锁, 就是很悲观,每次去拿数据的时候都认为别人会修改,
    所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。
    传统的关系型数据库里边就用到了很多这种锁机制,
    比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。

    乐观锁,就是很乐观,每次去拿数据的时候都认为别人不会修改,
    所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,
    可以使用版本号等机制,乐观锁适用于多读的应用类型,这样可以提高吞吐量

    ------------------
    前端和框架:

    1.HTTP协议
    HTTP协议(HyperText Transfer Protocol,超文本传输协议),
    是一种发布和接收 HTML页面的方法。
    HTTPS(Hypertext Transfer Protocol over Secure Socket Layer),
    简单讲是HTTP的安全版,在HTTP下加入SSL层。
    SSL(Secure Sockets Layer 安全套接层)主要用于Web的安全传输协议,
    在传输层对网络连接进行加密,保障在Internet上数据传输的安全。


    2.简述jsonp及实现原理?
    JSONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。

    原理:

    在同源策略下,在某个服务器下的页面是无法获取到该服务器以外的数据的,
    但img、iframe、script等标签是个例外,这些标签可以通过src属性请求到其他服务器上的数据。
    而JSONP就是通过script节点src调用跨域的请求。
    当我们通过JSONP模式请求跨域资源时,服务器返回给客户端一段javascript代码,
    这段javascript代码自动调用客户端回调函数。


    3.django、flask、tornado框架的比较?
    Flask 扩展丰富,冗余度小,可自由选择组合各种插件,性能优越,相比其他web框架十分轻量级,其优雅的
       设计哲学易于学习掌握,小型项目快速开发,大型项目毫无压力,FLask灵活开发,python高手基本都会喜欢flask

    Django 是重量级全栈型web框架,虽然功能强大,但冗余度高,自带ORM和模板引擎,灵活和自由度不够高
       开发小型项目时显得过于臃肿与庞大

    Tornado 是一个强大的、支持协程、高并发且可扩展的web服务器,发布于2009年9月,应用于FriendFeed
       Facebook等社交网站。Tornado的强项在于可以利用他的异步协程机制开发高并发的服务器系统


    4.什么是wsgi?
    (1)、RESTful只是设计风格而不是标准,而WSGI(Web Server Gateway Interface,Web 服务器网关接口)
    则是Python语言中所定义的Web服务器和Web应用程序之间或框架之间的通用接口标准。

    (2)、WSGI就是一座桥梁,桥梁的一端称为服务端或网关端,另一端称为应用端或者框架端,WSGI的作用就是在协议之间进行转化。
    WSGI将Web组件分成了三类:Web 服务器(WSGI Server)、Web中间件(WSGI Middleware)与Web应用程序(WSGI Application)。

  • 相关阅读:
    [POJ 1463] Strategic Game
    [POI 2007] 堆积木
    [POJ 1609] Tiling Up Blocks
    warning: conflicting types for built-in function 'puts'
    u-boot.lds 链接脚本分析(hi3515)
    怎么看时序图--nand flash的读操作详解
    有关mapminmax的用法详解
    整理出来的一个windows关机、锁定、重启、注销 API调用
    C# FileStream Write追加写入文本
    C# FileStream 按大小分段读取文本内容
  • 原文地址:https://www.cnblogs.com/MR-allen/p/10767990.html
Copyright © 2011-2022 走看看