4月14日,由云加社区举办的TVP&腾讯云技术交流日云开发专场,暨"腾讯云-云开发圆桌论坛"在北京、深圳两地同步举行。

当天下午,一场主题为"基于大前端和node开发模式下的Serverless发展前景探讨"的高峰对话成为全场焦点,包括猫眼娱乐商业平台前端负责人王克淼、京东Taro团队负责人李伟涛、转转前端公共支撑负责人王澍、Laybox合伙人李明、Node js CTC成员张秋怡等26位前端领域大佬参与交流,北京和深圳两地的主持人则分别由云开发高级产品经理王斌、云开发高级工程师李成熙担任。

在会议中,各位技术领域的专业人士围绕大前端serverless的技术价值传统模式向Serverless模式的转变阻力,以及Serverless技术趋势下对人及技术管理的新诉求,进行了深刻的讨论和探究。

『 Serverless对大前端技术演进价值巨大,助力前端向全栈高效开发转变 』

前端的技术近几年发展非常迅速。我们可以从两个维度去看前端技术的发展——一个是前端复杂度,一个应用的广度。单看复杂度,从HTML、JS、CSS的阶段向DOM操作框架,从DOM到MVC,再到MVVM框架,再到现在assembly技术标准的出现,让前端工程师开发复杂度应用的能力不断提高。而从广度来看,前端也一直在拓展,从浏览器到服务器端,再到移动端,小程序,前端边界在不断扩大。然而在这个发展的过程中,有一个很深的隔离,这个隔离本质上就是物理隔离,比如前端和后端,存在手机和服务器之间的物理隔离。而serverless,函数即服务对前端来说,后端服务是一个函数,函数就是前端代码的一部分,后端服务和前端完全融合在一种代码体系里去。从这个层面来说,severless打破了物理隔离,帮助前端真正做到了全栈。

云开发,是腾讯云和微信团队联合开发的,集成于小程序开发者工具(IDE)的原生serverless云服务。它进一步降低小程序开发门槛,让前端可以包办小程序开发,提升开发效率,像调用API一样便捷,用户其实完全不用担心哪些是服务器的逻辑,他们都去向了哪里,只需要像前端函数一样去理解就可以。

腾讯云TVP、Layabox合伙人李明同时也提到,在传统开发模式下前后端、运营沟通成本非常高,Serverless确实是未来研发团队都应该考虑的一个新的选择方向。但自行探索或许成本比较高。因为如果把这个事情交给前端开发,对于他们来说有学习运维和后端的成本;若交给后端开发,对于他们来说其实又没有任何关系。如果交给云厂商呢?这或许是一个不错的选择。因为这样的话,大家都可以专注于自己的业务,也不需要花费大量时间和精力学习额外知识,从而提高产品研发团队的整体效率。

猫眼资深工程师高英健认为,Serverless的支持对于前端日常业务的开发已非常重要,让前端开发可以独立去支持一些业务需求。比如猫眼在运营工具的实际开发过程中,由于项目主要用于配置日常运营活动,与后端核心逻辑没有任何关系,后端也不想主动配合。这种情况下借助腾讯云推出的大前端Serverless产品——云开发,让前端通过调用API的方式实现后端业务逻辑,对于前端开发效率有很大的改善,逻辑、数据、资源均由前端工程师包办,大大降低了项目的开发门槛,提升开发效率。

大前端Serverless,让前端开发者可以更轻量地做后端的事情,大大提升开发效率,这无论是对企业,还是对市场,都是一件好事。

『 从传统模式到Serverless模式,目前仍存在难点 』

腾讯云TVP、友浩达科技CTO张善友认为,Serverless需要统一的行业标准。目前Serverless服务厂商众多,但各自都是独立的玩法,目前若想从A服务商迁移到B服务商,成本高、难度大。若一套Serverless代码能够在腾讯、阿里、微软、亚马逊等云服务上都能运行,足以降低迁移成本,有效降低客户使用Serverless服务前的顾虑。

