没凉,很火,即将更火。
这个故事是这样的:
人们使用nodejs做了一段时间api server和ssr之后,发现用nodejs做上层业务逻辑也是杠杠的,然而一直找不到正确的打开方式。反应到舆论中就是大家都觉得nodejs基础设施不完善,缺乏可靠的分布式方案。
然而最近大家发现,FaaS就是nodejs的正确打开方式,这个东西充分体现了js快速开发优势的同时,完美的避开了nodejs一直以来被诟病和怀疑的问题。
你不是怀疑nodejs的稳定性吗?那我就把服务器环境搞得跟浏览器一样,短时运行,用后即焚。你不是不认可nodejs的基础设施吗?没关系,基础设施没必要用nodejs编写啊,反正基础设施以后都是云服务商提供,一键启用,你还操那个心干嘛?你不是认为nodejs的分布式集群不靠谱吗?没关系,现在都是k8s和docker的年代了,谁还在应用服务器层面考虑集群问题?
于是,基于FaaS架构,大家终于实现了打开网页,写一段js函数,点击部署,服务即可上线的愿景。
你可能会问,这样用nodejs和python、php甚至lua还有什么区别?用不用nodejs都一样啊。
no,no,no,那是你不知道js有多简单,ts的手感有多好,npm上的package有多丰富。举个很现实的例子,假设我们想通过底层数据模型,对业务层代码做静态类型校验和智能提醒,应该怎么做?用python的话,你得好好琢磨琢磨吧?在nodejs体系中就很容易实现,因为熟悉babel/tsc和vscode的人太多了,随便搞搞就实现了。