运维前后端分离的开发流程

之前写过一系列和接入管理相关的文章,

运维平台中的脚本管理

平台设计中的脚本管理

运维中的接入管理梳理

现在回过头来看,发现真是一个难以言表的心路历程。

既然说到前后端,其实现在的前后端分离和以前的不大一样了。本来前后端分离要解决的一个痛点是多端支持(电脑端,移动端-IOS,Android等)重复造轮子的现象,这几年逐渐流行起来不是跑偏了,而是在Devops的快速发展下成为了一种新的技术开发模式。

前后端要不要分离,这个话题应该能说很久,有优点有缺点,通常来说,平常做后端的同学前端技能本来就欠缺,再加上这些年前端技术的更新迭代,更加的纷繁复杂,要掌握好前端技术几乎是一件不大可能完成的任务。

在SRE的理念中,要跳出单纯的运维圈子,从一个更高的角度来看待问题,所以前端问题不应该成为瓶颈,抽取一下概念就是少数一些后端的人可以逐步走向全栈,能够承接一些前端的技术,但是这个不是后端同学的核心技术,如果满分10分,达到6分就差不多了。

对于绝大多数的运维同学来说,掌握前端技术的成本其实能够更好的投入到后端的设计和开发之中,这就是公司人力成本和项目资源的性价比问题了。

前后端技术怎么搞,分离不是分裂开来,所以我提了一个概念就是本地化前端和平台化前端,平台化前端是专业的前端技术,我们可以提供前端的原型和接口来逐步迭代完成。

行业现实就是运维侧的脚本化其实做得还不够好,还没有完全的做到低耦合,所以要快速的接入平台化前端需要一些时间,所以提出了一个本地化前端,这个里的本地化前端的依赖基础还是API,只要运维侧的功能服务能够接口化,那么接入本地前端可以把一些边界问题和功能迅速集成,我们不求前端界面多好看,能够实现基本的需求即可。

整个前后端分离的一个开发流程设计如下:

这么设计是我确实走了一圈有一圈的流程,最后都不想一一对接了,沟通成本实在太高,所以这也是我提出前后端要分离的一个原因。

比如运维同学要接入平台,需要准备三件事情,第一个是你要有明确的需求,没有需求的接入意义不大,用不用的起来谁都不知道,得有需求的场景,第二就是提供脚本,脚本的内容需要符合一定的规范,比如输入参数和输出结果要有明确的定义,第三就是提供一个初步的原型,纸上画一画也行,这些信息其实就会对接不同的角色,这样一来,后续接入逻辑层的人之需要对接接口即可,脚本接入的人之需要对接脚本内容,规划脚本路径即可,这样就是一个流行线,有了持续的需求,也可以逐步的迭代。

其中RESTful API层其实要做的事情不是简单的脚本对接,而是在接口的基础上弯沉雇一个逻辑的校验,至于脚本的哪些参数是必选或者格式的要求,这些可以不在脚本中刻意维护,在API层维护即可。

至于和前端的边界,比如输出10条数据,是否要根据某个列来排序,这些需求初期是模糊的,如果对接平台前端,其实是不明确的,在这个磨合的过程中,本地前端的磨合成本相对更低一些。

而经过迭代的原型再接入到平台前端,就会更加的平滑,跨团队的沟通成本高,但是提前把边界问题划分清楚,其实就会好很多。

原文发布于微信公众号 - 杨建荣的学习笔记(jianrong-notes)

原文发表时间:2018-06-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏速成应用小程序开发平台

微信小程序又曝流量新入口,这次居然出现在了QQ空间里

腾讯公布的数据显示:QQ空间拥有活跃账户5.68亿,6成以上的用户为90后年轻用户。之前也有相关的调查表明,QQ空间里的很多年轻用户并不喜欢在微信上聊天,更倾向...

2363
来自专栏程序员的知识天地

安卓手机为什么越用越卡, 程序员来告诉你!

其实就内存配置,手机硬件来讲,安卓手机是比我们现在的苹果手机IOS等等要高几个级别的。例如现在iPhone X的运存也是3GB,而我们现在的安卓旗舰已经是8G起...

1492
来自专栏FreeBuf

游戏中学会撸代码:这些编程学习网站不容错过

下面这些网站是从200多个游戏编程网站选出的12个网站,你可以通过下面的网站在游戏中学习编程。 当然这些网站都是免费的,Mybridge A.I也评估了这些,这...

2618
来自专栏web前端教室

前端新人,除了js还缺少啥?

简短截说,前端新人除了js还缺少二样东西,一是规则;二是沟通; 规则是指,日常工作中的事务性工作,例如日志,邮件,会议,记录,讨论,发言...等等这些东西。 例...

19810
来自专栏腾讯Bugly的专栏

【新技能 Get】程序猿需必备基础的运营数据

前两天有个用户反馈,应用在更新时会自动下载安装某些应用,怀疑与 Bugly 有关。经过分析,原来是 apk 地址被劫持,强制换成应用的下载地址。在这里,腾讯Bu...

3958
来自专栏开源优测

[大数据测试]ETL测试工具和面试常见的问题及答案

概述 商业信息和数据对于任何一个企业而言都是至关重要的。现在很多公司都投入了大量的人力、资金和时间对这些信息、数据进行分析和整理。 数据的分析...

5096
来自专栏BestSDK

从架构分析到代码,Amazon无人超市是这样诞生的|附教程

首先我们先看一段预览视频,了解一下无人超市的整个销售与运作过程。 视频内容 无人超市,未来趋势。 上面这段视频,展示了逛亚马逊的Amazon Go无人超市是种怎...

4375
来自专栏微信公众号:Java团长

Java程序员该如何突破瓶颈!

源码分析是一种临界知识,掌握了这种临界知识,能不变应万变,源码分析对于很多人来说很枯燥,生涩难懂。

913
来自专栏知晓程序

小程序搜索功能不容忽视,背后大有深意

1492
来自专栏开源优测

[大数据测试]ETL测试工具和面试常见的问题及答案

概述 商业信息和数据对于任何一个企业而言都是至关重要的。现在很多公司都投入了大量的人力、资金和时间对这些信息、数据进行分析和整理。 数据的分析...

3738

扫码关注云+社区

领取腾讯云代金券