系统设计之DNS优化

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: DNS优化

作用

将域名解析成对应的IP地址,把域名解析成对应的机器IP地址,便于我们的请求去进行访问.

可以理解为DNS是存储一个域名和IP对应关系的数据库.


域名和IP的关系

多对多关系.


服务器类型

根域名服务器: 13个.

A : 主根. 其他 : 辅根.

中国拥有根服务器的镜像服务器.


域名解析流程

www.baidu.com  

hosts - > com -> baidu.com -> www.baidu.com

本地域名 - > 顶级域名服务器 - > 二级域名 -> 三级域名

看了上面的步骤,我们其实可以想象一下,根域名服务器的压力到底有多大,几乎全球的人上网,甚至不止是人,比如说服务器都会先请求根域名,这块肯定是需要优化处理的.

每次访问新域名的时候,浏览器和操作系统会提前把一些域名信息缓存下来,每次查询的时候先去看缓存.

浏览器(先看缓存)

OS(先看缓存)

hosts

LDNS(缓存)

LDNS 三级域名 -> 二级域名 -> 顶级域名服务器

有缓存之后就可以先反向查找,最后再寻找数量最多的顶级域,这样就大大减少了顶级域的压力.

每个国家基本都有增加域名服务器的镜像,因为不肯呢个跨国家请求顶级域名这样也太慢了.


缓存优化方案

1.提前做好DNS的缓存.

2.域名对应多个IP.  结论:通过DNS做负载均衡,将请求打给多台服务器. 实现简单,没有成本,DNS本身就支持这个功能.

缺点:

1.时效性问题,上线了一台或者宕机了一台服务器无法做到实时更新.

2.负载均衡算法比较简单,就是最简单的普通轮询,是默认的.


小技巧-手动配置DNS

有时候到了一个地方,感觉网络特别慢,可能是DNS被污染了,因为不配置默认会导向最近的一个DNS服务器,它可能已经承受了很大的访问量,导致自身速度很慢,这时候我们可以配置一个比较有名的DNS

如下所示

223.6.6.6

223.5.5.5

114.114.114.114

目录
相关文章
|
17天前
|
SQL 关系型数据库 MySQL
深入解析MySQL的EXPLAIN:指标详解与索引优化
MySQL 中的 `EXPLAIN` 语句用于分析和优化 SQL 查询,帮助你了解查询优化器的执行计划。本文详细介绍了 `EXPLAIN` 输出的各项指标,如 `id`、`select_type`、`table`、`type`、`key` 等,并提供了如何利用这些指标优化索引结构和 SQL 语句的具体方法。通过实战案例,展示了如何通过创建合适索引和调整查询语句来提升查询性能。
118 9
|
2月前
|
消息中间件 存储 缓存
十万订单每秒热点数据架构优化实践深度解析
【11月更文挑战第20天】随着互联网技术的飞速发展,电子商务平台在高峰时段需要处理海量订单,这对系统的性能、稳定性和扩展性提出了极高的要求。尤其是在“双十一”、“618”等大型促销活动中,每秒需要处理数万甚至数十万笔订单,这对系统的热点数据处理能力构成了严峻挑战。本文将深入探讨如何优化架构以应对每秒十万订单级别的热点数据处理,从历史背景、功能点、业务场景、底层原理以及使用Java模拟示例等多个维度进行剖析。
57 8
|
3月前
|
安全 编译器 程序员
【C++篇】C++类与对象深度解析(六):全面剖析拷贝省略、RVO、NRVO优化策略
【C++篇】C++类与对象深度解析(六):全面剖析拷贝省略、RVO、NRVO优化策略
63 2
|
3月前
|
编译器 程序员 C语言
精简函数栈帧:优化创建和销毁过程的完全解析(建议收藏,提升内功)
精简函数栈帧:优化创建和销毁过程的完全解析(建议收藏,提升内功)
|
1月前
|
机器学习/深度学习 人工智能 PyTorch
Transformer模型变长序列优化:解析PyTorch上的FlashAttention2与xFormers
本文探讨了Transformer模型中变长输入序列的优化策略,旨在解决深度学习中常见的计算效率问题。文章首先介绍了批处理变长输入的技术挑战,特别是填充方法导致的资源浪费。随后,提出了多种优化技术,包括动态填充、PyTorch NestedTensors、FlashAttention2和XFormers的memory_efficient_attention。这些技术通过减少冗余计算、优化内存管理和改进计算模式,显著提升了模型的性能。实验结果显示,使用FlashAttention2和无填充策略的组合可以将步骤时间减少至323毫秒,相比未优化版本提升了约2.5倍。
50 3
Transformer模型变长序列优化:解析PyTorch上的FlashAttention2与xFormers
|
28天前
|
前端开发 UED
React 文本区域组件 Textarea:深入解析与优化
本文介绍了 React 中 Textarea 组件的基础用法、常见问题及优化方法,包括状态绑定、初始值设置、样式自定义、性能优化和跨浏览器兼容性处理,并提供了代码案例。
53 8
|
2月前
|
缓存 NoSQL Java
千万级电商线上无阻塞双buffer缓冲优化ID生成机制深度解析
【11月更文挑战第30天】在千万级电商系统中,ID生成机制是核心基础设施之一。一个高效、可靠的ID生成系统对于保障系统的稳定性和性能至关重要。本文将深入探讨一种在千万级电商线上广泛应用的ID生成机制——无阻塞双buffer缓冲优化方案。本文从概述、功能点、背景、业务点、底层原理等多个维度进行解析,并通过Java语言实现多个示例,指出各自实践的优缺点。希望给需要的同学提供一些参考。
50 7
|
1月前
|
存储 监控 算法
Java虚拟机(JVM)垃圾回收机制深度解析与优化策略####
本文旨在深入探讨Java虚拟机(JVM)的垃圾回收机制,揭示其工作原理、常见算法及参数调优方法。通过剖析垃圾回收的生命周期、内存区域划分以及GC日志分析,为开发者提供一套实用的JVM垃圾回收优化指南,助力提升Java应用的性能与稳定性。 ####
|
2月前
|
缓存 并行计算 Linux
深入解析Linux操作系统的内核优化策略
本文旨在探讨Linux操作系统内核的优化策略,包括内核参数调整、内存管理、CPU调度以及文件系统性能提升等方面。通过对这些关键领域的分析,我们可以理解如何有效地提高Linux系统的性能和稳定性,从而为用户提供更加流畅和高效的计算体验。
36 2
|
2月前
|
前端开发 Android开发 UED
移动应用与系统:从开发到优化的全面解析####
本文深入探讨了移动应用开发的全过程,从最初的构思到最终的发布,并详细阐述了移动操作系统对应用性能和用户体验的影响。通过分析当前主流移动操作系统的特性及差异,本文旨在为开发者提供一套全面的开发与优化指南,确保应用在不同平台上均能实现最佳表现。 ####
31 0

相关产品

  • 云解析DNS
  • 推荐镜像

    更多