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

互联网业务用户层技术主要包括:用户管理、消息推送、存储云、图片云

用户管理

互联网业务的一个典型特征就是通过互联网将众多分散的用户连接起来。因此用户管理是互联网业务不可缺少的一部分。

略微大一点的互联网业务,肯定会涉及到多个子系统,这些子系统不可能每一个都自己来管理这么庞大的用户。由此引申出用户管理的第一个目标: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)- 用户层技术剖析



posted @ 2017-07-28 08:55  jzdwajue  阅读(214)  评论(0编辑  收藏  举报