你好,我是任杰。

今天是大年初一,首先祝你春节快乐,身体健康。专栏的正文部分已经结束,相信这几个月的时间,你已经学到了很多。为了让你过节期间能够轻松一些,同时也能巩固之前所学,这个春节假期,我一共为你安排了3期特别策划的内容。

今天是策划的第1期,我从之前学的课程里精选了一些知识点,给你出了这一套测试题,帮助你检验学习成果。客观题的答案和解析,你在测试后就能直接看到。主观题我暂时不公布答案,给你留下一定的思考时间。

第2期我会为你整理一份我的推荐书单。

第3期,我会公布主观题的参考答案。有必要的地方,我也会说明对应前面课程的哪一节课,方便你查漏补缺,根据需要去复习巩固相关内容。

好了,那今天我们就先牛刀小试,通过测试题来练练手吧!

首先我给你出了10道客观题,5道多选,5道单选,你可以点击文稿中的答题按钮进入测试。

完成客观题之后,这里还有两道主观题在等着你。金融系统的特点是要求高,所以当你学会了如何解决金融行业的问题之后,其他行业的问题也就是手到擒来的事了。所谓它山之石可以攻玉,我们来看一看下面这两道其他行业的经典问题。

春运卖票

除了支付以外,技术圈还有一个广为人知的高难度系统是卖火车票。你可以从2020年初的这个新闻片段感受以下技术挑战的难度:

今天起,全国铁路开始在12306网站发售2020年1月23日,也就是农历腊月29的车票,节前售票高峰即将度过。自本月12日春运售票启动以来,全国铁路已累计发售车票1.75亿张,每天的发售量都在1000万张以上

下面是2020年初另外一篇新闻的片段:

2020年春运期间,12306在高峰日网络点击量高达1495亿次……也就是说,12306在高峰日平均1秒就要承受170多万次点击……作为对比,2019年淘宝的订单创建峰值,是54.4万笔/秒。

这篇新闻也提到了售票业务的复杂度:

而12306的特殊性在于,火车票是一种动态的SKU,计算起来的数据量可能是普通电商产品的数百倍。

以北京西到深圳福田的G71次高铁为例……从北京西站始发的车票,后面有16个车站,即16种不同的车票;涿州东站是第二站,有15种不同的车票,以此类推,单以上下车的站来计算,G71次高铁就会有16+15……+2+1=136个SKU,而每种票对应3种座位,一共是408个商品。

以上只是SKU的减值。若旅客购买的是短途票,如北京西站到涿州东站,则在SKU减去16的同时,还要增加涿州东站到之后各站、之后各站相互间的SKU,即增加120个SKU。若再叠加当前的选座功能(A、B、C、D、F),计算数量可能还要再翻倍。

12306有雄厚的资金,因此可以选择一些特殊的软硬件方案来解决卖票的问题。作为一个金融系统背景的人来说,你应该如何分析这个春运卖票的问题呢?

王者荣耀

《王者荣耀》是由腾讯游戏天美工作室开发并运行的一款5V5手游。一个完整的游戏有很多功能部分,比如聊天室、支付系统、电商等等,在这里我们主要研究一下最核心的玩游戏的功能。

常见的游戏设置有10个客户端。每个客户端会控制自己在游戏里的角色。所有10个角色都在同一个虚拟竞技场内交互,因此每个人都能实时看到其余9个角色实时的情况,比如位置、血量、技能等等。

手机玩游戏有一个不好的地方是信号不稳定。当手机信号不好的时候会出现掉线的情况。如果你掉了线,在别的玩家眼里,你一直站着不动,在你自己的眼里,所有其他人都站着不动。但是一旦你手机连上了线,系统马上会恢复到其他9个人当前的情况,你还可以继续参与这场还未结束的比赛。

在极端情况下,如果游戏崩溃重启了,你会发现自己依然能进入到原来的游戏,只是加载时间稍微长了一点而已。

那如果按照我们介绍的架构设计思路,你应该怎么设计游戏的前端和后端呢?

欢迎你在评论区分享你的思考和分析,主观题答案我会在大年初四的第3期春节策划里公布,敬请期待!

评论