通往创新之巅:互联网技术架构创新案例和实践
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

t1

控制数据镜像大小

推送服务器虽然带来了性能上的提升,但其自身也有局限。由于所有的数据都加载在内存中,随着业务的增长,所需要的内存量也会越来越高。而在实际情况中,服务器的物理内存数量总是有限制的,所以需要严格控制数据镜像的大小。

FreeWheel通过热点数据清单模式来解决数据镜像大小的问题,热点数据清单基于以下事实:

• 从数据来看,虽然有超过1,000张表,但是大部分表都非常小,对于这些小的表格,可以完全加载到数据镜像中。

• 只有极少数表的数据量比较大,这些大表主要是一些视频信息相关的内容。在FreeWheel数据库中,有超过7,000万的视频信息数据。

• 对于这些大表的数据,虽然数据非常多,但是也只有少数是被高频访问的。

如果把热点数据放入热点数据清单,之后推送服务器只加载热点数据清单中的数据,数据镜像大小将得到有效的控制。实际上,FreeWheel虽然有7,000万视频数据,但是热点清单不超过100万,而这些热点数据覆盖了95%以上的广告请求。因此,通过热点数据清单模式,在没有本质影响服务器效率的情况下,有效压缩了内存数据镜像的大小。

对于没有在热点数据清单上的数据,依然采用通过内存数据库作为加速缓存的方式来访问数据库。