和平苏州网站建设主流的网站建设软件
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:55
当前位置: 首页 > news >正文
和平苏州网站建设,主流的网站建设软件,公司网站后台模板,找别人做网站一定注意什么随着新冠病毒疫情的缓解和控制#xff0c;全球旅游业逐渐开始重新复苏。尤其在一些度假胜地#xff0c;游客数量已经恢复到疫情前的水平。
携程作为全球领先的一站式旅行平台#xff0c;旗下拥有携程旅行网、去哪儿网、Skyscanner 等品牌。携程旅行网向超过 9000 万会员提供…随着新冠病毒疫情的缓解和控制全球旅游业逐渐开始重新复苏。尤其在一些度假胜地游客数量已经恢复到疫情前的水平。
携程作为全球领先的一站式旅行平台旗下拥有携程旅行网、去哪儿网、Skyscanner 等品牌。携程旅行网向超过 9000 万会员提供酒店预订、酒店点评及特价酒店查询、机票预订、飞机票查询、时刻表、票价查询、航班查询等服务。
随着业务量迅速增长携程需要更敏捷的技术架构来满足不断激增的并发与数据量一个稳定、可靠可以随业务增长不断扩展的数据库对于携程来说显得尤其重要。作为海内外在线旅游行业的翘楚携程也曾面临着数据库带来的技术挑战。
原 MySQL 架构痛点与挑战
携程创立于 1999 年最初选择使用 SQL Server 数据库在整体数据库技术栈中占比达到 99%。 2012 年初携程开始逐步关注开源技术尤其是 MySQL不过该阶段 MySQL 使用占比仍然很低只有 10% 左右。从 2014 至 2019 年携程开始加深 MySQL 的应用并因为业务形态发生了变化携程开始从 SQL Server 转型到 MySQL对 MySQL 进行了深入研究包括内核补丁、全自动故障诊断等。
携程的应用部署在两个或多个 IDC 中数据库也对等部署在每个 IDC 中。MySQL 部署方式采用 HA节点即主备节点在同一机房部署另一节点在不同 IDC 部署这种方式保证了 HA 切换速度和数据的容灾。比如遇到单机房故障或者整个机房宕机可以迅速把第二节点启动起来。携程在主备切换和第二切换时做了很多自动化工作但这种架构也有明显缺点由于应用的无状态化数据库的切换会造成业务的短暂中断因为数据库只有一个主节点。
在扩展方式方面携程没有采用中间件的方式而是采用客户端实现分片规则。客户端在上线时会确定分片规则比如 64。再根据 ID 使用取模运算定位到某个分片这样可以更方便地进行扩展。当业务增加时实例数量从 1 变成 N 当负载下降时也可以缩回来。
但是这种扩展方式对 DBA 运维来说还有一些挑战随着 DBA 越来越多聚合会比较困难业务代码也变得复杂。
分布式数据库选型
2018 年随着携程业务的快速发展底层架构需要支持弹性扩展特别是在季节性高峰期例如春运火车票抢票等。分布式数据库由于具有 DB 级弹性、快速扩展和混合负载HTAP等优势更适合业务的发展携程开始考虑引入分布式数据库并进行调研选型。携程主要从以下几个维度考量分布式数据库
性能平衡性能和成本选择通用机型不使用高端存储或机器并要求响应稳定运维与社区学习成本适中运维复杂度低产品需开源且社区活跃成本一方面业务研发需要学习使用 SQL特别是 MySQL 协议另一方面运维团队希望产品不要过于复杂易于维护扩展性分布式数据库需要具有快速的扩展能力扩缩容对业务影响小。 携程 TiDB 部署模式
2018 年携程开始正式引入 TiDB。考虑到 TiDB 的架构和携程的 IDC 环境携程将 TiDB 分别部署在三个 IDC 机房IDC1、IDC2、IDC3中遵循同时部署的标准。TiKV、TiDB 和 PD 均匀分布在三个 IDC 机房中业务流量可以本地感知到每个机房的 TiDB Server 在单机房故障时可以自动重启到其它机房。因为客户端对 TiDB 进行了探活与感知单个 TiDB 服务器故障时客户端可以重新定向。
TiDB 在酒店和度假结算场景的应用
携程作为一个大型的在线旅游平台其酒店和度假结算场景下需要处理大量的交易数据。携程原 MySQL 架构主要采用分片sharding的扩展方式对于酒店和度假结算这类业务来说分片会变得非常困难。最初的方案是把 SQL Server 上的数据原封不动导入到 MySQL 中但测试后发现性能不佳扩展性也受限。如果采用分片方式部署不论从酒店的维度、供应商的维度或者是用户维度都很难选择合适的分片键 sharding key这种方式也对业务代码侵入性比较大。
TiDB 的分布式架构可以将数据分散存储在多个节点上实现数据的水平扩展提高系统的承载能力。因此携程最终选择了 TiDB将酒店和度假结算业务从 SQL server 迁移到 TiDB 上总数据量规模达到 8TB并受到了开发人员的一致好评满足了性能和扩展性的诸多要求同时降低了运维成本能够更好地支持携程业务的发展。
TiDB 在海量数据场景中的应用
携程的海量数据场景涉及到大量数据存储。原架构中由于单机存储限制扩展必须通过 sharding 方式实现。但该解决方案对于一些业务而言过于复杂例如在 IBU 海外业务部数据单表数据已经超过 300 亿。应用 TiDB 可以大幅提高查询性能实现大量数据的高效存储。TiDB 的行列混存架构 TiFlash 和 MPP 技术使得携程部分查询性能有了20倍提升在信息安全源数据标记数据时单表数据也超过了 60 亿行读写的响应时间都达到毫秒级单天聚合查询秒级返回。
除了使用 TiDB 携程还在使用其存储层 TiKV。引入 TiKV 是因为携程现在的业务有一些简单的 KV 存储需求携程在使用的产品有 Redis 和 Hbase但是 Hbase 的性能相比于 Redis 比较差而 Redis 则存在数据不一致的风险比如网络抖动、中断等。携程有一些业务有强一致 KV 需求例如近期引入的酒店取消政策项目Redis 虽然能满足业务需求但没有强一致性能。综合考量之后携程选择了 TiKV 解决上述挑战。TiKV 的部署与 TiDB 类似也是在三个机房分布部署应用可以感知到每个机房的 PD并且 PD 也在三个机房分别部署。该架构可以确保如果出现机房级故障或是单 PD 故障运维团队都可以做到平滑切换。
TiDB 在携程的全球化运用 随着携程近年来开始走向海外海外业务呈现迅猛增长趋势。携程也将国内成熟的数据库技术直接用于海外。目前TiDB 在携程的国内和海外业务是分开部署的海外应用复用了国内的 schema 和代码监控告警方式也与国内保持一致部署方式也是相同的。
携程引入 TiDB 并完成了一系列内部生态整合包括发布系统如表结构发布、索引发布、数据修改和查询等。由于 TiDB 和 MySQL 采用了相同的协议整合过程相对简单平滑
TiDB 原生支持 Prometheus Grafana提供了丰富的诊断数据可以根据 TiDB 故障诊断手册快速定位问题。由于 Grafana 的数据在每个集群上单独分布携程通过prometheus 源生remote write转发性能数据到携程统一监控平台以便在监控平台上进行性能告警和大盘监控。
目前 TiDB 稳定应用于携程的国内、海外各业务场景中借助 TiDB HTAP 能力携程大幅提高了查询性能实现海量数据的高效存储。
- 上一篇: 和平区网站制作深圳市力同科技有限公司
- 下一篇: 和平网站建设优化seo自适应企业网站源码
相关文章
-
和平区网站制作深圳市力同科技有限公司
和平区网站制作深圳市力同科技有限公司
- 技术栈
- 2026年03月21日
-
和嗲囡囡和做的网站注册公司核名
和嗲囡囡和做的网站注册公司核名
- 技术栈
- 2026年03月21日
-
和嗲囡囡和做的网站网站开发的前后端是什么
和嗲囡囡和做的网站网站开发的前后端是什么
- 技术栈
- 2026年03月21日
-
和平网站建设优化seo自适应企业网站源码
和平网站建设优化seo自适应企业网站源码
- 技术栈
- 2026年03月21日
-
和外国人做古玩生意的网站南宁网页制作步骤
和外国人做古玩生意的网站南宁网页制作步骤
- 技术栈
- 2026年03月21日
-
和小男生做的网站发稿类别
和小男生做的网站发稿类别
- 技术栈
- 2026年03月21日
