Spring Boot 与 Kubernetes 云原生微服务实践
杨波
前携程 / 拍拍贷技术总监,微服务技术专家
28227 人已学习
新⼈⾸单¥98
课程目录
已完结/共 94 讲
第一章:课程介绍和案例需求 (5讲)
第十章:项⽬复盘、应用和扩展环节 (2讲)
第十一章:附录 Staffjoy 项目源代码解析 (8讲)
时长 14:53
时长 10:29
时长 10:52
时长 05:09
时长 15:06
时长 16:17
Spring Boot 与 Kubernetes 云原生微服务实践
登录|注册
留言
9
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 31 | 生产级网关需要考虑哪些环节?
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.75x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
01 | 课程介绍
02 | 背景说明
03 | 课程目标和主要内容
04 | 课程案例需求
05 | 课程补充说明
06 | 为何采用微服务架构?
07 | 架构设计和技术栈选型
08 | 数据和接口模型设计:账户服务
09 | 数据和接口模型设计:业务服务
10 | Dubbo、Spring Cloud和Kubernetes该如何选型(上)
11 | Dubbo、Spring Cloud和Kubernetes该如何选型(中)
12 | Dubbo、Spring Cloud和Kubernetes该如何选型(下)
13 | 技术中台到底讲什么?
14 | Staffjoy项目结构组织
15 | 谷歌为何采用单体仓库(Mono-Repo)?
16 | 微服务接口参数校验为何重要?
17 | 如何实现统一异常处理?
18 | DTO和DMO为什么要互转?
19 | 如何实现基于Feign的强类型接口?
20 | 为什么框架层就要考虑分环境配置?
21 | 异步处理为何要复制线程上下文信息?
22 | 为你的接口添加Swagger文档
23 | 主流微服务框架概览
24 | 网关和BFF是如何演化出来的(上)
25 | 网关和BFF是如何演化出来的(下)
26 | 网关和反向代理是什么关系?
27 | 网关需要分集群部署吗?
28 | 如何设计一个最简网关?
29 | Faraday网关代码解析(上)
30 | Faraday网关代码解析(下)
31 | 生产级网关需要考虑哪些环节?
32 | 主流开源网关概览
33 | 安全认证架构演进:单块阶段(上)
34 | 安全认证架构演进:单块阶段(下)
35 | 安全认证架构演进:微服务阶段
36 | 基于JWT令牌的安全认证架构
37 | JWT的原理是什么?
38 | JWT有哪两种主要流程?
39 | Staffjoy安全认证架构和SSO
40 | 用户认证代码剖析
41 | 服务调用鉴权代码剖析
42 | 如何设计用户角色鉴权?
43 | Spring Boot微服务测试该如何分类?
44 | 什么是契约驱动测试?
45 | 什么是测试金字塔?
46 | 单元测试案例分析
47 | 集成测试案例分析
48 | 组件测试案例分析
49 | Mock vs Spy
50 | 何谓生产就绪(Production Ready)?
51 | Spring Boot如何实现分环境配置
52 | Apollo vs SpringCloudConfig vs K8s ConfigMap
53 | CAT vs Zipkin vs Skywalking(上)
54 | CAT vs Zipkin vs Skywalking(下)
55 | 结构化日志和业务审计日志
56 | 集中异常监控和Sentry
57 | EFK & Prometheus & Skywalking + Kubernetes 集成架构
58 | 本地开发部署架构和软件需求
59 | 手工服务部署和测试(上)
60 | 手工服务部署和测试(中)
61 | 手工服务部署和测试(下)
62 | SkyWalking调用链监控实验
63 | Docker和Docker Compose简介
64 | 容器镜像构建Dockerfile解析
65 | Docker Compose服务部署文件剖析
66 | 将Staffjoy部署到本地Docker Compose环境(上)
67 | 将Staffjoy部署到本地Docker Compose环境(下)
68 | 到底什么是云原生架构?
69 | Kubernetes背景和架构
70 | Kubernetes有哪些基本概念(上)
71 | Kubernetes有哪些基本概念(下)
72 | 理解Kubernetes节点网络和Pod网络
73 | 深入理解Service和ServiceDiscovery
74 | NodePort vs LoadBalancer vs Ingress
75 | 本地测试Kubernetes部署文件剖析
76 | 本地测试Kubernetes环境搭建
77 | 将Staffjoy部署到本地Kubernetes环境(上)
78 | 将Staffjoy部署到本地Kubernetes环境(下)
79 | 生产环境Kubernetes部署文件剖析
80 | 阿里云Kubernetes环境创建
81 | 将Staffjoy部署到阿里云Kubernetes环境
82 | Kubernetes应用动态配置实验
83 | Kubernetes应用金丝雀发布实验
84 | 阿里云资源释放
85 | 课程复盘
86 | 项目扩展和应用
87 | Account服务
88 | Company服务
89 | Mail、SMS和Bot服务
90 | Faraday服务
91 | WhoAmI服务
92 | WWW服务
93 | 前端应用
94 | 结课测试&结束语
登录 后留言

