开发相关的概念

后台

CAP理论

参考–深入解读zookeeper一致性原理
(1) 理论概述

分布式领域中存在CAP理论:

① C:Consistency,一致性,数据一致更新,所有数据变动都是同步的。

② A:Availability,可用性,系统具有好的响应性能。

③ P:Partition tolerance,分区容错性。以实际效果而言,分区相当于对通信的时限要求。系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况,必须就当前操作在C和A之间做出选择,也就是说无论任何消息丢失,系统都可用。

该理论已被证明:任何分布式系统只可同时满足两点,无法三者兼顾。 因此,将精力浪费在思考如何设计能满足三者的完美系统上是愚钝的,应该根据应用场景进行适当取舍。

(2) 一致性分类

一致性是指从系统外部读取系统内部的数据时,在一定约束条件下相同,即数据变动在系统内部各节点应该是同步的。根据一致性的强弱程度不同,可以将一致性级别分为如下几种:

① 强一致性(strong consistency)。任何时刻,任何用户都能读取到最近一次成功更新的数据。

② 单调一致性(monotonic consistency)。任何时刻,任何用户一旦读到某个数据在某次更新后的值,那么就不会再读到比这个值更旧的值。也就是说,可获取的数据顺序必是单调递增的。

③ 会话一致性(session consistency)。任何用户在某次会话中,一旦读到某个数据在某次更新后的值,那么在本次会话中就不会再读到比这个值更旧的值。会话一致性是在单调一致性的基础上进一步放松约束,只保证单个用户单个会话内的单调性,在不同用户或同一用户不同会话间则没有保障。

④ 最终一致性(eventual consistency)。用户只能读到某次更新后的值,但系统保证数据将最终达到完全一致的状态,只是所需时间不能保障。

⑤ 弱一致性(weak consistency)。用户无法在确定时间内读到最新更新的值。

客户端

应用标识

安卓系统是 Package name,是Android系统中是判断一个 App 的唯一标识;
ios 是 bundle id,android 是 packageName,
一般情况下都叫 bundle ID 或者 App ID,默认大家都知道说的是个啥;

由于苹果和谷歌的原因,同一个应用的 android packageName 和 ios bundle id 不同,
比如,微信:
ios bundle id 是:com.tencent.xin
android packageName 是:com.tencent.mm

关于手机设备的一些知识

IMEI
(International Mobile Equipment Identity,IMEI)即通常所说的手机序列号、手机“串号”,用于在移动电话网络中识别每一部独立的手机等行动通讯装置,相当于移动电话的身份证。序列号共有15位数字,前6位(TAC)是型号核准号码,代表手机类型。接着2位(FAC)是最后装配号,代表产地。后6位(SNR)是串号,代表生产顺序号。最后1位(SP)一般为0,是检验码,备用。国际移动设备识别码一般贴于机身背面与外包装上,同时也存在于手机内存中,通过输入*#06#即可查询。
MEID
IMEI码由GSM统一分配,那么CDMA制式的手机采用的识别码是MEID
IMSI
简介之百度百科:国际移动用户识别码(IMSI:International Mobile Subscriber Identification Number)是区别移动用户的标志,储存在SIM卡中,可用于区别移动用户的有效信息。其总长度不超过15位,同样使用0~9的数字。其中MCC是移动用户所属国家代号,占3位数字,中国的MCC规定为460;MNC是移动网号码,由两位或者三位数字组成,中国移动的移动网络编码(MNC)为00;用于识别移动用户所归属的移动通信网;MSIN是移动用户识别码,用以识别某一移动通信网中的移动用户
IDFA
苹果和Google针对移动设备推出的 广告标识符
1、IOS体系下:可以获取
在IOS6.0以后版本均可以正常获取IDFA,但手机用户可以手动还原 以及 手动禁止获取(手动关闭广告追踪,目前关闭的用户占比较小)。同一个设备上的所有APP都会获取到相同的值。
示例:080006E2-5666-49C1-8786-3FD9FC77DC0A
2、Andriod体系下:受限获取
其实在Andriod2.3以后,Google也学苹果推出了IDFA,用于跟踪广告的唯一标识,功能基本上与苹果的IDFA是一样一样的。但是Google的这个IDFA是需要基于Google Play等基础APP的,在国内环境下,Google的这些基础APP要么无法访问使用,要么被手机厂商直接去掉了,因此Android手机上的IDFA在国内没有起到唯一ID的作用。

IDFV
Identifier For Vendor(应用开发商标识符),用来表示应用开发商的,Vendor就是应用开发商,如果该开发商的所有应用被卸载,那么IDFV就会被重置;重装后IDFV也不相同。

UDID
Unique Device Identifier,以前的设备唯一标识符,IOS5后不再使用。之后出现了OpenUDID。

Mac地址
IOS7后所有苹果设备获取MAX地址都会返回一个固定值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值