Nginx以及JSONP跨域ajax请求面试题
Posted Java小周
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx以及JSONP跨域ajax请求面试题相关的知识,希望对你有一定的参考价值。
目录
一、nginx
1、什么是Nginx?
Nginx是一个 轻量级/高性能的反向代理Web服务器,他实现非常高效的反向代理、负载均衡,他可以处理2-3万并发连接数,官方监测能支持5万并发。
2、为什么要用Nginx?
(1)、跨平台、配置简单、方向代理、高并发连接:处理2-3万并发连接数,官方监测能支持5万并发,内存消耗小:开启10个nginx才占150M内存 ,nginx处理静态文件好,耗费内存少,
(2)、而且Nginx内置的健康检查功能:如果有一个服务器宕机,会做一个健康检查,再发送的请求就不会发送到宕机的服务器了。重新将请求提交到其他的节点上。
3、什么是正向代理和反向代理?
(1)、正向代理就是一个人发送一个请求直接就到达了目标的服务器
(2)、反方代理就是请求统一被Nginx接收,nginx反向代理服务器接收到之后,按照一定的规则分发给了后端的业务处理服务器进行处理了
4、使用“反向代理服务器的优点是什么?
反向代理服务器可以隐藏源服务器的存在和特征。它充当互联网云和web服务器之间的中间层。保证了服务器的安全。
5、Nginx的优缺点?
优点:
(1)、占内存小,可实现高并发连接,处理响应快
(2)、可实现http服务器、虚拟主机、方向代理、负载均衡
(3)、Nginx配置简单
(4)、可以不暴露正式的服务器IP地址
缺点:
动态处理差:nginx处理静态文件好,耗费内存少,但是处理动态页面则很鸡肋,现在一般前端用nginx作为反向代理抗住压力
6、Nginx应用场景?
(1)、http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
(2)、反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会应为某台服务器负载高宕机而某台服务器闲置的情况。
7、如何用Nginx解决前端跨域问题?
使用Nginx转发请求。把跨域的接口写成调本域的接口,然后将这些接口转发到真正的请求地址。
二、JSONP跨域
1、什么是JSONP
JSON是一种轻量级的数据交换格式。
JSONP是JSON with Padding的略称。它是一个非官方的协议,它允许在服务器集成javascript返回至 客户端,通过javascript callback形式实现跨域访问。
2、为什么会有跨域这个说法呢?
因为同源策略!浏览器安全是来自于同源策略。什么是同源策略呢?我们知道在网络中安全非常重要,不然你的密码,账号,重要数据都会被别人窃取,别人可以在网上获取到这些数据,模仿成你,骗过浏览器,为所欲为,这样的情况是不允许发生的。于是就有了同源策略一说。 规定如下:
(1)、协议相同
(2)、域名相同
(3)、端口相同
同源:协议 域名 端口号全部相同,只要有一个不相同就是非同源策略,不同源就会造成跨域。
三、ajax请求
1、什么是ajax?ajax作用是什么?
AJAX = 异步 JavaScript 和 XML。 AJAX 是一种用于创建快速动态网页的技术。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.
2、AJAX最大的特点是什么。
Ajax可以实现动态不刷新(局部刷新)、就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。
3、ajax几种请求方式?
常用的post,get,delete put
4、AJAX都有哪些优点和缺点?
优点:
1、最大的一点是页面无刷新,用户的体验非常好。
2、使用异步方式与服务器通信,具有更加迅速的响应能力。
3、可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担。
缺点:
1、ajax不支持浏览器back按钮。
2、安全问题,AJAX暴露了与服务器交互的细节。
3、对搜索引擎的支持比较弱。
4、破坏了程序的异常机制。
5、不容易调试。
以上就是关于一些前端nginx,JSONP,ajax的一些基本概念
本文面对的对象为java后端工程师,作为面试题对前端的一些了解
暂时就分享到这了,关注博主,查看更多java基本面试题
以上是关于Nginx以及JSONP跨域ajax请求面试题的主要内容,如果未能解决你的问题,请参考以下文章