幼儿饰品瑜伽美体用品微软
投稿投诉
微软创意
爱情通信
用品婚姻
爱好看病
美体软件
影音星座
瑜伽周边
星座办公
饰品塑形
搞笑减肥
幼儿两性
智家潮品

支付宝面试系统设计真题分享

  Hello、早上好
  最近阿粉的朋友出去面试了一下蚂蚁金服,一面的时候收到一道系统设计题,今天跟大家分享一下。
  ps:偷偷告诉你,这道题星球球友之前面试的时候也碰到了,这次相当于刚好押题了。题目
  用户有多种支付方式(余额、红包、优惠券,代金券等),假如每种支付方式需要通过实时调用远程服务获取可用性。在外部资源环境不变情况下,请设计程序以最短响应时间获得尽可能多的可用支付方式列表。
  假定支付方式可用性咨询服务接口定义:PaymentRemoteSerivce接口方法:ConsultResultisEnabled(StringpaymentType);publicclassConsultResult{publicConsultResult(booleanisEnable,StringerrorCode){this。isEnableisEnable;this。errorCodeerrorCode;}咨询结果是否可用privatebooleanisEnable;错误码privateStringerrorCode;publicbooleangetIsEnable(){returnisEnable;}publicStringgetErrorCode(){returnerrorCode;}}
  题目要求:
  尽可能展示你的编码能力(Java语法、编码风格等),java语言肯定比伪代码得分高
  看到这里的小伙伴的可以思考一会哦解题
  这道题,说难真的不难。
  拿到题目之后,我们首先分析一下,切记直接上手写。
  在我们的分析过程,梳理设计要点,并且可以向面试官确认这些设计点是否正确,最后我们才开始真正写代码。
  我们来看下这道题的关键词:最短实时远程调用另外需要考虑高并发
  结合这几个关键点,第一个很容易想到的方案,遍历查询所有支付方式的可用性,然后返回。
  这种做法响应时间就是多次调用远程服务的总和。
  不过显然不符合设计要求。
  第二种,我们可以想象一下,支付方式可用性在一段时间内不怎么会变化的,所以我们可以在第一种的方式基础上,优化一下,增加缓存保存之前的调用结果。
  这种方案只在前面查询的时候耗时较长,后面查询直接走缓存,速度较快。
  但是引入缓存有一个弊端,就是某一支付方式如果突然不可用了或者不可用支付突然变成可用了,那在缓存还未失效的这段时间,将会获取不准确的结果。
  所以我们需要引入刷新进制,定时查询支付方式可用性,然后更新缓存。
  当然如果在定时任务还未刷新的间隔,支付方式突然不可用,依然还是会存这个问题。
  这个问题,第一种解决方案,加快定时任务刷新频率。
  第二种方案,需要其他服务配合。如果某一支付方式突然从可用变成不可用,或者不可用变成可用了,这种情况发送相应的消息,这边服务受到消息及时更新缓存结果。
  第二种设计方案,我们已经在一定程度上优化设计,不过还是存在一些问题。
  主要问题还是在于第一次查询遍历查询所有支付方式的可用性,速度较慢。
  那这个问题,我们其实就可以引入多线程查询,这样的话,响应时间最大值等于单一支付最长调用那一次。
  结合以上的分析,我们代码可以如下:
  多线程查询代码:
  缓存定时刷新的代码如下:
  考虑接口会被高并发调用,在缓存为空的时候,可能会有多个线程并发调用asyncQueryALLPaymentTypes查询所有的支付方式的结果。
  但是实际上这里只需要一个线程查询即可,其他线程等待结果就可以。
  所以接口使用双重查询锁(DCL)的方式,同时只会有一个线程去查询所有支付方式。
  上述DCL的方式只是解决同一个应用内多线程的问题,但是多个应用间被并发调用,还是可能会多线程去查询所有支付可用性。
  假设现有10个应用,缓存为空,极端情况下,10个应用都使用多线程去查询支付方式可用性。
  假设现有5个支付方式,短时间内发起10550次调用,这种调用量还是很少,完全可以接受。
  好了,今天分享就到这里了