腾讯云TVP、北京竹间科技技术负责人朱峰认为,从重构的角度来看,Serverless无法做到真正的技术重构,后端仍然是冗杂的面向过程函数不便于管理。如果能解决重构的问题,才能真正地降低使用门槛。

另外,数据安全仍然是大部分嘉宾的一个主要关注点,而这个问题的本质是公有云数据安全的问题。有意思的是,云开发模式下,每个用户的环境资源是独立的,也即是私有的,并且云开发提供与自有数据库打通的能力。这样,用户的数据都存在用户自己的云开发环境资源下面,一定层面保障了用户的数据安全与稳定性。

此外,从传统模式到Serverless模式的转变,阻力还有错误排查问题,无法跨云等问题,这也导致很多业务无法直接从传统模式向serverless模式迁移。

『 serverless开发模式下,我们开发者或者开发团队要做什么样的改变?

即速应用后台开发工程师提到,在Serverless下,前端和后台结合的话,他们操作后台给出的数据,包括创造数据,改数据等,这完全是数据层面的操作,而不仅仅是UI层面,不只是UI的性能问题;同时还要考虑后端的一些数据的性能问题,还有特殊的后端需要使用的模式,比如队列、定制任务。这就有可能分化成两个后台,有的做serverless服务,有的做serverless工具和技术建设。

Node js核心成员张秋怡说到,未来前后端将趋近于系统化、全栈式,按照这种发展模式势必会带来思维的转变,前端需要考虑后端,后端需要考虑前端,慢慢形成一个完整的产品开发模式,Serverless的出现则很好的顺应了这种新开发模式的发展,我们需要做好准备迎接这一大趋势。

凹凸实验室核心成员马剑从团队分工角度提到,这些年在组建团队的时候,我们前端做一些事,后端用node来解决很笼统的场景。但是再往后发展,我们发现过去前端同学做node,或者node的同学做前端,其实都是不专业的。所以发展到今天,我们团队内部也是细分了UI开发的一波人,专业做后端服务的一波人,顺着这个思路往下发展,大前端Serverless一定也是会继续拆分的,即使Serverless做得再好,一定会拆分出来一波人专业在搞,可能另外一波人还是搞业务开发了。

整整一个下午,30多位嘉宾围绕大前端Serverless各抒己见,同时也为腾讯云【云开发】提出丰富的产品优化建议。在未来,腾讯云-云开发团队将与大家一起,共同探索和推进大前端Serverless的发展,为大家提供更简便,更好用的开发工具。

