新浪微博是怎么实现消息推送的

新浪微博是如何实现消息推送的?
最近要做一个项目,实现消息推送的功能,
要获取服务器上不定时更新的信息一般来说有两种方法,第一种是客户端使用Pull(拉)的方式,隔一段时间就去服务器上获取信息,看是否有更新的信息出现。第二种就是服务器使用Push(推送)的方式,当服务器端有新信息了,则把最新的信息Push到客户端上。   虽然Pull和Push两种方式都能实现获取服务器端更新信息的功能,但是明显来说Push is better than pull。因为Pull方式更费客户端的网络流量,更主要的是费电量。 
所以我想问问新浪微博的消息推送方式到底是怎样实现的?

------解决方案--------------------
客户端与服务端保持长连接。随时监听对方的信息包。只能这样实现。
------解决方案--------------------
如果你一定说他是推送实现的话 那么他是通过google 电子市场的连接推送的
------解决方案--------------------
androidpn openfire spark


前者其实就是后者的一个简单使用