10 万人的大场馆如何“画座位”?

本文介绍了大麦网如何从Flash绘座系统过渡到基于Canvas的新版绘座系统,面对Adobe Flash的退役,大麦网选择了SVG+Canvas的技术路线,通过化整为零的策略解决了大量座位渲染的性能问题。文章详细讨论了接口优化、座位自由组合变形、打印顺序计算等关键改进,展示了大麦网在技术演进中遇到的挑战和解决方案。
摘要由CSDN通过智能技术生成

一、背景

1、网络售票,需要画座:购票所见即所得

大麦主要业务是票务,包括演唱会、体育赛事、音乐节等,品类繁多。卖票就要画场馆、画座位,大家都在网上买过电影票,这不难理解。虽然可以拿电影售票做类比,但底层难度差异很大。没有 10W 座的电影院,却有 10W 座的演唱会,而且演出 / 体育类场馆变化多,挑战相当大。

2、大麦绘座演进:从示意图到实际场景图

大麦以前的绘座系统,是安装版的程序,画座位只能一个看台一个看台地画,看台之间完全无关联,画出来几乎每个看台都长一个模样,座位只有相对位置的示意图,没有角度、距离,更谈不上精确定位。
在这里插入图片描述
图 1:老版绘座页面(已淘汰)

大麦网从 2017 年,开始设计新版绘座系统。这里没有修补,没有重构,新版绘座完全重来,连技术栈也由.NET 换成了 Java,由 C/S 换成了 B/S。

新绘座以 SVG 矢量图为核心,通过 Canvas 进行绘制,在演进的过程中攻克了大量的性能卡点和技术难点,最终打造成型,堪以重任。
在这里插入图片描述
在这里插入图片描述
图 2:新绘座页面

二、新绘座:Flash 走了,Canvas 来了

1、Flash 已死,来到路口,别无选择

新绘座已诞生 2 年多,现在回首,这条路似乎早已注定。

老版绘座和选座是基于 Flash 的,悲剧的是,Adobe 宣称 Flash 2020 年后,将不再维护,相关技术会在 2020 年底全部退役,大麦的绘座和选座系统,都被迫转型。

Flash 只是原因之一,看过竞争对手的产品,会发现 SVG 是条不错的道路,即使没有 Flash 这一出,大麦网也会朝这个方向迈进。

2、技术选型

1)任何过度使用 DOM 的应用,都不会快。

经过技术调研,发现国外一些

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值