文档章节

性能优化思路:从珠海航展交通管控实践谈起

RiboseYim
 RiboseYim
发布于 2016/11/21 10:15
字数 1947
阅读 24
收藏 0

从2008年算起,笔者已经参加了5届珠海航展。在过去的航展中,群众“吐槽”最多的就是航展期间的交通,笔者亲身经历过的几次,无论是公交还是私家车方式,都体会到了“机场航展、路上车展”的拥堵悲壮感。 2016年珠海航展的交通状况却出奇的好,这引起了我的研究兴趣——按照Google SRE的理念,我们应该思考,自己的实践经验是否可以在其它行业复制,不同领域的成功实践是否能为我所借鉴学习。那么这次成功交通流量管控实践,是否可以为解决信息系统性能问题、架构设计优化提供借鉴思路呢?

问题描述

展馆位于珠海市三灶机场。机场本身是在一个南面临海的半岛,展会期间的主要流量方向来自市区、珠三角城市群、外地经广深中转人群。主要的人、车流量会从北、东、西三个方面汇入,穿越市区,经过跨海大桥以及机场高速,进入珠海西部区域。如图所示:

这是一个典型的流量突发峰值场景: 1、东部区域为主要流量入口,西部区域交通路网稀疏,对接容量不足;沿途多山靠海,地形地貌蜿蜒复杂,任意一点出现延时,会很快扩散,回旋空间小; 2、航展两年举办一次,每次一周。特别为此硬性扩容,经济性太差; 3、整个业务链条存在明显的薄弱环节:珠海大桥(珠海大道主干道单向4车道,辅道单向3车道,7条车道的车流集中汇集在珠海大桥上桥处,而珠海大桥单向只有3车道);

治理目标: 1、保障展会沿途交通线路通畅:即最大限度提升现有基础设施的通行效率,同时管控流量波动,防止超过预期的突发峰值; 2、提供弹性扩容能力,预留一定冗余容量,突发事件预案; 3、不能明显影响现有生产业务(城市功能仍需正常运转)。

解决方案

一、总量预算

a) 公众日每天进场人数不超8万人 b)取消现场售票,提高展区周边通行效率,也防止无序流量; c) 取消三日通票,按日售票,通过票务系统引导,分摊每日流量负荷。

最难的恐怕是测算。根据官方通报,主要由道路交通、餐饮等现场承载力测算,应该会参考往年的历史数据,旅行社市场调研情况,甚至可能是官网访问点击数据等。当然实际过程应该比较复杂,暂时没有一手信息,暂且掠过。

另外,技术上测算完了之后,也需要有人敢于为决策拍板。毕竟测算失误,是需要承担责任风险的,压力环境下如何决策是很值得研究的。总之,技术决策过程,都需要有一个人能下最后决心的。

二、流量路径规划

第一,优先保障航展核心区交通顺畅; 第二,设置外围停车场,实行小客车“P+R”停车换乘 第三,安排大运量公共交通接驳,减少核心展区交通压力; 第四,设置航展专用车道,保障公交、旅游包车等优先通行; 第五,最薄弱环节珠海大道启用同向红绿灯,增设导流实线。

往届现场车辆大排长龙的景像今年没有出现,一路畅通。从技术上分析,上述方案能够取得明显效果,主要思路是一致的,即采用“负载均衡+缓存”机制,适当降低某些业务的优先级和时延,提升通行效率,保证整体可用性。具体表现为:

1、负载均衡 针对全线关键薄弱环节的瓶颈,将分流管制区放在珠海大桥之前,将大客车和自驾车流量分离,实际上起到了负载均衡的作用。负载均衡算法增加了大客车的优先权重,虽然会增加自驾车20分钟左右的绕行时间,但是保证了系统整体可用。比起大车小车挤成罐头的惨烈场景,这点损耗非常划算。

另外,在珠海大道开启二级负载均衡。主要措施:启用同向红绿灯,红绿灯口被重新划分为6个车道,每个车道会对应一个信号灯组,增设导流实线。限制加塞变道、不同方向车流抢道的现象发生。

2、缓存机制

一级缓存:自驾车换乘区。将小型自驾车引导进入附近的换乘停车场,而不是直接驶入核心区,中间调用大客车接驳。减少核心区的空间压力,也能聚拢零散客流。

