文/PM回忆录
云控系统:云控即在云端控制产品参数,一般参数可以有几种类型,数值,文本,链接等。下面以我们公司的云控雏形来解释一下云控是什么?为什么要用?怎么用?
What?
云端控制,可以在程序运行的时候,通过网络从云端获取数据,一般为了便于处理,后台给的数据可以是json的格式的:
在程序端,一般需要给参数一个默认值,在有网络的情况下我们会获取云控来修改参数,若获取失败,则会使用默认值。
Why?
因此,云控可以通过云端来控制用户的交互,如弹窗的频次,页面是否显示,或者在某一些语言环境中配置某些入口。这样,我们就可以做针对性的体验优化,并可以做一些测试,若是效果不好,就可以及时关掉入口。
How?
下面先用一张思维导图列出云控系统的一种简单结构。控制类型可以看作是模块名,控制项可以看作是功能点,参数可以看作是这个功能的云控细节。
如下图,给一个实际的例子:
这个参数可以解释为,在ad模块下,云控卡片的动画效果,参数为pageCPU,他的值为2,则客户端获取到云控之后,就会根据相应的参数来配置这个动画效果。
了解了云控的基本原理,我们来看看云控可以控制哪些东西吧:
1.控制开关
数值类型的0或1,一般用来控制开关状态;
2.控制数量、次数
数值类型的数字,来控制展示的总次数,间隔次数等;
3.控制时间间隔X天,X秒
数值类型的数字,来控制某种触发机制的最小生效时间间隔,如两次显示之间间隔10小时;
4.控制概率
数值类型,可小数,整数均可,可与客户端协商,用来云控某事件生效的概率;
5.选择几种选项
数值类型,用来分别表示一种选择,如几种样式,云控显示某一种;
6.二进制,每个位代表一个模块,01分别代表两种选项
数值类型,如001111,可用来一次性云控多个地方的开关,0表示关1表示开,从左到右分别表示六个地方的开关,最好是不同功能但类型相同的开关选项;
7.控制展示时长
数值类型,如广告可关闭最小时间,如视频网站的广告;
8.控制语种灰度
文本类型,可通过某种特定方式来传输语种代码,如id:hi:in:vi:ms:pt:ja,代表这几种语种要进行处理;
9.控制颜色
文本类型,如#2c2c2c,来传输特定的字符的颜色等;
10.多语言
多语言内容编辑:
11.链接-可用文本表示
文本属性,可传输链接,如广告图片链接地址,广告下载地址等;
12.国家,可以选择国家的云控
13.灰度:
14.版本:
自问自答:
云控的趋势:现在客户端的趋势都是走动态化的,底层能力支撑发版解决,其他页面改动都走动态化。以上说的是云控给客户端下发参数,但如果有类似weex的客户端动态化解决方案,还可以直接下发页面。
客户端判断还是云端判断:一般都是在客户端做的判断,如果要依靠服务端的话就需要客户端要把这些维度信息上行到服务端,服务端根据规则匹配后再下发。服务端可以配一些版本维度之类简单的匹配规则,像语言、国家、等可能变化的有时效性的还是放在客户端比较好。
什么是AB-test:abtest 就是两个相同功能的不同实现,a和b,配置规则后一部分客户端出a,一部分出b。然后将a和b对应产生的结果数据上行服务端,pd根据上行上来的数据最终确定用a方案还是b。
以上是针对云控系统的一个解读,云控系统可以说就是在客户端获取一些特定的参数,通过这些参数可以动态改变特定用户的使用体验,可针对不同类型的用户进行不同程度或角度的优化,同时也提高了版本的容错率,也给了产品经理更多的测试机会。是互联网产品设计环节不可多得的利器。
网友评论