macOSMonterey出现内存泄漏错误长时间运行并消耗大近期升级到macOSMonterey的部分用户遇到了内存泄露的错误。在这种情况下,某个特定的macOS进程或应用程序被窃听并在后台长时间运行,消耗异常大的内存。目前无法确定具体……有关雾的早晨有关雾的早晨李日宏诗词早晨起来,没看见太阳只觉得脸前有隐约的云飘动是天上的云卷入地下的缘故很久了,我的心田被太阳炙烤得皮肉干裂。我需要……中阿之战李铁继续不变应万变归化我就是不用,怎样?阵容我就是不变,怎样?稀稀必须首发,怎样?佩服佩服吹发男有一颗强硬而逆反的心,这是准备和舆论及球迷来个硬碰硬,你们说的,我就不做,……联盟又要变天!名记湖人将交易来盖帽能手,来辅助詹眉组合时间来到了五月份,NBA季后赛已经进入第二阶段的角逐中。然而就算是伯温再世、诸葛重生,也无法预知到赛季初最被看好的两支争冠球队已经开启了休赛期钓鱼模式。唯一不同的是,洛杉矶湖人……五一放假通知!教你6道家常小炒,鲜香美味又下饭,待客倍有面子马上就到五一国际劳动节了,上班族和学生又迎来了假期,五一前后,阳光明媚,温度合适,放假期间,每个人的庆祝方式不同,除了适合劳动以外,还适合外出旅游,不过今年情况有些特殊,大家就……解决你的万斑烦恼你是否还在看朋友圈推荐的美白祛斑面膜、面霜、精华?用了那么多瓶瓶罐罐,可是脸上的斑斑点点还在那里不离不弃。方法用了不少,却越来越严重,别人的斑可以去掉,偏偏你的不行,什么原因呢……潘长江带货满嘴跑火车,商品掉色染红手掌,网友直播比小品好看多年前看着潘长江在舞台上表演小品,可能很多人都没有想过他会有一天不再走老艺术家路线,转而成为了大众的笑谈,对于网上冲浪的人来说,应该没人不知道潘嘎之交这个词汇,一句本来是出于长……刚刚,中国建设银行发布重要公告每经编辑:杜宇11月11日晚间,建设银行发布公告称,2021年9月29日,公司董事会审议通过了关于聘任李运先生担任本行副行长的议案。中国银行保险监督管理委员会现已核准李运……早晨发朋友圈正能量励志图片带字,追逐梦想敢于拼搏为梦想拼尽全力,在岁月静好之中,不负韶华、追逐梦想、敢于拼搏!为完成冲刺目标,而奉献我们的青春和激情!周三,早晨好!抱最大的希望,尽最大的努力,做……脑梗后30年无复发,78岁老人分享自己的3个吃法!帮你远离脑脑梗死具有很高的致死率和致残率,即使患者被幸运的挽救回性命,在第一年再次复发的概率约为17,5年内复发的概率高达40。但曾因脑梗突发入院的赵大爷,在此后的30年内都没有复发,现……贝克汉姆家族再添摇钱树!儿子罗密欧成流量担当,职业球员模特当地时间10月25日,在美国大联盟第三级别赛事中,19岁的罗密欧贝克汉姆完成了自己的第五场职业比赛。作为球队老板的儿子,罗密欧已经为球队效力整整一个月。职业球员只是罗密欧的一部……谁说宝妈有娃后就不美了有关美的三点事实看了一篇新闻,引得我深思,新闻内容是有一位宝妈去接娃,结果家长错把宝妈当成娃的奶奶。而且还不是一个人把她当成娃奶奶,她经常遇到这种尴尬情况,她不禁感叹91年出生的我有这么……
燃油车保值神话,破灭了?深途(shentucar)原创作者黎明编辑艾小佳马斯克又将矛头对准了燃油车。9月13日,马斯克说,用不了多久,我们就会像今天看待蒸汽机一样看待燃油车。他……电煤数据快报10。24为你提供不一样的资讯,我是炭沫子,请关注。截止10月24日,秦皇岛煤炭库存环比上行0。02。截止10月24日,秦皇岛库存为435万吨,较上一日环比上行1万吨。……地球生物中,为何只有人类女性进化出永久乳房?猿进化成人的标志一个问题让科学家们困惑不已,在世界上5000多种哺乳动物中,为什么偏偏只有人类拥有永久乳房?从只有人类拇指长度一半的最小的鼩鼱、蝙蝠或者啮齿类动物,到巨大的蓝鲸,哺乳动物……英格兰赛浙江名将遭血洗兰州小将轰单杆最高分丁俊晖27日亮相北京时间10月25日晚间,斯诺克2022英格兰公开赛正式拉开战幕,甘肃兰州小将吴宜泽在与乌克兰选手卡扎科的对决中表现出色,期间上演破百高分,最终横扫对手晋级64强。另外,……大力促进个体工商户发展,现在的你敢创业吗?大力促进个体工商户发展,现在的你敢创业吗?今天国务院发布促进个体工商户发展条例,从2022年11月1日起施行,条例写的很详实,愿意看全文的这是链接。经过多年的基层治……为什么当初离开我国去越南发展的外企,基本都后悔了?当初离开中国转战越南的外企,现在基本都后悔了。为什么?近年来,许多外国企业正在将其产业链从中国转移到越南。比如我们熟悉的日本的东芝,韩国的三星,美国的阿迪耐克等等。有人看……活成自己想要的模样不忘初心,方得始终!人生在世,初心就像一个新生儿面对这个世界,永远充满好奇、求知欲和赞叹。初心给了我们积极进取的生活态度。人的生命只有一次,无法重来。初心常在,经常回望一……袁心玥作为队长,就要在队伍困难时站出来新华社荷兰阿纳姆9月30日电(记者肖亚卓、刘旸)中国女排在2022世界女排锦标赛第一阶段小组赛取得四连胜,袁心玥30日表示,作为队长她要肩负起更大的责任。中国女排当天以3……国庆想妆容服帖,旅行更出片?看这篇就够了国庆长假在每个人的翘首以盼中即将到来!大家都有什么安排呢?是出门旅游?宅家刷剧?还是跟小伙伴聚会开party?假期的到来,我们出游期间要时刻牢记疫情防控,用安全文明……9月28号,尝试写读书笔记的13天为什么我们变得如此不包容了我们是从什么时候开始,变得如此不包容的?我曾读过一本书,叫《非暴力沟通》,里面提到给别人下定义是最暴力的沟通方式。观察身边,会发现有很多人正是这么做的。不知道从什么……公积金贷款对冲后还能提取吗?公积金提取的条件申请公积金贷款或者是组合贷款之后,可以直接申请把公积金里面的钱来还房贷,就是房贷还款日银行从贷款人的公积金账户里面扣款,这种模式叫做公积金对冲还款。公积金贷款对冲后还能提……国美新模式店亮相,战略落地下的国美缘何再受资本关注?线上零售、新零售、即时零售关于零售行业的业态与模式,历来受到资本市场的关注,因为整个零售行业的市场太大了,只在今年8月份,商品零售规模就达到了3。25万亿元。也因为此,每当有关……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网