三国僵尸大时代代4孙策建邺橙色旗子在哪里

三国大时代4怎么自立 详细步骤地点_百度知道救火队员的那些事(4)-关于流控_科技每日推_汽车科技 | 稀饭网
&>&&>& > 科技每日推 & > 正文
救火队员的那些事(4)-关于流控
这次救火讨论的是流控,流控可以很简单,也可以非常复杂,特别是动态流控。我们有一个产品在T国某个运营商遇到了麻烦,这个运营商的母公司是欧洲的运营商,而欧洲的运营商对于产品验收的苛刻是出了名的,而这次给我们带来麻烦的就是流控。这个产品的大致功能就是把订阅的短消息或者彩信内容发送到户手机上,就类似于在几年前火了一段时间的手机报。这个产品的流控有些复杂:1、首先这套系统部署是集群,假设集群有6台主机,这6台主机的每秒下发的消息量不能超过一个值,假设为10000,为什么有这个要求,是因为下游执行发送消息的短消息网关或彩信网关有流控,你发的快了,下游系统会拒绝你,所以这个总的TPS不能超。2、这些消息的来源都是来自于某个SP或者CP,每个CP或者SP在签约平台的时候,它有一个最大每秒发送量,发送量分为彩信、短信以及WAP Push渠道。3、除了上面的限制以外,CP和SP又分了优先级,如果低先级和高优先级的时候在一起发送的,一定要先等到高优先级的先发送完成。还有一些规则要求,时间比较久了,我记不是特别清楚了。这套系统在国内和国外不少地方都上线了,不能说质量多好,也没有太大的问题,我接手这个产品大概几个月的时候在这个局点遇到了问题,客户投诉他们通过线上实际的监控发现2个严重的问题,如果不解决,他们会******:1,这套系统在高峰期间实际下发的每秒流量没有达到当时他们购买的流量,比如他们购买为10000条/秒,但是他们实际监测发现高峰的时候,可能只有9000条/秒.2,系统的流控不稳定,当时合同签署的流控上下波动不能大于正负10%。举个例子,假设他们有一个最大的SP,在上午10点到11点独占发送消息,他们设定按200条/秒发送,这时没有任何其它的SP抢占通道,那么消息发送速率应该是在180~220条/秒,但是实际发送的速率会在这个区间之外。当时我接手这个产品几个月时间,对系统的大致实现有了解,但是细节并不是清楚,负责这个产品的小组长找到我求助,不懂也要硬着头皮上。一开始以为是个小问题,这个产品的开发骨干试了几种方案过了一周,发现都很难达到客户的要求,这时客户和项目经理失去了耐心,开始把问题往高层领导汇报,一旦高层领导知道,后果可想而知。我当时带着这个产品的小组长以及开发骨干开始做这个问题的攻关,前后总共投入了3周左右的时间(有一半的时间基本上是都是在通宵)。经过几天走读代码以及实际测试验证,我发现原来的流控实现方案存在严重的缺陷,原来的方案是存储过程实现上面的流控的流量的分配动作,这个存储过程每1秒运行一次,每次运行的时候它会把当前需要下发的任务根据总流控、CP以及SP等计算一遍,然后把需要下发的数据加载到Oracle的分区表中,把要发送的速率插入到任务表中,然后集群是每个任务下发的线程从任务表中读到任务,然后再从分区表中加载上任务要发送的数据,再周而复始的存储过程不断计算分配任务、集群每个节点加载任务数据发送数据。这个产品的最初的开发在年左右,最初的设计人员找不到了,但是我猜想为什么用数据库来解决,是因为如何控制每秒发送的消息在集群下并不好实现,而数据库存放集中式数据是最简单的实现方式。这种方案对于大部分运营商对流控的准确性要求没有那么高时,其实并不是太大的问题,只要系统的负载不是过重,消息能基本准确的发送就可以了。回到客户发现的2个问题,可以大致感性的分析原因:1、因为任务的分配是每秒重新计算一次,计算完成以后,下发线程要再从分区表中加载数据,这都需要时间,即数据不是立即下发,会导致之前分配的速率执行时间被拉长了,所以很难达到总容量2、流控的不准确性:单个线程发送的流控算法优化问题,我会在后面再讨论这个问题针对第一个问题,我们最后设计了一个流控中心的应用,抛弃了原来通过数据库进行任务的分配的逻辑,其它所有发送消息的应用通过Netty连接到流控中心,当前任务以什么速率发送完全以流控中心的指标为准,而流控中心它的计算逻辑全在内存中实现。流控中心和消息发送应用之间双向通信,当下发的速率要调整的时候,流控中心可以把速率主动的下发给消息中心。当时因为时间紧,我们并没有用专门的机器来部署流控中心,而是把所有的发送消息的主机在启动的时候把自己的IP地址写到数据库的一张表中,然后在这张表中最先插入数据的那台机器就兼容来流控,顺便发送消息。因为流控并不是很耗性能,所以即使发送消息对性能影响不大。如果负责流控的机器挂了的话,再由心跳机制把那台挂了的机器删除掉,这时其它发送消息的节点再重新连接到新的负责流控的主机上。看到这,大家可能觉得这招很土,其实当时我想过用JGroup来做集群的管理,但是如果你在生产环境用过JGroup的话,就会发现这玩意太复杂了,我当时在很多项目都被坑过。那时也没有见过其它什么更好的集群通信的开源组件了,加上项目时间紧,我们按更加稳妥的方案实现。而针对第二个问题,难度相对要小一些。原来的方案采用了一个定时器,这个定时器每秒运行一次,每次运行的时候把一个Semaphore置成需要发送的TPS,每个发送线程在发送之前accquire,如果能取到就发送,取不到就阻塞,然后再下一个1秒的时候再把这个信号量Release到发送的TPS。这么实现会导致发送的在1秒内不平均,比如说:我要一秒发送30条消息,有可能在1/3秒的时候就把消息都发完了,然后在剩下的2/3秒什么也没发,这样如果在下游采样统计TPS的周期不是按1秒来计算,而是按1/6计算的时候,明显发送速率就不稳定。改进以后的流控算法是参考了一个兄弟产品的方案,称之为滑动窗口流控算法,因为画图比较花时间,我简单描述一下。这个算法将1秒分成10个小窗口,还是以上面每秒发送30条为例,在第一个小窗口时,我需要发送3条消息,到第2个小窗口时我只需要累计发送2*3=6条消息,到第3个小窗口时,我只需要累计发送3*3=9条消息,这个算法的好处是发送的消息速率更加平滑,将下游发送的速率的波动给抹平掉。这个算法还有一个好处,不像上面一个算法要有定时器不断的清零,而只需要很简单的获取当前系统时间-系统启动时间,就可以算出来当前处在哪个发送窗口,系统的开销不仅小而且更准确。经过上面的2个优化以后,达到了预期的目标,后面这个产品的基线版本的流控算法又重新进行了设计,后面的随笔再说后来怎么优化的。1年以后的基线版本优化以后,这个产品的小组长离开了公司,这个产品的开发骨干去了海外常驻,也没有了联系。但是写到这,就想到3个人像个落魄鬼一样在公司不分昼夜的讨论方案、改代码、测试…
网友问网友:
三国大时代4流冠在哪里打
@qiguoshuai1:大三国时代4 1.想要自立的话首先要到云南城里面的焚乐塔、时代三本来是萌萌的家、现在改城焚乐塔了、找到文子接任务、他叫你去找老朵、然后你就去峨眉山、山顶会发现华佗、华佗身后有个秘密通道、往里面走就会发现老朵了、第二个任务是救水寿、在泰山监狱、这个久不说了、很容易找、第三个任务找龙眼、龙眼就在泰山监狱旁边有个秘密通道、往里面进开箱子就能得到龙眼、这三个任务做完了你就能自立了、前提是不能加入任何势力 2、玩家可以投入势力助人统一天下,也可以自己建国。但是建国需要玉玺,还需要虎符。玉玺从孙坚或者孙策身上爆出来【避免孙坚找不到,也可以等孙坚死后找孙策,这个就是给玩家自己掌握时机,若是袁术建国后玩家将不再可以建国。玩家还可以投入势力谋权篡位,即杀死势力君主,丞相,将军便可以继承势力,其中可以有武将文官退出此势力隐退或者投入别的势力。】虎符从汉朝颁布的任务中获得。 注:玩家只可以投入三次NPC势力,n尝长佰短脂的拌痊饱花pc也只可以投入三次势力。 3、当汉朝没有灭亡时,玩家和npc全部隶属汉朝。玩家可以通过金钱买官或者做任务提升官位。 丞相,大将军,【还有许多征战将军杂牌将军,征东将军征西将军之类的】,六部尚书,侍郎,都尉,平民。 将军丞相可以领取一个虎符,每一个月。 4、当玩家或npc拥有城池时,官位为太守,与上面职位互不冲突。太守可以在城池中颁发【招贤令】寻找人才,太守需要条件达到才会有人应了招贤令。国军可以在全地图颁发【招贤令】,但是并不是每一次都会有人加入。颁发一次招贤令需要10个虎符。只可以颁发5次【防止玩家不出去寻找人才,只在城里不断发招贤令】 5、加入炼器系统。玩家可以自己打造极品物品并可以自己命名。 6、战斗地图可以细分,水中,陆地。如果有能力可以模仿英雄联盟【这个忽略了吧…】,还有战斗时的那些事儿可以模仿大时代2的,多武将一起上才好。 7、加入更多的角色,更加细分的历史事件。 8、可以加入村落系统。玩家若是没有足够实力攻城前,可以攻打村落,再慢慢将村落发展成城镇。 好吧就这些提议了,希望有些可以帮到客服吧,早点出4吧 9、 苍梧左边迷宫有夜明珠 云南湖里有玉玺 普陀山有黄巾令 汉中正下有梵甲 朔方有,乾坤圈 华山有塔盾 天山有乐斧 南越左上山洞有招魂幡 上庸有和氏璧,和氏璧在上庸,城里有个树可以进去 洛阳山洞有孙子兵法 10、三国大时代4关于守城 :有人非要说什么守不住,你自动打或者无脑冲锋当然打不过。以弱胜强当然要打带跑,或者干脆把敌人士气减完让敌人自己跑。选择装备时最最重要的参数就是闪避,所以为了穿上闪避最高的鞋子,智力必须有80,至少能通过升级到80。士兵方面千万不要全冲上去给敌人 加士气。 下面就是选将思路,虽然没全实践,但凭这那么多天的经验肯定是可行的。 思路一,华佗,鲁肃之流,带青囊特技的,那回血速度刷刷的。智将被动又能回蓝,边打边跑,反正不要被缠住,看看要被包了就双击方向跳远一点,配合上法伤宝石放火放闪电足够耗死对方。 思路二,还是智将路线,如果没有青囊,那就选奇才回蓝咯,反正智将还有个最后那个加900血的技能,没血了就加咯。 思路三,统帅流降敌士气,士气降到0敌人就会逃跑不进攻,这时候你冲上去慢慢收拾他们就行了,但切忌保护好小兵,别把小兵送上去给他回士气,这个方向比较怕对方也有统帅会加士气,但如果你有张济这样降双倍士气的武将就没什么好担心的了,天赋点加到出降士气天赋就够了,剩下的可以给他加在智将天赋里出个回蓝。 思路四,甘宁之流带狂骨制造伤害回血的,走游侠路线,被动加命中加回避,带着敌军拖火车就行了,不耗蓝那个小技能冷却了就朝敌军堆里一方,打的越多回血回怒气越多,然后双击方向跳出敌群再跑,而且还有闪身技能,连被打掉马都不怕,来回反复轻松解决敌军。 都这么多路线可选了,还怕什么没将守城吗?反正玩到现在感觉最最重要的还是要闪避高,其他都是可以商量的。 11. 司马在宛城,诸葛亮要197年或208年左右出现 ?南阳?, 12. 伯乐的问题,总结下伯乐的出现规律:伯乐随界面刷新,正常情况,系统每月自动刷新一次,伯乐也刷新。特殊情况,可通过读档刷新界面,从而刷伯乐,而且一个月能刷多次。 伯乐通常出现在每个势力君主所在的城市,且活跃于官府旁 其经常活动范围大概在黄河和长江之间的中原地区,越偏远的地区出现概率越低 伯乐出现概率很高的城市:汝南,陈留和建邺
救火队员的那些事(4)-关于流控三国大时代4孙策在哪_百度知道三国大时代4霸王立志过关后会干什么_百度知道}

我要回帖

更多关于 大时代防臭袜 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信