温故知新-微服务技术篇

简介: 温故知新-微服务技术篇

01 Mind Map

02 Question&Answer

Q1: SpringBoot是什么,有什么优点?

A:使应用更加轻量级、开箱即用、默认配置、没有XML配置等。


Q2: SpringBoot有什么特点,举3个例子?

A:全使用注解、内置Tomcat、SpringCloud依赖于SpringBoot组件等。


Q3: SpringBoot中@RestController表示什么意思?

A:json、Restful接口?


Q4: SpringBoot模板引擎有几种,举例3个?

A:Theymeleaf、Freemaker、Velocity、groovy等。


Q5: SpringBoot全局异常捕获原理,有哪几种注解?

A:AOP、可以指定扫描范围、@ControllerAdvice、@ExceptionHandler。


Q6: SpringBoot整合几种数据源的方式(回忆)?

A:JDBCTemplate、Mybatis、SpringJPA、多数据源等。


Q7: SpringBoot事务默认哪两种异常自动回滚?

A:RuntimeException(运行时异常)、Error(错误)。


Q8: SpringBoot日志管理使用什么框架,原理?

A:log4j,使用AOP,切面类里写日志。


Q9: SpringBoot ehcache 使用(回忆)?

A:配置文件?@cacheable注解?管理者获取?。


Q10: SpringBoot项目的热部署如何实现?

A:配置IDEA、maven添加依赖dev-tools。


Q11: SpringBoot 监控管理使用哪两种框架?

A:Actuator获取信息(监视和管理应用程序)、Admin-UI显示Actuator收集的信息。


Q12: SpringBoot 性能优化建议(提出3条)?

A:组件扫描方式?Servlet容器(Undretow)?JVM调优。


Q13: SpringBoot 核心原理?

A:maven继承依赖关系、内置tomcat、SpringMVC注解版。


Q14: SpringBoot 2.0新特性(提出3条)?

A:OAuth2.0支持、Quartz Scheduler、以java 8 为基准等。


Q15: SpringSecurity是什么?什么是RBAC模型?

A:声明式安全访问控制功能框架?基于角色的访问控制?。


Q16: 互联网架构的演变过程(4个阶段),举出优缺点?

A:传统架构?分布式架构?SOA架构?微服务架构?。


Q17: 什么是SpringCloud,有什么功能,有什么组件?

A:完整的服务解决框架?Eureka、Hystrix、Zuul、Feign、Ribbon等?。


Q18: 说说对Spring Eureka组件的了解?

A:注册中心?集群?服务消费者模式?服务注册模式?。


Q19: SpringCloud Eureka替代方案?

A:Consul?Zookeeper?。


Q20: 什么是CAP理论?为什么Eureka只保证CP,Eureka保证AP

A:“一致性C”、“可用性A”、“容错性P”?Eureka需要选举,不能保证A,Eureka只有一个Eureka节点都可以运行,不能保证C。


Q21: 说说对Spring Ribbon的看法

A:本地负载均衡、某方面比Nginx好,均衡分担到各个客户端、Nginx处理压力有点大。


Q22: 什么是服务雪崩?

A:服务堆积在一个线程池,满了,无法访问,会雪崩。


Q23: 服务雪崩的解决方案有那些?举例3个

A:降级(返回一个友好提示)、限流(令牌桶、漏桶)、熔断(达到阀值,返回友好提示)。


Q24: Hystrix如何集成(回忆)?如何使用JMeter压力测试

A:配置文件?方法声明熔断?熔断回调方法?。


Q25: Hystrix有没有可视化工具?如果集群如何查看?

A:仪表盘:监控Hystrix各项指标?Turbine集群监控。


Q26: 说说你对Feign的理解?

A:声明式服务调用、调用方式类似于Controller调用Service一样,无需知道url、端口等。


Q27: SpringCloud 分布式配置中心有几个模块?流程是如何的?

A:Git/SVN -> ConfigServer -> Config-Client1、 Config-Client2、 Config-Client3。


Q28: SpringCloud 分布式配置中心有两种刷新数据方式,哪两种?流程如何?

