每一秒钟的时间都值得铭记

0%

面试系列06

1、请简述一下SpringBoot?

  • SpringBoot是一个Spring框架的启动器,使用SpringBoot可以快速地搭建一个基于Spring框架的Web项目。
  • SpringBoot不是一个新的框架,而是Spring框架的延续和扩展。
  • SpringBoot使用约定大于配置的原则,默认配置了Spring项目中的大部分配置,所以我们使用SpringBoot搭建Spring项目可以省去Spring框架的大部分配置,简化我们的开发。

2、请简述一下SpringCloud?

  • SpringCloud并不是一个单独的框架,而是指一系列适用于解决分布式系统开发的框架集合。是一套用于治理微服务架构的解决方案。
  • SpringCloud是基于SpringBoot,SpringCloud的每个微服务,都是使用SpringBoot来进行开发的。

3、什么是微服务?

  • 微服务是指一个可以独立部署,水平拓展,独立访问的服务单元。
  • 微服务单独运行在独立的进程中,并通过轻量级的通信机制进行通信,一般使用的是HTTP协议。
  • 微服务强调技术独立,可以使用不同的语言编写或者不同的数据库存储,服务之间相互调用通过服务对外暴露的API接口进行,达到资源隔离的效果。

4、为什么要使用微服务,微服务有什么优势?

  • 微服务可以独立开发,独立部署服务,更容易扩展,解决了一体化架构中服务难以扩展的问题。
  • 微服务开发速度快,敏捷性高,维护单个微服务不影响整体系统。
  • 微服务围绕业务功能创建、组织代码,代码可维护性高。
  • 自由(在某种程度上)选择实施技术/语言,实现了技术独立。

5、请简述一下HTTP协议?

  • HTPP是超文本传输协议,是当前互联网上使用最为广泛的一种传输协议,HTTP是网络传输的一种规范,是客户端和服务器端请求和响应的标准。
  • HTTP的默认端口号是80,HTTPS的默认端口号是443,HTTPS的HTTP的安全版本,是完全的Web传输协议。
  • HTTP是无连接的,即每次连接都只处理一次请求,响应完成之后断开连接,这种方式可以节省传输时间。
  • HTTP是无状态的,即HTTP的每次请求都是独立的,不会记忆之前的请求或数据。
  • HTTP可以传输任意类型的数据对象,常用的请求方法有GET、POST等。
  • HTTP的请求由三部分构成,分别是:
    • 请求行:请求方法,请求URL,HTTP协议版本
    • 请求头:包含了一些请求客户端的信息,比如Cookie,Host,Accept等等
    • 请求体:GET请求没有请求体,POST请求的请求体用于存放参数和请求数据
  • HTTP的响应由三部分构成,分别是:
    • 响应行:HTTP协议版本,状态码,状态代码的文本描述
    • 响应头:包含服务器发送非客户端的信息,比如Content-Type,Server等等
    • 响应正文:服务器响应给客户端的响应数据

6、请说一下HTTP协议的常见状态码及状态码的含义?

状态码 描述
200 成功
301 永久重定向,请求资源被移动到新的URL
302 临时重定向
400 错误的请求,请求格式错误
401 当前请求需要通过用户验证
403 拒绝服务
404 资源没有找到
408 请求超时
500 服务器内部错误
502 服务器网关错误
504 服务器响应超时

7、什么是分布式事务(简述)?

  • 分布式事务是指在分布式环境下的不同节点上的一系列操作,这一系列操作要么全部执行成功,要么全部执行失败。
  • 分布式事务是为了保证分布式环境下的数据一致性。

8、什么是分布式锁(简述)?

  • 分布式锁就是指在分布式环境下,需要保证一个方法在同一时间只能被一个线程调用。
  • 分布式锁是为了保证数据的一致性而进行的加锁操作。
坚持原创技术分享,您的支持将鼓励我继续创作!
-------------这是我的底线^_^-------------