|
1.小米推送服务的服务器端在数据存储上用到了哪些数据库?
核心数据库肯定是关系数据库RDBMS了,例如支付业务要求强一致性的地方必须用RDBMS,边缘应用,如推送服务等估计用NOSQL类的效率来得高。
2.面对双十一大促,小米的推送消息量剧增,那小米推送(MiPush)服务到底是如何应对这种高并发负载的呢?稳定性又是如何保证的呢?采取了哪些应对方法?比如扩容、异步排队?
感觉推送的话,不是什么大的问题,MQ产品现在都比较稳定,都能最短时间推送,因为没有数据交互,推送肯定比较平稳和快速的的
3.小米推送服务的软件系统经历了两次重构,一是将开发语言从Erlang转为了Java,请问这有什么好处?而是对调用频繁的业务添加Cache,请发挥您的想象谈谈Cache的实际应用。
缓存能够快速将内存里的信息发送给客户端,而不是从磁盘去取数据,这样避免了IO和CPU等性能损失,提高了效率,至于缓存算法,根据不同的业务进行不同的规划。
现在的中间件,WEB应用,还是DB基本上都有缓存,每层都有缓存,缓存让性能提升了不少,但是缓存还是会带来一些其他问题,如脏数据等。。。
4.安全性也是小米推送服务重点考虑的一个因素,小米在推送服务中是如何确保安全新的呢?
安卓这块不太懂,web的话,小米也没有走https协议,估计是其它安全保证把,求分享
|
|