聚焦“云开发圆桌论坛”,大前端Serverless大佬们释放了这些讯号!的更多相关文章

  1. FEDay会后-Serverless与云开发,可能是前端的下一站

    进化本身是生物体与环境之间持续不断的信息交换的具体表现. -- 摘自<信息简史> 很荣幸在9月21号成都举办的第五届FEDay上作为讲师为大家分享腾讯云在近两年推出的云开发相关的技术和知识 ...

  2. TVP专家眼中的云开发:定是未来,尚不完美

    TVP专家眼中的云开发:定是未来,尚不完美 C++之父 Bjarne曾说,"世界上只有两种编程语言,一种被人骂,一种没人用".这句玩笑话道出了软件开发行业的真谛,不怕被人吐槽,就怕 ...

  3. 基于云开发开发 Web 应用(三):云开发相关数据调用

    介绍 在完成了 UI 界面的实现后,接下来可以开始进行和云开发相关的数据对接.完成数据对接后,应用基础就打好了,接下来的就是发布上线以及一些小的 feature 的加入. 配置 在进行相关的配置调用的 ...

  4. 我在阿里巴巴做 Serverless 云开发平台

    技术的成熟度源自大规模的实践,Java 领域,阿里将自身的实践源源不断的反哺给微服务技术体系:Node.js 领域,阿里正掀起了前所未有的前端革命浪潮,将实践反哺给 Serverless技术体系,并逐 ...

  5. 云开发如何解决serverless对端的最后一公里问题

    前端圈从来不缺少新的技术.点子和话题,有些留下来了而有些则转瞬即逝.在决定一种新技术是否能够长久的所有因素里,最核心的必然是自身实力过硬能够经受住实践检验.而除此之外,这项技术所解决问题的广泛程度.受 ...

  6. 前端微信小程序云开发基础讲解

    什么是云开发 云开发与传统模式的对比 云开发能力介绍云开发对小程序开发的变革 云开发是微信团队联合腾讯云提供的原生serverless云服务,致力于帮助更多的开发者快速实现小程序业务的开发,快速迭代. ...

  7. Serverless介绍篇(一)云开发在Serverless方面取得了怎样的新成果?

    过去几年间,Serverless 发展迅猛,与其相伴的还有从小程序.移动端等到前后端一体化的演进与实践,也正因如此,从云计算到前端,众多开发者都极为关注.本文介绍了腾讯云CloudBase 的 Ser ...

  8. 热度3年猛增20倍,Serverless&云开发的技术架构全解析

    『 作为一个不断发展的新兴技术, Serverless 热度的制高点已然到来.』 或许,Google Trends 所显示的 3 年猛增 20 倍的" Serverless " 搜 ...

  9. 微信小程序/校园社区论坛/微信云开发/云函数

    一.框架来源 1.非常非常感谢B站up主"梦千的曾哥哥"的开源框架. 没有他就没有这个小程序.如果有想做的同学,可以直接移步他的视频那里开始学习.我水平不够,就不教具体怎么配置环境 ...

随机推荐

  1. FFPLAY的原理(一)

    概要 电影文件有很多基本的组成部分.首先,文件本身被称为容器Container,容器的类型决定了信息被存放在文件中的位置.AVI和Quicktime就 是容器的例子.接着,你有一组流,例如,你经常有的 ...

  2. MySql foreach属性

    foreach属性 属性 描述 item 循环体中的具体对象.支持属性的点路径访问,如item.age,item.info.details.具体说明:在list和数组中是其中的对象,在map中是val ...

  3. pg_restore数据库恢复指令

    pg_restore restores a PostgreSQL database from an archive created by pg_dump. Usage:  pg_restore [OP ...

  4. ruby the diference between gets and gets.chomp()

    ruby the diference between gets and gets.chomp() 二者都是可以获取用户命令行输入的函数,但是 gets获取内容后,后面 附带了 多余的换行符号'\n'; ...

  5. 爬虫之urllib包

    urllib简介 简介 Python3中将python2.7的urllib和urllib2两个包合并成了一个urllib库 Python3中,urllib库包含有四个模块: urllib.reques ...

  6. SpringBoot自定义拦截器实现IP白名单功能

    SpringBoot自定义拦截器实现IP白名单功能 转载请注明源地址:http://www.cnblogs.com/funnyzpc/p/8993331.html 首先,相关功能已经上线了,且先让我先 ...

  7. (Lesson2)根据类名称和属性获得元素-JavaScript面向对象

    描述:在编写选择器的时候遇到的一根问题,我需要实现Jquery的选择器功能,第一个根据ID获取Element非常简单,第二个根据类(class)去获取Element集合,这个相对复杂,而根据name和 ...

  8. 计算机网络相关:应用层协议(一):DNS

    DNS 1.概念  DNS是:  1)  一个有分层的DNS服务器实现的分布式数据库  2)一个使得主机能够查询分布式数据库的应用协议.  它运行在UDP之上,默认使用53号端口.  主要功能 是将主 ...

  9. PAT1116: Come on! Let's C

    1116. Come on! Let's C (20) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue &quo ...

  10. mock测试之powermock

    由于公司框架依赖别的模块, 导致我们开发老是需要跟着他们的脚步, 所以我的上级领导提出这个方案说直接跳过他们,我们自己在本地测试,然后就找了它, 导入相关jar <dependency> ...