您的位置首页  网络科技  前端

互联网风口太多了到底哪些才是真的趋势?

  如果你长期跟进本领域的前沿技术,你会发现近十年来互联网技术发生了非常大的变化,这种变化几乎在每一个领域里发生:

  除此之外,还有一些新兴的领域如 AI、区块链,从不受重视到成为显学,开启了一波又一波的风口。

  单个去看这些领域的发展,会觉得纷繁杂乱没有头绪,但如果从整体上去看,会发现它们相互之间有联系,它们的发展源于一种共同的推动力,遵循着相似的逻辑。

  如果要对这个推动力、对今天这个技术浪潮起一个名字,在当前阶段我觉得可以用“云原生”,但这个短语被过度使用在各种营销语境中,它的定义会发生偏离,所以后文我不会用这个短语,而是用真正的云计算这句话。

  2005 年亚马逊发布了 AWS,算是拉开了云计算的序幕。但是,在很长一段时间里云计算都没有兑现自己的“自动扩容、按使用付费”的宣传语。

  云计算最重要的技术是分布式计算和分布式存储,分布式计算方面,最开始的技术是虚拟化,也就是所谓的“Software defined xxx”,通过对计算 / 存储和网络资源的虚拟化,同时能够给用户任意分配资源。但这里面一开始做的最好的只有文件存储这一块,AWS S3 及类似的对象存储产品给人们带来了云时代的一些实际的体验,但云服务器则还是走回了卖服务器的老路。

  当然, 这里的云服务器和传统服务器相比还是有优势的,至少运维不需要千里迢迢跑到机房去排查问题。但和我们想要的云服务相比还差的很远,它只是传统技术在过渡到云时代的替代品。虚拟化技术新建服务器耗时长,在扩容方面限制很大,容器技术诞生后,才终于解决了这一问题。但现在一些 MicroVM 开始出现,比如 AWS 刚刚发布的 FireCracker,试图融合虚拟机和容器的优点,这也是当前云计算技术的一个重要关注点。

  在云计算的发展过程中,有一个分支是 PaaS,最早是 2007 年推出的 Heroku,从形态上来说,它是一个 App Engine,提供应用的运行环境。PaaS 的理念被认为更贴近真正的云计算,如果你使用虚拟化的云服务器,你仍然要自己负责应用分发、部署和运维,要与各种底层接口、资源打交道,在 PaaS 上,这些都不用管了,你只需要把应用上传到云端就行。

  在 2015 年之前,OpenStack 是云计算的主流技术,很多公司包括 IBM/ 红帽都在它身上投入重注。然而,随着曾经过分天真乐观的一些公司如思科,它们试图基于 OpenStack 进入公有云市场,但在现实面前迅速败退,以及主要参与者 Nebula 的关闭,市场的信心遭遇重挫。再加上 Docker 和 Kubernetes 的快速崛起,OpenStack 的声势已经大不如前了。

  但是,Kubernetes 还是太底层了,真正的云计算并不应该是向用户提供的 Kubernetes 集群。

  2014 年 AWS 推出 Lambda 服务,Serverless 开始成为热词,从理论上说,Serverless 可以做到 NoOps、自动扩容和按使用付费,也被视为云计算的未来。但是,Serverless 本身有一些问题,比如难以解决的冷启动性能问题,因此,围绕 Serverless 的研发,以及将 Serverless 和容器技术融合也是当前的前沿课题。

  Serverless 是我们过去 25 年来在 SaaS 中走的最后一步,因为我们已经渐渐将越来越多的职责交给了服务提供商。

  这些年里,软件架构逐渐从 SOA 进化到微服务,很多人认为微服务是一种细粒度的 SOA,在去掉了 SOA 中的 ESB 之后,微服务变得更加灵活、性能更强。但是,实施微服务需要一些前提。

  这基本就是 Kubernetes 所起到的主要作用,虽然如 Spring Cloud、Dubbo 微服务框架在各方面已经非常完善,但随着云原生计算基金会的壮大,基于 Kubernetes 的微服务在社区中的热度越来越高,也开始有很多公司开始利用这一套技术栈来构建微服务。

  到 2016 年,Service Mesh 开始引起社区的注意,Kubernetes 加上 Service Mesh,再加上 CNCF 的一些开源项目,基于 k8s 的微服务技术栈基本就完善了。2018 年 Istio 1.0 发布,更是为这股浪潮加了一把火,未来的微服务将是 k8s 和 Service Mesh 的天下。

  微服务正在逐渐走向巅峰的过程中,但它的挑战者已经出现。Serverless 或者说 FaaS 最开始只是 AWS 推出的一个功能,但随着社区和业界的跟进,逐渐有人将其认为是微服务的进化。其逻辑也很简单,从 SOA 到微服务是一个服务粒度逐渐拆分得更小的过程,FaaS 里的 Function 可以视为更小的、原子化的服务,它天然的契合微服务里面的一些理念。

  2009 年 MongoDB 开源,掀开了 NoSQL 的序幕,一时之间 NoSQL 的概念受人追捧,MongoDB 也因为其易用性迅速在社区普及。NoSQL 抛弃了传统关系数据库中的事务和数据一致性,从而在性能上取得了极大提升,并且天然支持分布式集群。

  本来事情发展到这里就结束了,但 2014 年亚马逊又推出一个重磅炸弹:基于新型 NVME SSD 虚拟存储层的 Aurora,它实现了完全兼容 MySQL(甚至连 bug 都兼容)的超大单机数据库,同时在性能上高出 5 倍以上。

  另外,各种不同用途的数据库也纷纷诞生并取得了较大的发展,比如用于 LBS 的地理信息数据库,用于监控和物联网的时序数据库,用于知识图谱的图数据库等。

  可以说,数据库目前处于一个百花齐放的阶段,而由于云厂商的努力,基本上新的数据库都支持自动扩容、按使用付费的云计算特征。

  Google 在 03-06 年发布了关于 GFS、BigTable、MapReduce 的三篇论文,开启了大数据时代。在发展的早期,就诞生了以 HDFS/HBase/MapReduce 为主的 Hadoop 技术栈,并一直延续到今天。在这当中,不少组件都是可替换的,甚至有的发生了换代。这其中,最重要的换代就是处理引擎。

  最开始大数据的处理大多是离线处理,MapReduce 理念虽然好,但性能捉急,新出现的 Spark 抓住了这个机会,依靠其强大而高性能的批处理技术,顺利取代了 MapReduce,成为主流的大数据处理引擎。

  Hadoop 本身也遭遇了 Kubernetes 的挑战。Hadoop 本身包括专用于处理大数据的编排系统如 Yarn 等,但如 Spark/Presto/Kafka 等最重要的 Hadoop 技术已经可以在 Kubernetes 上运行,使用 Kubernetes 来运行大数据技术栈,可以更好的与业务集成。遭遇挑战的表现之一就是 Hadoop 技术栈的两家主要提供商,Cloudera 和 Hortonworks 最近决定合并,缓慢的增长表明市场上已经容不下两家提供商了。

  这其中最重要的变化就是 DevOps 的出现,运维的身份职责发生了转变,它不再是专门跑任务脚本或者与机器打交道的人,而是变成了 OpenStack 或者 Kubernetes 的专家,通过搭建 / 管理相关的分布式集群,为研发提供可靠的应用运行环境。

  如果纯粹看传统的前端开发的变化,不仅主流技术从 jQuery 转移到三大框架,更重要的是 SPA 和前后端分离的出现。

  如果把 2016 年的 AlphaGo 当做现代 AI 的起点,那么 AI 发展的历史其实很短。学术界还在研究怎么提升 AI 的算法,各个公司则是急于将 AI 应用到生产环境。

  AI 从感知层大致分为两大块,一块是计算机视觉,这一块已经比较成熟,无论是人脸识别、物体检测、运动检测都已经能用于实际场景中。另一块则是 NLP,虽然微软、Google 等宣称它们的 AI 翻译准确率已经极高,但实际上仍然不太好用,而多轮会话的问题没有解决,Chatbot 还是难以与人展开正常对话。

  事实上,边缘计算的定义并没有清晰,甚至连边缘是什么都没有共识。有的说终端节点、智能设备是边缘,有的说 CDN 是边缘,有的说路由器、交换机是边缘,还有的说未来的 5G 基站是边缘。

  NFC 方面,在中国,银联主推 miniSD 卡的 NFC 方案,而运营商主推带 NFC 的 sim 卡,而手机厂商更愿意将 NFC 功能直接集成至手机中。在国外,美国三大运营商推出基于 NFC 的移动支付功能 Isis,苹果谷歌各自有自己的 NFC 钱包,而 Android 阵营的手机也多半将 Android Pay 功能替换为自家的支付功能。

  物联网通信协议方面,WiFi、蓝牙、RFID、ZigBee,背后代表了不同的利益方,而在包括工业物联网等行业之后,各种私有通信协议多达数十种。

  正是因为物联网协议标准的争夺,到现在我们都没有办法简单的将两个任意两个支持联网的设备相互连接,物联网无法形成像 iOS 和 Android 一样的平台。可以想象,物联网的发展还任重而道远。

  智慧城市是物联网之集大成者,然而其概念从诞生到现在数十年了,我们没能看到一个成功的落地案例。

  所以,物联网的发展不会像移动互联网一样一蹴而就,而是通过在共享单车上的应用,这样一个个案例积累起来逐渐进入我们的生活。

  其中的代表技术,就是机器学习、Kubernetes、Serverless,它们是当下这个时代技术发展的主旋律,如果你认同这个观点,你可以得出这样一个预测:

  计算:AI 对于计算的特殊需求,催生了相关芯片的研发。而更多非通用性芯片将推动物联网和边缘计算的发展。而在远处忽隐忽现的量子计算,一旦能普及,也必将产生颠覆。

  存储:Nano Flash 类非易失性存储还有提升的空间,在云和端的利用也没有普及。如果非易失性存储能在内存领域有所突破,对于软件架构必将带来另一次颠覆。

  网络:网络方面,WiFi 技术即将进入第六代,带来拥挤场合的大幅性能提升;蓝牙进入第五代,连接距离将提升至 300 米;更重要的则是 5G,相较于 4G 数百倍的数据传输速度和低至几毫秒的延时,让很多应用都有了更大的想象空间。

  选择技术是有风险的,如果是一家做 To B 或者 To C 的公司,选择了非主流的技术,只是会演变成长期的技术负债,但如果是一家面向开发者的云计算公司,选择错了技术则几乎注定了之后的衰落,无论是坚持下去还是切换成主流技术,都会因为错过最佳时机而步步艰难。这也是近年来新技术受到追捧的一个原因。

  这种现象也导致了技术迭代的速度越来越快,开发者只要几年不关注新技术,就有一种被世界抛弃的错觉,于是每个人都很焦虑。

  阿尔法公社重点关注企业服务、人工智能、消费零售、金融科技和区块链等领域,目前已经投资超过30个项目,包括白山云、薪人薪事、在行/分答、美洽、Advance.ai、PMCAFF、天机数据、唯家WeHome、诸葛io、帷幄科技、清影科技、Qury、SECBIT、所思科技、火星盒子、臻宿、正方形口腔、麦洽等。

免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186