Java

十年开发经验,对微服务的学习总结

2019-08-20  本文已影响0人  勤奋的码农
十年开发经验,对微服务的学习总结

微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。

问题:微服务有什么用?

解答:解决单体应用规模增加时带来的问题。

微服务 vs 单体应用


分布式系统如何解释?

简单来说,分布式系统就是一群独立计算机集合共同对外提供服务,但是对于系统的用户来说,就像是一台计算机在提供服务一样。集中式系统集中式系统就是把所有的程序、功能都集中到一台主机上,从而往外提供服务的方式。比如,我们主机的PC电脑,或者手机,我们把各种软件都安装在一台机子上,当我需要什么功能,我就从这台机子上去获取。再比如,我们在学生时代做的课程设计或者开发时的小应用,我们把Web服务器、数据库等都会安装到一台电脑上。好处是,易于理解、方便维护,想要的东西我都放到了一个地方,东西好找啊。当然弊端也是显而易见的,如果这台机子崩了,或者硬盘坏了,那相当与整个系统就奔溃了,而且如果备份也是在这个硬盘上,那相当于招了灭顶之灾。

Web 编程基础

静态Web

概述:静态web内容由web服务器文件系统提供,路径为文件系统的路径,常见的静态web内容有,html,css,js,jpeg等

常用的静态web服务器

静态web优化


动态Web

概述: 与静态web不同,请求内容通过服务器计算而来的

流行的java web服务器

动态技术/架构演变

问题:mvc 的执行流程?

  1. 用户通过客户端发送HTTP请求,传至web服务器如tomcat
  2. servlet(实际是dispacherservlet)充当controller处理分发请求,传至model层
  3. model层包括了一系列的逻辑处理,包括数据库操作,最后返回一个java beans
  4. dispachersevlet将结果返回给服务器,服务器返回处理好的view给客户端
  5. 客户端渲染展示给用户Java学习圈子

模板引擎

velocity: apache 产品,现已不维护

jsp: 使用较广泛,编译流程:.jsp-->.java -->.class 。内部可嵌入java语法,导致耦合度较高

themleaf: 新模板引擎

freemarker: 较稳定的一类


REST理论基础

Springboot Rest 核心接口

定义相关

映射相关

请求相关

响应相关

接口默认返回xml只需添加maven节点


image.png

Servlet 的在web中应用

什么是servlet?

是一种基于java技术的web组件,由容器管理,用于生成动态内容,由java web 服务器加载执行

什么是servlet容器?

Servlet 容器,有时候也称作为 Servlet 引擎,作为Web服务器或应用服务器的一部分。通过请求和响应对话,提供Web 客户端与 Servlets 交互的能力。容器管理Servlets实例以及它们的生命周期。Java学习圈子

Servlet 历史发展如何?

1997年六月,Servlet 1.0 版本发行,最新版本 Servlet 4.0 处于研发状态。

Servlet生命周期

Fileter生命周期

Listener 生命周期

Http请求生命周期大致为:

  1. Listner--> requestInitialized 方法
  2. Filter --> init 初始化方法
  3. Filter --> doFilte 处理方法
  4. Servlet --> init 初始化方法
  5. servlet --> service 方法
  6. listener --> destroy 方法

粉丝福利

十年开发经验,对微服务的学习总结 十年开发经验,对微服务的学习总结

上图中的资料都是我精心录制视频,感兴趣的可以加入我的Java学习圈子 免费获取。希望能够在你接下来即将应对的的面试过程中能够尽到一份绵薄之力。

上一篇 下一篇

猜你喜欢

热点阅读