假如我是铁路订票系统架构师系列 - 开放还是封闭系统 - 对外挂的态度
今年铁路订票系统的热门话题是抢票插件。 从铁道部不允许电商代购看,业务上要求订票系统应该是设计成封闭系统。但订票系统能让别人开发出抢票软件,说明没有有意将其设计成封闭系统。 这是典型架构师没有完全实现业务要求的设计。 如果目标是只允许手工操作,不允许第三方程序访问,需要考虑在网络协议,API和用户界面操作模拟。当然封杀第三方程序访问,可能带来一些网络攻击,也需要进行相关设计。 由于业务用户和领导不熟悉技术,在提出需求时,往往考虑不到一些特别的状况。 所以产品和系统架构师的最重要工作是定义产品和系统的完整功能。 这个功能定义决定了开放成本质量和满足用户需要的程度。
开放与封闭不是相反的。一个不开放系统不一定是封闭系统。 可以参考《产品架构师手记》中的相关章节。 软件产品和系统架构师应该考虑业务和企业对开放和封闭系统的业务变化需求。使系统可以灵活切换开放接口和封闭访问。实际上通过提供开放接口可以更有利的防止和抵御非指定访问。例如订票系统如果把剩票查询功能开放,就会将一些刷票访问导向提供服务的电商。
互联网应用可以很方便地采用加密通讯,验证码,session管理等设计防止各种外挂技术。
http://product.dangdang.com/product.aspx?product_id=22821857
假如我是铁路订票系统架构师系列 - 开放还是封闭系统 - 对外挂的态度相关推荐
- 从铁路订票系统问题看系统架构师的责任和水平
据新闻报道铁路订票系统采用了排队系统,但排队时间需要30分钟.使很多人不满. 并且系统仍然有登陆不上的问题. 从描述看,系统很可能采用了本博客前面提到的异步处理架构. 但从用户体验看该系统架构师的设计 ...
- 【转载】我是如何通过高级系统架构师软考的?(值得参考一下)
最近打算考个软考的架构师,所以参考一下.如下为转载文章: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 今年的系 ...
- 我是怎样成长为系统架构师的
来这家公司从事信息化工作已经也有三个年头了,有必要对这三年的工作和成长以及不足之处做一个总结.在此之前,从2001年開始学习JAVA,那时候用Struts的开发的企业也不多,而我在的做项目的企业当时已 ...
- 由铁路订票系统联想到的
作为一个互联网初哥这样级别飙升的流量,居然还能让大把的人定到票,可想而知:要么是所谓的高流量网站技术太简单:要么是铁道部信息技术中心太NB.真相到底是什么呢?我个人以为,两边都沾着那么一点. 中国铁路 ...
- 12306铁路订票系统的一个小bug
进入12306的后台>>打开[我的信息]>>打开[常用联系人] 列表中上面是自己不能修改,下面是帮别人买票时自动添加上的联系人点击[编辑] 进入到的页面可以修改用户信息,生日默 ...
- 说说12306.cn铁路订票网站
铁路订票网站常常挂掉,那些技术宅们又有写头了.对技术的选用比如caoz写的这篇,再如对架构的设计云风写的这篇.我这篇是扯蛋打酱油的.如果想看技术分析请看caoz和云风的. 1,What is key ...
- 铁路订票网站,网友设计整理
[size=medium][b]整理如下,供大家参考:[/b][/size] [url=http://blog.codingnow.com/2012/01/ticket_queue.html][siz ...
- 火车时刻表C语言报告,终稿火车订票系统的设计与实现课程设计.doc最终版(范文1)...
<火车订票系统的设计与实现课程设计.doc>由会员分享,可免费在线阅读全文,更多与<(终稿)火车订票系统的设计与实现课程设计.doc(最终版)>相关文档资源请在帮帮文库(www ...
- 从奥运订票系统说起——谈FastCGI 与IT 架构
2008年,对于首都人民来说,没有什么比奥运会更大的事情了.如何买到一张称心如意的比赛门票,也成了很多人的一个梦想.然而,在奥运官网抢票购买的时候,这个梦想却轻易地被网上购票系统的当机击成碎片,很多充 ...
最新文章
- DIV水平方向居中的几种方法
- C语言程序设计 | 整型、浮点型在内存中的存储方式
- 用计算机画关于科技的画,用计算机鉴识画作
- Linux运维常用检查网络工具
- 小米wifi每天晚上准时断网_小米 11再次确定,将于28日准时发布,售价更感人
- python科学坐标图绘制的四个要素_Python3.0科学计算学习之绘图(四)
- c语言求偶数的积,《动物的多*语言》阅读理解及*
- 拓扑学(代数拓扑学)的有趣应用
- python与pycharm的作用_JSON 在pycharm 与python 三者有什么关系?JSON有什么作用?
- 论文阅读(4) 游泳水母对被动能量再捕获的广泛利用(2018)
- EditText属性大全详解
- 如何推导高斯过程回归以及深层高斯过程详解
- vscode php格式化插件
- 不可混为一谈 说说数字机顶盒与网络机顶盒
- 轴承剥离型故障对应的特征频率
- 解决ubuntu下外接2k显示器却无法调2k分辨率问题
- 35岁程序员失业了,找不到合适工作?看完让人心疼……
- 汽车UDS诊断详解及Vector相关工具链使用说明——2.3.1 故障码(DTC)格式详解
- 阿里云部署Java开发环境
- MATLAB将灰度图转换为彩色图像源码实战