后端深奥,看了书也很难理解,而且学习周期长,QAQ,以前学过前端,讲简单的前端知识才有把握,至于后端,只有平时和技术人员交流时才能了解。
####后台服务之RPC框架
后台的作用就是提供服务,按客户端的要求,将业务数据回吐给请求者。
后端涉及技术栈非常多但其核心技术是RPC(远程过程调用,“过程”可看做提供服务的方能发或称函数)
网络的各种服务(如导航,天气)都运行在后台服务器上,这样终端便弱化为了一个展示数据的工具。后台服务往往跑在一个异构系统上(客户端是Android和iOS,服务端是Linux),它们在地理位置上也不存在进程间通信那样便利,为了解决这个问题,RPC应运而生,有了它调用一个远程服务就像调用一个本地服务一样简单,RPC是封装起来的,这便是RPC框架
####RESTfulAPI
API:比如后台老王开发了一个好友管理系统,并且写了一套API,具体有有加好友add_friends,删除好友delete_friends。这样,前端人员想要调用他的API只需访问不同的URL,比如加好友:htt…con/add_friends.php。这样后台就可以知道前端想调用的功能,并且把想要的数据返回给前端,但这种方式在一定情况加会导致URL越来越长,降低可读性,于是REST风格便出现:
首先,服务器上的东西,都要通过URL暴露出来,这样URL便成为了:htt…com/friends,然后HTTP提供了GET,POST,PUT,DELETE四个动词。这样想要删除好友,就可以用DELETE访问friends,这样服务器就可以根据URL,并且识别不同动词,区分前端想干什么。
####Session
情景:小明经常去一家酒吧喝酒,去了三次,但店员不记人,这样小明相对于店员就是三个人。但后来,酒吧给每个顾客发了张名为SessionID的卡,以后小明去酒吧,店员就可以说“你又来了”。
Session即为一种机制,给用户分配一个身份,从而完成对用户的识别,将用户多次不同操作联系在一起。
实例:比如你在京东(京东没有给我钱)买了三件东西,但后台并不知道这三件东西是你一个人买的,但通过Session机制,就可以将其联系在一起。
####后台服务之流量控制
比如双十一,用户流量都会成百上千的增加,哪个模块扛不住便会导致系统崩溃,影响用户正常使用,故,后台需要考虑流量控制,当流量达到一定极限时,引流到其他服务或者拒绝服务,以保持服务可用性。
一般方式有“漏铜算法”和“令牌桶算法”来解决。
####后台服务之生成唯一ID
常见方法有1.数据库2.UUID3,雪花算法。