A:Actuator端点刷新(手动)?bus消息总线刷新(主动刷新)。


Q29: 说说对SpringCloud Zuul的理解?

A:网关、比Nginx弱,Nginx抗高并发、Zuul适用于请求过滤和拦截。


Q30: 网关框架有哪些?举3个例子?

A:Kong、Nginx、Orange。


Q31:Zuul如何集成Ribbon实现负载均衡?如何实现动态网关?(回忆)

A:动态网关可以参考分布式配置中心技术。


Q32:Swagger是什么?有什么作用?

A:接口管理,可以在线调试。


Q33:如何使用Swagger管理所有微服务接口?

A:Zuul整合Swagger。


Q34:什么是Sleuth,它和Zipkin有什么关系?

A:服务链路监控,Zipkin收集服务的定时数据,Sleuth结合Zipkin,将信息返回给Zipkin,ZipkinUI展示数据。


Q35:服务跟踪的原理?

A:TraceID?SpanID?。


Q36:什么是消息总线?如何实现分布式配置文件更新?

A:广播的方式通知所有微服务、实现动态刷新?使用RabbitMQ工具。


Q37:什么是消息驱动?绑定器结构图是如何的?

A:简化开发人员对中间件的使用复杂度?Source、Sink、Channel、Binder(抽象层,随机替换RabbitMQ和Kafka)。


Q37:消费者组收到两个消息如何处理?要求至收到一个消息?

A:通过指定一个组名来实现消费者轮询,智能消费一个消息。


Q38:描述下OAth的流程?如何使用SpringCloud搭建微服务开放平台?

A:???。


Q39:SpringCloud2.x有什么新技术?举3个例子?

A:SpringCloud GateWay、阿里Nacos、SpringCloud-R4j熔断器等。


Q40:Dubbo是什么?

A: RPC远程调用、服务治理框架。


Q41:Dubbo原理图包含哪几种对象?每个对象做什么?流程如何?

A: 提供者、消费者、注册中心、监控、服务运行容器?提供者、消费者注册中心注册 ->消费者从注册中心获取服务列表 -> 提供者和消费者每分钟发送依次数据给监控中心。


Q42:Dubbo如何搭建(回忆)?

A: 注册中心、DubboAdmin、客户端注册Zookeeper。


Q43:Dubbo与SpringCloud的区别(举例3个)?为何抛弃Dubbo?

A: 开发商?更新与稳定?内容。


Q44:回忆Docker相关的内容?

A: 优点?架构?与虚拟机的比较?docker命令的记忆?。

