关于EMAS的一点想法

EMAS

    关于阿里的EMAS的平台架构,公司马上就要使用,听了之后,有些想法。

    产品层面,关于这个架构,对于阿里应该说是一个产品。阿里的商业嗅觉,商业发展应该是互联网行业中包括BAT最厉害的一个。可以说阿里的商业发展最强。可能一般会以为阿里只有淘宝,天猫,支付宝等业务。在面向中小型企业产品以及提供中小公司架构平台支持方面的业务已经存在很久了。两年前吧,有次电脑坏掉了,去电脑店修,老板说你们做开发的能不能给我做一个网站,多少钱,阿里也做网站,不过一年1500... 这一块业务很有市场,而且很容易抢占。可以说是有需求,蓝海市场。给一些没有也不需要开发的实体公司和企业提供网站技术的支持。  扯的有点远了,这里EMAS架构平台为一些公司提供可靠的包括代码管理,原生自动打包,上传各个渠道,热更新,H5原生版本控制,后台推送,埋点统计 HTTPDNS...一些可以想到的后台管理平台所有可以做的事情。推广到客户公司。这样,一个后台管理平台可以所有客户公司一同使用。而且这方面基本需求是一致的,复用性比较强。

      H5方面,阿里有自己的html内核——阿里内核,阿里内核是时时更新的,把它打入到原生包里面,优化了原生web内核的问题,使h5与原生的适配度比较高,在h5原生混合开发中,实际的页面显示问题特别多,使用阿里的内核可以有效的防止和避免这些问题发生,因为html ios的内核是Webkit,而Android 内核版本更多Android 4.4之前的Android系统浏览器内核是WebKit,Android4.4系统浏览器切换到了Chromium(内核是Webkit的分支Blink),Windows Phone 8系统浏览器内核是Trident。而且阿里内核复用于其他阿里旗下的项目中,这个对于阿里来说基本相当于免费拿过来用。h5和原生相互调用的框架开源的框架很多,各有优缺点,这里阿里技术优化的h5和原生交互框架。而且,像facebook的 ReactNative开源框架一样,h5方面支持 普通的h5包和阿里自己的语言--    。这种语言相当于在原生上面封装一层,h5 dom树直接底层调用了Andorid和ios原生的方法,这样可以实现纯h5开发。

     原生方面。集成了阿里的包括推送,HTTPDNS...等框架。这样实现了原生包括埋点,缓存h5js,推送,统计等功能。而且阿里的HTTPDNS绕过了运营商的Local DNS,能够避免Local DNS造成的域名劫持问题和调度不精准问题,最为主要的是能够实现ios缓存h5的问题解决,不被苹果平台限制。原生方面主要还是实现了两个功能,在线的打包和crash崩溃上传。关于自动打包,Android 一般使用的是python脚本调用adb命令实现...具体的实现细节都是笔者猜想。有可能是java和 pyhton脚本的调用也有可能是自己java框架进行打包自动打包。 对于Android 比较吸引人的是热更新功能, 阿里EMAS平台真正实现了热更新功能,市面上热更新的开源框架都存在着或多或少的问题。阿里应该优化了这些框架,实现热更新。对于Android版本控制,这个就不必过多叙述,比较简单。

    关于服务端,画个图吧(图是本人猜想的实现方式,但是大概也只能是这样实现):  

     关于EMAS的一点想法_第1张图片

 

 

 

   这里,从大的角度方面去分析EMAS系统,其实是一种资源的合理利用,如果不使用EMAS系统的话,可能需要的人员:产品,设计,美工,java工程师,Android工程师,IOS工程师,前端工程师,python工程师,C语言工程师。这样一个团队进行协作,具体多少人月,笔者无法估计。但是如果使用EMAS平台框架的话,就会节约很多这样的资源,当然,节约的资源的收益都归阿里,但对于社会来说是资源节约了。假如有10家公司运用了EMAS系统,那么加入阿里的开发资源投入相当于3家公司开发资源(考虑到阿里的代码质量和开发质量这么说应该不为过) 那么对于社会来说是节约了7家公司的开发资源。

你可能感兴趣的:(d)