Day01-微服务框架入门

核心知识点

  • 微服务框架诞生的背景(软件即服务,将一个大型软件,拆成若干个小系统;分而治之:北京一个货车站到多个火车站).
  • 微服务架构解决方案(大厂基本自研~自己研发各种组件,中小公司用Spring Cloud Netflix,Alibaba,...)
  • 微服务架构下Maven集合项目的创建方式?(Maven集合项目~资源复用:extends,import,简化编译,打包,部署方式)
  • 微服务架构入门集合项目创建(one-sca,sca-consumer,sca-gateway,sca-common)
  • 微服务中聚合工程之间的引用设计?(将一个工程作为依赖添加到其它工程:重点是坐标)
  • 工程中单元测试案例分析及实践

常见问题分析

  • 为什么需要微服务?(对系统分而治,解决因并发访问大带来的系统复杂性(例如:业务,开发,测试,升级,可靠性等))
  • 微服务设计的特点?(单一职责,独立进程,开发测试效率高,可靠性高,升级难度小,但会带来一定的维护成本)
  • 微服务解决方案有哪些?(大厂自研,中小企业采用开源Spring Cloud Alibaba,Spring Cloud Netfix等)
  • 微服务设计需要哪些关键组件(服务的注册,发现,配置,限流降级,访问入口管理,分别式事务管理等)
  • 创建聚合工程的目的?(实现工程之间资源的共享,简化工程管理)
  • 如何修改聚合工程中项目的编译和运行版本?(pom.xml:build->plugins->plugin->maven-compiler-plugin)
  • Day01-微服务框架入门_第1张图片
  • maven工程中build元素的作用?(定义项目的编译,打包方式)
  • maven父工程的packaging元素内的值是什么?(父工程默认打包方式为pom方式)
  • maven父工程中dependencyManagement元素的作用是什么?(项目依赖的版本,当前工程或子工程不需要再指定版本)
  • maven父工程中如何统一定义JDK编译和运行版本?(配置maven编译插件:maven-compiler-plugin)
  • Day01-微服务框架入门_第2张图片
  • maven工程pom.xml文件有删除线怎么解决?(修改idea中maven的配置)
  • @Autowired 注解描述属性时,系统底层执行DI的过程是怎么样?

 常见Bug分析

  • maven配置错误(idea中指定你本地库)
  • maven依赖无法下载(首先要确保你的依赖的是正确,maven配置是正确,都正确就放大招,清idea缓存,重启idea)
  • 单元测试@Test注解包引入错误(junit4(2.2版本以前),junit5(2.2版本以后))
  • 单元测试类写错了位置

 练习

  • 构建one-sca的子工程,工程名为sca-common.
  • 在sca-common工程中创建单元测试类IntegerTests,对整数池进行测试
  • 在sca-common工程中定义工具类StringUtils,并定义判断字符串是否为空的静态方法isEmpty(String str)
  • 在sca-gateway工程的单元测试方法中引用sca-common工程中的StringUtils类进行单元测试分析.
  • 在sca-gateway工程中添加StringTemplate和SimpleStringTemplate类(此类继承StringTemplate)并交给spring管理,然后再单元测试类中获取这两个类的对象?(依赖,@Component,启动类,单元测试类)

 

你可能感兴趣的:(课堂笔记,spring,maven,java)