二级缓存:核心区停车场。根据当时现场情况观察,展区周边的停车位经过统一规划,几乎没有乱停乱摆的情况发生。所有观展客流下车即进入验票口的蛇形验票队伍,出来即可换乘接驳大巴,团进团出,不会存在以往核心区滞留人群混乱的局面。

3、实时监控能力升级

例如 无人机::使用无人机监控道路、停车场地等,提供更灵活的巡逻方式,扩大巡逻覆盖面。既缓解警力不足问题,也减少监控死角,对于潜在违规驾驶人也有一定震慑作用,有利于规范道路行车秩序。

高德地图:当地警方与高德地图合作,航展期间将联合运营实现出行道路交通管制信息和场馆周边停车场、换乘点等信息的实时发布,引导观众避开拥堵路段。 此外,出租车GPS可视化系统、高配置的警用摩托车等装备也有一定特色。

上述方案能够落实到位,我相信是与大量引用新型技术密不可分的。


参考

基于LVS的AAA负载均衡架构实践

新一代Ntopng网络流量监控—可视化和架构分析

基于Ganglia实现集群性能态势感知

2016珠海航展图集

2016珠海航展 中国八一飞行表演队

2016珠海航展 俄罗斯勇士&雨燕飞行表演队

2016珠海航展 英国皇家空军红箭飞行表演队

更多精彩内容扫码关注公众号:RiboseYim's Blog:https://riboseyim.github.io 微信公众号

© 著作权归作者所有

共有 人打赏支持
RiboseYim
粉丝 74
博文 77
码字总数 175708
作品 0
广州
程序员
《Linux Perf Master》Edition 0.3 发布

《Linux Perf Master》Edition 0.3 发布 https://www.gitbook.com/book/riboseyim/linux-perf-master/details 快速下载网盘:https://pan.baidu.com/s/1bppqKdL 提供 pdf、epub、mobi 三种格......

RiboseYim
2017/12/28
0
0
一直被认为是炒作的亿航载客无人机,这次真的要起飞了

既然是载人通勤工具,那么安全就将会是亿航需要面对的首要问题。 去年一整年,整个无人机和自动驾驶领域的发展,都十分的迅猛。越来越多的科技公司将自己研发的自动驾驶汽车开上实际道路进行...

行者武松
03/06
0
0
2014Oracle技术嘉年华

作为国内最顶尖的Oracle数据库技术盛会,我们今年荣幸的邀请到Oracle公司副总裁Thomas Kyte,Pythian集团 CTO Alex Gorbachev等Oracle数据库领域国际级专家,特别为中国的数据库爱好者带来他...

harries
2014/10/22
0
0
【干货合集】技无止境——2017双11核心技术大揭秘

一、视频分享 1、双11万亿流量下的分布式缓存Tair技术揭秘 视频主要从Tair发展和应用开始谈起,接着谈及双11面临的挑战,重点分享了性能优化方面的实践,最后对缓存难题给出了解决方案。 点击...

阿里云云栖社区
01/03
0
0
2018数字旅游展:展位即将售罄,仅剩少额余位!

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/D1j4robv/article/details/81571650 ');

199it
08/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

java JDK动态代理

本篇随笔是对java动态代理中的JDK代理方式的具体实现。 首先需要定义一个接口,为其定义了两个方法:   public interface UserService { public void add(); public void delete(); } 然后需...

编程SHA
23分钟前
2
0
轻松理解Dubbo分布式服务框架

Dubbo是什么? Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的...

别打我会飞
31分钟前
2
0
TypeScript基础入门之JSX(一)

转发 TypeScript基础入门之JSX(一) 介绍 JSX是一种可嵌入的类似XML的语法。 它旨在转换为有效的JavaScript,尽管该转换的语义是特定于实现的。 JSX在React框架中越来越受欢迎,但此后也看到了...

durban
55分钟前
1
0
JavaScript使用原型判断对象类型

1. constructor属性 在JavaScript创建对象(二)——构造函数模式中,我们说过可以使用对象的constructor属性判断对象的类型:p1.constructor === Person,可能当时就有细心的读者会想,我们...

Bob2100
57分钟前
1
0
10-《深度拆解JVM》JVM是怎么实现invokedynamic的?(下)

一、问题引入 上回讲到,为了让所有的动物都能参加赛马,Java 7 引入了 invokedynamic 机制,允许调用任意类的“赛跑”方法。不过,我们并没有讲解 invokedynamic,而是深入地探讨了它所依赖...

飞鱼说编程
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部