[这是我参与「第三届青训营 -后端场」笔记创作活动的的第5篇笔记】
将我的服务开放给用户
1.系统的熟悉和学习到企业级网络接入核心组件及基本原理
2.当面试时,别人问你从输入网页到内容加载出来,可以泛泛而谈
3.可以自己从零到一搭建属于自己的网站/博客
4.当访问服务出现问题时,可以针对性的故障分析及解决
01接入问题引入
DNS->TCP->TLS->HTTP请求
1.2字节接入框架
A life of a request
02企业接入升级打怪之路
Host管理 随着example公司业务规模和员工数量的增长,使用该方式面临诸多问题 使用域名空间
使用域名系统替换hosts文件
古纳于域名空间:
1.域名空间被组织成树形结构
2.域名空间通过划分zone的方式进行分层授权管理
3.全球公共域名空间仅对应一棵树
4.跟域名服务器:查询起点
5.域名组成格式:【a-zA-Z0-9_-】,以点划分label 如何开放外部用户访问
自建DNS服务器: DNS记录类型 权威DNS系统框架
站在企业角度,我们需要的是那种DNS服务器:
权威DNS,LocalDNS(可选)
常见的开源DNS:bind,nsd,knot,coredns
bind: 接入Http协议
对称加密和非对称加密
常见的加密算法
对称加密:一份密钥
非对称加密:公钥和私钥 SSL的通信过程
client random
server random
premaster secret
加密算法协商 对称密钥 session key 提升cpu使用效率
合适的worker进程数
Worker进程数=cpu核数
cpu亲和
每个worker程绑定一个cpu核,提升缓存命中率
减少cpu开销
Multi_accept允许worker同时接受新连接
accept_mutex解决惊群问题
reuseport监听同端口,内核负载均衡