目录
相关文章
|
10天前
|
运维 Kubernetes Cloud Native
云原生技术:容器化与微服务架构的完美结合
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术以其灵活性和高效性成为企业的新宠。本文将深入探讨云原生的核心概念,包括容器化技术和微服务架构,以及它们如何共同推动现代应用的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务,揭示云原生技术的强大能力和未来潜力。
|
18天前
|
运维 持续交付 API
从零构建微服务架构:一次深度技术探索之旅####
【10月更文挑战第28天】 本文记录了作者在从零开始构建微服务架构过程中的深刻技术感悟,通过实战案例详细剖析了微服务设计、开发、部署及运维中的关键要点与挑战。文章首先概述了微服务架构的核心理念及其对企业IT架构转型的重要性,随后深入探讨了服务拆分策略、API网关选型、服务间通信协议选择、容器化部署(Docker+Kubernetes)、以及持续集成/持续部署(CI/CD)流程的设计与优化。最后,分享了在高并发场景下的性能调优经验与故障排查心得,旨在为读者提供一套可借鉴的微服务架构实施路径。 ####
55 3
|
5天前
|
Cloud Native 云计算 Docker
云原生技术的崛起:从容器化到微服务架构
云原生技术的崛起:从容器化到微服务架构
|
10天前
|
监控 API 微服务
后端技术演进:从单体架构到微服务的转变
随着互联网应用的快速增长和用户需求的不断演化,传统单体架构已难以满足现代软件开发的需求。本文深入探讨了后端技术在面对复杂系统挑战时的演进路径,重点分析了从单体架构向微服务架构转变的过程、原因及优势。通过对比分析,揭示了微服务架构如何提高系统的可扩展性、灵活性和维护效率,同时指出了实施微服务时面临的挑战和最佳实践。
30 7
|
11天前
|
Kubernetes Cloud Native Docker
云原生技术探索:容器化与微服务的实践之道
【10月更文挑战第36天】在云计算的浪潮中,云原生技术以其高效、灵活和可靠的特性成为企业数字化转型的重要推手。本文将深入探讨云原生的两大核心概念——容器化与微服务架构,并通过实际代码示例,揭示如何通过Docker和Kubernetes实现服务的快速部署和管理。我们将从基础概念入手,逐步引导读者理解并实践云原生技术,最终掌握如何构建和维护一个高效、可扩展的云原生应用。
|
1月前
|
Cloud Native API 持续交付
利用云原生技术优化微服务架构
【10月更文挑战第13天】云原生技术通过容器化、动态编排、服务网格和声明式API,优化了微服务架构的可伸缩性、可靠性和灵活性。本文介绍了云原生技术的核心概念、优势及实施步骤,探讨了其在自动扩展、CI/CD、服务发现和弹性设计等方面的应用,并提供了实战技巧。
|
1月前
|
人工智能 文字识别 Java
SpringCloud+Python 混合微服务,如何打造AI分布式业务应用的技术底层?
尼恩,一位拥有20年架构经验的老架构师,通过其深厚的架构功力,成功指导了一位9年经验的网易工程师转型为大模型架构师,薪资逆涨50%,年薪近80W。尼恩的指导不仅帮助这位工程师在一年内成为大模型架构师,还让他管理起了10人团队,产品成功应用于多家大中型企业。尼恩因此决定编写《LLM大模型学习圣经》系列,帮助更多人掌握大模型架构,实现职业跃迁。该系列包括《从0到1吃透Transformer技术底座》、《从0到1精通RAG架构》等,旨在系统化、体系化地讲解大模型技术,助力读者实现“offer直提”。此外,尼恩还分享了多个技术圣经,如《NIO圣经》、《Docker圣经》等,帮助读者深入理解核心技术。
SpringCloud+Python 混合微服务,如何打造AI分布式业务应用的技术底层?
|
1月前
|
Kubernetes Cloud Native 云计算
云原生时代的技术演进:Kubernetes与微服务架构的完美融合
随着云计算技术的飞速发展,云原生概念逐渐深入人心。本文将深入探讨云原生技术的核心——Kubernetes,以及它如何与微服务架构相结合,共同推动现代软件架构的创新与发展。文章不仅剖析了Kubernetes的基本工作原理,还通过实际案例展示了其在微服务部署和管理中的应用,为读者提供了一条清晰的云原生技术应用路径。
77 2
|
29天前
|
运维 Kubernetes 开发者
构建高效后端服务:微服务架构与容器化技术的结合
【10月更文挑战第18天】 在数字化转型的浪潮中,企业对后端服务的要求日益提高,追求更高的效率、更强的可伸缩性和更易于维护的系统。本文将探讨微服务架构与容器化技术如何结合,以构建一个既灵活又高效的后端服务体系。通过分析当前后端服务面临的挑战,介绍微服务和容器化的基本概念,以及它们如何相互配合来优化后端服务的性能和管理。本文旨在为开发者提供一种实现后端服务现代化的方法,从而帮助企业在竞争激烈的市场中脱颖而出。
26 0
|
2月前
|
Kubernetes Cloud Native Docker
探索云原生技术之旅:从容器到微服务
【8月更文挑战第42天】本文将带你踏上一场云原生技术的奇妙之旅,我们将从容器技术的基础出发,逐步深入到微服务架构的世界。你将了解到如何利用Docker和Kubernetes简化应用部署与管理,以及如何通过微服务设计原则构建可扩展、灵活的系统。准备好一起探索这些令人兴奋的技术了吗?让我们开始吧!
62 14
下一篇
无影云桌面