1、国际机票后端引擎缓存系统目录 国际机票系统的情况 国际机票系统的架构及其组件选型国际机票系统状况1. 中国最大的OTA(Online Travel Agency )2. 200多个国家和地区3. 5000多个城市/机场4. 2,000,000 多条航线5. IBU 200%的增长6. 超过 100,000,000 的查询国际机票系统的架构及其组件选型ArchitectureMongoDB Cluster:Nodes Size WriteIDCReadSHAFRW7 shards *3 replica800GB70K140K3 replica 20GB + N.A.N.A.Overall 命中率
2、: 50%Why Mongo? 高并发、高吞吐、低延迟 Schema free 根据不同的策略,读取不一样的节点 分布式部署以及水平拓展能力 滚动式变更,使得业务无需变更窗口时间 多样化的索引支撑,在业务上进一步保证低延迟下的高命中率 节约成本业务影响 增加了整个系统的吞吐 降低了平均响应时间 更重要的是在节约成本的同时,带给客户更好的用户体验,从而提升了下单的可能性机器学习策略来提高缓存命中率17 %Features:OD-ODCountry-Date-Month-QueryTime-Count-SeatGrade-AgentLabels:验价与否通过与否查询频率/间隔GDSCacheCtr
3、ip30 %TTL 时长More . %通过率TTL = MongoDB Cluster SHAConfig ServerPrimaryConfig Serversecondary(WT)Config Serversecondary(WT)ConfigSvr(WT)AGG1AGG2Shard01Primary(InMem)Shard01Secondary(InMem)Share01AribterShard01Shard02mongos01mongos02mongos03Shard02Primary(InMem)Shard02Secondary(InMem)Share02AribterAGG3Shard03Primary(InMem)Shard03Secondary(InMem)Shard03Share03Aribtermongos04Shard07Primary(InMem)Shard07Secondary(InMem)Shard07Share07AribterMongoDB TTL Index情况 : 缓存机票时效性 全内存引擎限制解决方案: TTL Index 添加新分片Q&A