抛砖引玉,理性思考了一下,发现一些有趣的东西
三国杀吧
全部回复
仅看楼主
level 5
默语识君 楼主
业余爱好,在自学一些 Java EE 的东西。
关于这次的数据不互通,开始是持怀疑态度的,不过现在冷静下来思考了一下,还是觉得,可能是有些其他因素在里面的。我说的倒也不一定对,不过作为一个分析的思路还是应该可以接受的。
当然,不针对运营的睿智操作,毕竟经历过BGO的那些事件后,对运营还抱有希望是不可能的,天下的乌鸦一般黑。
先说结论吧:
1. 可能是不舍得在硬件上花钱
2. 在数据的隔离性上,目前他们还没找到合适的方法
接下来说下我的思路:
在值班的时候,我没想太多,以为数据互通就是数据库移植这么简单,但是数据库移植那是继承,而不是互通了= +
互通是要求A服务器跟B服务器随便哪个服务器上数据有变动,都应该具体体现出来。
比如A服务器上买了武将X,那么B服务器上会出现武将X;同理,B服务器上买了武将Y,那么,A服务器上就会出现武将Y。
一般服务上存储这些东西会用数据库,为了加速,会利用缓存技术预先进行数据的读取。
下面这个图(随手做的,不要吐槽难看)服务器A跟服务器B就是单个区服的简单模型,箭头方向表示数据走向。
那么,要使服务器A跟服务器B实现数据互通,就要再加一级缓存(二级缓存)来进行实现。
这个二级缓存独立在服务器A跟服务器B外面,为服务器A,服务器B提供数据交互服务。
不过既然开了二级缓存,那么一般直接会在二级缓存中进行读取操作。
也就是说,原先由服务器单独提供的数据,现在要由第三个服务器来提供数据。
这样就存在了额外的硬件需求,而且,由于多个服务器数据互通,相当于这么多的数据都要存在这个二级缓存服务器中,对于读取速度还有不低的要求,那也就限定了这个二级缓存服务器的配置必定不能太低。
那么第一点证明完成。
第二点,隔离性。隔离性相当重要,不少bug就是出在这个隔离性上。
业务逻辑越复杂,隔离性就越重要。如果隔离性做不好,那么确实不好就这么慌慌张张的上线。
这个涉及到数据库跟缓存技术比较多,我也就懂个大概,就不再细说了。
简单的讲就是数据库、一级缓存、二级缓存在某个时刻时,同一个目标对应的数据是不同的,可以读到不同值。
大概就是这么个意思,这是大忌。这个还是希望有更懂的人能说一下[喷]
反正这么一想,运营就是想怎么省事/省钱怎么来。。。
毕竟单服务器是不是更简单,你们说呢?
2018年08月14日 16点08分 1
level 14
别抱有幻想了,游卡就是孤注一掷
2018年08月14日 17点08分 3
但是舍不得孩子套不住狼啊,不肯增加其他开销,还想着玩家买单啊[阴险]
2018年08月14日 17点08分
@默语识君 游卡要上市,财务报表又难看,现在就是图穷匕见了,能骗几个傻子是几个
2018年08月14日 17点08分
level 9
单服务器多服务程序跑并行服务模式就行,用一个数据库不用开新硬件,就楼主这个模型而言代价不小,软件之间大规模数据也是一个问题,现在的关键是他们压根不打算互通,技术很简单的
2018年08月14日 17点08分 4
皮肤秀等级战功互通了还怎么赚钱?
2018年08月15日 02点08分
@Franciswc 所以说🐶卡只是不想
2018年08月15日 03点08分
level 10
共用一个数据库不至于,几张表通用而已。而且互通说实话从技术上面来说是不符合逻辑的,复制过去把另一个关了才符合基本逻辑。
2018年08月14日 17点08分 5
level 12
那我想问一下普通武将能转移,神武将和非卖就不行,难道神和非卖是单独建的表?[滑稽]
2018年08月14日 17点08分 6
level 13
手机互通版也不是flash吧?
2018年08月14日 17点08分 7
level 15
为什么要互通,直接移植数据,关闭老服务器不就行了?
2018年08月14日 17点08分 8
level 6
尘埃吧大佬[乖]
2018年08月14日 17点08分 9
1