您的位置:首页 > 业界新闻

BAT解密:互联网技术发展之路(8)- 用户层技术剖析

2015-12-31 17:04 726 查看
互联网业务用户层技术主要包括:用户管理、消息推送、存储云、图片云

用户管理

互联网业务的一个典型特征就是通过互联网将众多分散的用户连接起来,因此用户管理是互联网业务必不可少的一部分。
稍微大一点的互联网业务,肯定会涉及到多个子系统,这些子系统不可能每个都自己来管理这么庞大的用户,由此引申出用户管理的第一个目标:SSO,单点登录,又叫统一登录。单点登录的技术实现手段较多,例如cookie、token等,最有名的开源方案当属CAS。
除此之外,当业务做大成为了平台后,开放成为了促进业务进一步发展的手段,必须允许第三方应用接入,由此引申出用户管理的第二个目标:授权登录。现在最流行的授权登录就是OAuth2.0协议,这个基本上已经成为了事实上的标准,如果要做开放平台的话,最好用这个协议,私有协议漏洞多,第三方接入也麻烦。
用户管理面临的主要问题是用户数巨大,一般至少千万级,QQ、微信、支付宝这种巨无霸应用,都是亿级用户,不过一般也不要被这个数据给吓倒了,用户管理虽然数据量巨大,但实现起来并不难,原因是什么呢? 因为用户数据量虽然大,但是不同用户之间没有关联,A用户登录,和B用户登录基本没有关系。因此虽然数据量巨大,但我们用一个简单的拆分手段就能轻松应对。
综合一下,用户管理关键的技术如下:



消息推送

消息推送根据不同的途径,分为短信、邮件、站内信、APP推送,除了APP外,不同的途径基本上是调用不同的API即可完成,技术上没有什么难度。
APP目前主要分为iOS和Android推送,iOS系统比较规范和封闭,基本上只能使用苹果的APNS;但android就不一样了,如果是在国外,用GCM和APNS差不多,但是在国内,情况就复杂多了,首先是google被墙,GCM不能用;其次是各个厂商都有自己的定制的android,消息推送实现也不完全一样,因此android的消息推送就五花八门了。大部分有实力的大厂,都会自己实现一套消息推送机制。
总体来说,自己实现一套消息机制并不太难,关键问题和用户管理一样:数据量大,但数据之间没有什么关联,因此总体方案和用户管理也差不多。
消息推送主要包含3个功能:设备管理(唯一标识、注册、注销)、连接管理、消息管理。

存储云&图片云

对用户提供存储和图片访问,是互联网业务的必备功能,不过有了前面博文介绍的内容后,这两个功能实现难度不大,基本上就是“CDN + 小文件存储”。现在有了云之后,除非BAT级别,一般不建议自己再重复造轮子了,直接买云服务可能是最快又最经济的方式。
当然,如果你是京东,还是别买阿里云的图片云了 :)

==================================================
首发CSDN,欢迎转载,转载注明出处:BAT解密:互联网技术发展之路(8)- 用户层技术剖析
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息