将我的服务开放给用户 | 青训营笔记

80 阅读2分钟

前言

本节课介绍了一些网络接入的问题,并且进行了一些动手实践。

1.网络接入

1.介绍

  • 字节接入框架 image.png

2.使用域名系统

  • 用域名系统替换hosts文件

  • 域名空间

    • 域名空间被组织成树形结构
    • 域名空间通过划分zone的方式进行分层授权管理
    • 全球公共域名空间仅对应一棵树
    • 根域名服务器:查询起点
    • 域名组成格式:[a-zA-ZO-9_-],以点划分label
  • 域名备案:防止在网上从事非法的网站经营活动,打击不良互联网信息的传播,一般在云厂商处即可进行实名认证并备案

3.自建DNS服务器

  • DNS查询流程 image.png

  • 常见的开源 DNS:bind、nsd、knot、coredns

4.接入HTTPS协议

  • 常见的加密算法

    • 对称加密:一份密钥;非对称加密:公钥与私钥
  • SSL通信过程 image.png

  • 证书链:证书摘要信息、数字签名、上级CA公钥

5.接入全站加速

  • 问题:极大的流失了大部分的用户群体,NPS 留存率数据不乐观。响应慢、卡顿
  • 解决方案
    • 源站容量问题:增加后端机器扩容;静态内容,使用静态加速缓存
    • 网络传输问题:动态加速DCDN
    • 全站加速问题:静态加速+动态加速
  • 静态加速CDN优势:
    • 解决服务器端的“第一公里”问题
    • 缓解甚至消除了不同运营商之间互联的瓶颈造成的影响
    • 减轻了各省的出口带宽压力
    • 优化了网上热点内容的分布

6.4层负载均衡

  • 定义:基于IP+端口,利用某种算法将报文转发给某个后端服务器,实现负载均衡地落到后端服务器上

  • 功能:

    • 解耦 vip 和 rs
    • NAT
    • 防攻击:syn proxy
  • 特点:

    • 大部分都是通过dpdk技术实现,技术成熟,大厂都在用
    • 纯用户态协议栈,消除协议栈瓶颈
    • 无缓存,零拷贝,大页内存
    • 仅针对4层数据包转发,小包转发可达到限速,可承受高 cps
  • 常见调度算法原理

    • RR轮询:Round Robin,将所有的请求平均分配给每个真实服务器RS
    • 加权RR轮询:给每个后端服务器一个权值比例,将请求按照比例
    • 分配最小连接:把新的连接请求分配到当前连接数最小的服务器
    • 五元组hash:根据sip、sport、 proto、dip、dport对静态分配的服务器做散列取模
      • 缺点:当后端某个服务器故障后,所有连接都重新计算,影响整个hash 环
    • 一致性hash:只影响故障服务器上的连接session,其余服务器上的连接不受影响