曾经在很多家公司,App完成之后都涉及到App的对外分发,如果是内测阶段倒是比较简单,TestFlight、蒲公英等都比较完善,如果说是面向企业内部内测分发的情况,也可以自己搭建分发的H5页面;
其他的基本都用过,也搭建过,但是对于搭建自己的分发H5页面,最近有了一个比较直观的例子让我体验比较深;
背景:
我有一台16G + 1T得云服务器,带宽10M,我通过一个Next.js项目创建了一个前端服务,部署到了这台服务器上,这个下载页也在这个前端项目中,ok,部署好后,下载没有问题,同时也有一键上传apk的功能,很完整的功能;唯独下载稍微有一点点慢,想着以后再慢慢优化下载速度就可以了;于是开始了推广分发;
问题:
于是乎就遇到了问题,带宽是10M,那么最多支持3个人同时下载,而且带宽不高,导致下载的时候18M的东西,竟然可以下载1分钟左右;同时这台服务器也是App的核心服务器,如果下载的人比较多,就会出现使用App的人后端服务比较卡;
解决办法:
使用oss进行分发,但是国内使用oss分发会遇到一些政策问题,原则上oss已经不允许直接使用默认oss分配的域名进行分发了,默认的域名其实就是你的oss的endPoint外网域名,不过只要你绑定自己已经备案的域名就可以进行分发,这里不讲解详细的步骤了;
结果:
使用oss下载基本可以实现2秒下载完毕,并且也不会影响到现有App内部接口的速度,即使很多人下载也没有问题;
更近一步:
实际上在你的管理后台里,将apk上传到oss,然后获得链接后,放到你的下载页的链接位置,那么一整套流程就会比较完善了;
经验:
虽然只是一个小的分发案例,但是感觉到在技术的领域,万事万物皆可更进一步,如果容忍了下载速度慢,那么其实也就没有后续更多的见识;
And,不要只做一个使用者;
不管推广营销部门的效率如何,我们作为技术者,首先要保证的是,链路上极大程度的可以保证所有用户都快捷方便的可以获得你的产品;而不是需要等待,这个过程可能就会折损一些用户,如果换算成钱的话,也是一部分损失;