全部留言(9)

  • 最新
  • 精选
Lyle
防爬虫上次听到还有一个套路是网页中放一个隐藏链接,用户是看不到的,不会点到,爬虫会爬到,凡是访问这个链接的都是爬虫,禁掉

作者回复: 好办法!

2019-09-25
12
Geek_1380b5
我记得网关本身应该承载高并发,ngixs可以达到10万,咱这个法拉第大概是个什么水平

作者回复: 如果比较的是绝对性能,那么java/spring开发的网关肯定比不上nginx。但是并不是说java/spring开发的网关就不能承载高并发,Netflix(高峰期占全面1/3的互联网流量)之前采用的Zuul 1.x做其API网关,Zuul就是Java/Servlet开发的,Zuul本身无状态可以水平扩容,可以支撑Netflix全部API流量。另外携程之前API网关也是基于Zuul改造,支撑每日百亿级流量。 Faraday比Zuul更加简单,虽然它只是一个教学用的简化网关,但是它的性能(经过一定的优化)并不会比zuul差。 实际上,企业级网关单纯比较绝对性能意义不大,更重要的是看是否支持水平扩容(容量不够可以简单扩容即可,云环境中就是多起几个实例而已),是否易于维护(nginx偏运维对开发并不友好),监控治理体系是否完善等,这些方面对网关等技术基础设施更为重要。

2020-02-20
5
hunterlodge
请问老师,防爬的一般套路是怎样的呢?谢谢

作者回复: 大致思路:在网关上收集访问日志(Access Log),进入Kafka,后台大数据系统分析访问日志,生成爬虫ip列表(简单的统计单位时间ip访问量,生成top ip列表,复杂的还可以根据访问模式+AI计算出爬虫行为),这个爬虫ip列表再反馈给网关(网关可以定期拉取),网关根据这个ip列表禁止访问。ip列表比较简单粗糙,也可以是用户id列表。

2019-07-31
5
龙彦极客
波波老师你好! 网关用zuul,是无状态的,后期要水平扩展,在k8s里面部署要怎么做? 如果只要一个域名,是不是阿里云直接LBS+zuul(replicaset扩展)就可以了? 多个域名,才考虑用阿里云LBS+Ingress+zuul集群(replicaset扩展),这样吗?

作者回复: 把zuul部署成k8s中的服务service,可以按需扩展(通过replicaset/deployment方式)。 LBS -> zuul service可以。 LBS -> Ingress service -> zuul service也可以。这种更灵活,除了微服务以外,静态或者mvc站点,也可以躲在Ingress后面,通过ingress做灵活的反向代理。

2020-11-04
1
Katherine
我感觉网关的内容理解起来比较费劲

作者回复: 其实网关在整个微服务体系中是比较好理解的,网关在企业网络边界上,是API出入口,负责路由/安全/认证/监控等跨横切面的功能。 可以理解成一个公司的门卫,负责出入流量监控,安全监控,给人指路(路由)等。

2020-04-17
1
独钓寒江雪
那自己做个网关的话,如何做ha?也是用的keepalived去关联?然后所有的服务2个都注册么??那如何下线服务呀。。。如果现在要选择一个网关的话在上面做拓展的话,是选择sprngclound gateaway么?有啥推荐么老师。

作者回复: 网关一般是无状态部署,可以水平扩展,它的前置一般还有负载均衡设备(比如nginx或者硬件如F5)。 服务注册可以采用Eureka服务注册中心,有专门的API支持下线操作,具体可以看其官方文档。 网关选择,zuul已经有很多落地案例,比较稳定,spring cloud gateway也可以尝试。

2019-12-19
1
FY
波波老师,我现在实验碰到一个问题就是,我在网关之外部署了一个第三方前端应用,通过Faraday访问后端服务一直报跨域问题,但绕过faraday就可以,这个怎么解决,谢谢

作者回复: 是网关报跨域错误,还是后台服务报跨域错误? 可以给相关spring应用添加全局跨域配置,参考: https://www.baeldung.com/spring-cors

2019-11-19
2
张凌恺
波波老师,如果大流量请求访问下,网关本身是否会成为瓶颈?网关本身是否也需要部署多台做负载均衡,看到Netflix的架构是在网关之前再搭一个AWS ELB,如果不使用AWS,是否还有其他解决方案?

作者回复: 对,网关一般是无状态集群部署的,前置一般有硬件(如F5)或者软件(如nginx)LB做负载均衡,也有F5 -> nginx -> gateway软硬结合两层负载的,因为nginx配置相比F5方便。

2019-08-28
虎哥
响应流优化
2019-07-31
收起评论