The Last Day | 青训营笔记

104 阅读4分钟

这是我参与「第五届青训营」伴学笔记创作活动的第 19 天

前言:

不知不觉,青训营短暂的旅程结束了,有许多收获,又有许多遗憾,不过,后端学习之路还会一直继续。想说的话很多,但一时也并不能写出多么精彩的文案。只能说,不要给后面的日子留下太多遗憾,做好每一天吧。

内容:

主要对几节没有记过笔记的大课做个简单总结吧

一、从需求到上线全流程

1.有哪些流程

需求阶段——》开发阶段——》测试阶段——》发布阶段——》运维阶段

开发阶段:

开发环境逐渐云原生化

FaaS,PaaS等等技术,让开发逐渐从本地IDE向线上转变

从入职领到电脑搭建完一套完整的开发环境需要很久,通过WEB IDE等技术,环境未来将会开箱即用

2.流程怎样优化

image.png DevOps解决方案

代码管理

自动化测试

持续集成

持续交付

效率竖井

流程中实际产生价值的部分很短

大量的时间用在等待和传递上

人和人之间的沟通很慢

全流程自动化

需求发起研发流程的自动化

写代码,测试环境部署的自动化

自动化测试触发和报告分析

发布过程可观融入流程

3.后端开发的一周

站会、代码和修改bug

image.png

二、架构初探-谁动了我的蛋糕

1.企业级后端架构剖析-云计算

image.png

2.企业级后端架构剖析一云原生

image.png 云原生技术为组织(公司)在公有云、自由云、混合云等新型的动态环境中,构建和运行可弹性拓展的应用提供了可能。它的代表技术有:

容器化

服务网格

微服务

不可变基础架构

声明式API

弹性计算资源类型:

服务资源调度

·微服务:和面、雕花 ·大服务:烤箱

计算资源调度

·在线:热销榜单 ·离线:热销榜单更新

消息队列

·在线:削峰、解耦 ·离线:大数据分析

弹性存储资源类型:

经典

·对象:宣传视频 ·大数据:用户消费记录

关系型数据库

·收银记录

元数据

·服务发现:蛋糕店通讯录

NoSQL

·KV:来个xx蛋糕

微服务架构:

通信标准:

HTTP (RESTful API)

RPC (Thrift,gRPC)

微服务中间件RPC vs HTTP:

性能

服务治理

协议可解释性

云原生场景下,微服务大可不必在业务逻辑中实现符合通信标准的交互逻辑,而是交给框架来做

服务网格(Service Mesh):

微服务之间通讯的中间层

高性能网络代理

业务代码与治理解耦

相比较于RPC/HTTP框架:

异构系统治理统一化

与业务进程解耦,生命周期易管理

3.后端架构实战:

问题背景——》问题提炼——》自适应静态权重——》自适应动态权重Alpha&Beta——》自适应动态权重Release

三、打开抖音互联网会发生什么?带你探索计算机网络

网络接入

-互联网

-路由

-ARP协议

-IP协议

-NAT

网络传输

-数据包

-数据包发送

-先请求DNS

-DNS的传输协议UDP

-TCP三次握手

-TCP传输

-HTTP/HTTP1.1

-HTTPS

-SSL/TLS握手

网络提速

协议优化:

-HTTP2.0

-多路复用/stream

-QUIC/HTTP3.0

网络路径优化:

-数据中心分布

-同运营商访问

-静态资源(图片视频)路径优化(CDN)

-动态API(播放/评论接口) 路径优化(DSA)

网络稳定

-容灾概念

-故障排查

-故障明确

-故障止损

-分段排查

-网络故障排查常用命令

-故障预防

四、将我的服务开放给用户

问题引入:加载网页过程(略) image.png 字节接入框架:

image.png

后面为介绍目录:

2.1使用域名系统

2.1.1Host管理

2.1.2使用域名系统

2.1.3域名购买与配置迁移

2.1.4如何开放外部用户访问

方案:租赁一个外网ip,专用于外部用户访问门户网站,将www.example.com解析到外网ip 100.1.2.3,将该ip绑定到一台物理机上,并发布公网route,用于外部用户访问。

2.2自建DNS服务器

2.2.1问题背景

2.2.2DNS查询过程

2.2.3DNS记录类型

2.2.4权威DNS系统架构

2.3接入HTTPS协议

2.3.1问题背景

2.3.2对称加密和非对称加密

2.3.3SSL的通信过程

2.3.4证书链

2.3.5使用https

2.4接入全站加速

2.4.1问题背景

2.4.2解决方案a

2.4.3静态加速CDN

2.4.4动态加速DCDN

2.4.5DCDN原理

2.4.6使用全站加速

2.5 4层负载均衡

2.5.1问题背景

2.5.2什么是4层负载均衡?

2.5.3常见的调度算法原理

2.5.4常见的实现方式FULLNAT

2.5.5 4层负载均衡特点

2.5.6使用4层负载均衡

2.6 7层负载均衡

2.6.1问题背景

2.6.2 Nginx简介

2.6.3 Nginx和Apache性能对l比

2.6.4 Nginx反向代理示意图

2.6.5 Nginx内部架构

2.6.6事件驱动模型

2.6.7异步非阻塞

2.6.8 Nginx简单调优

2.6.8别让OS限制了Nginx的性能

2.6.8提升CPU使用效率

2.6.9提升网络效率

2.6.10使用7层负载均衡

引用:

字节内部课

-juejin.cn/course/byte…

-juejin.cn/course/byte…