使用无服务器架构的六个月里,我学到的六件事
|
但这种方法存在一些问题,它只适用于在这中间存在服务器的情况。我们已将该中间的服务器去除掉了。它还可能让你暴露给一些令人讨厌的攻击行为,比如跨站点请求伪造(CSRF),并且不能让你轻易地将身份传递给其他服务。所以这种方法基本上仅支持单体应用。 我们讨厌单体服务以及CSRF攻击,但我们确实喜欢我们新引入的技术,即JWT令牌。当我了解到这是如何工作的时候,我有一种类似禅的兴奋感,我需要一张流程图来好好解释明白。 步骤1,获取JWT,第2步,使用它与你编写的任何服务进行通信:
授权过程获取JWT令牌
Lambda函数接受并验证令牌 基本的核心是每个请求都经过身份验证,客户端甚至可以调用多个无服务器进行通信。在JWT的世界里甚至不存在CSRF。无服务器代码所需要的就是使用自定义授权程序来检查标头中的JWT是否有效(可参考实例代码)。 与JWT对比起来,所有其他类型的用户验证看起来都过于复杂。我们毫不犹豫将所有用户验证都切换为Auth0(在某些情况下为Cognito)。无服务器身份验证既简单又非常有效。 迈向新世界 虽然我已经使用了AWS很长一段时间,即使是在EC2的场景下,因为我参与的时间相对较晚所以也会需要很多帮助。在结束无服务器会议之后,这感觉就像进入一个真正未开发的领域,需要我们在黑暗中去发现更多。 在我们的前几个实验中,我们尝试使用现有的工具和技术但发生了一些失误,结果并不是很好。经过几个月的正确积累,我们已经正式开始以100%无服务器方式交付项目。我相信我们迁移过程中的问题和早期的探索非常值得。 我们正在构建灵活的实时SPA应用程序,这些应用程序使用完全无服务器的基础架构,可以毫不费力地扩展,并且成本降低了70%-90%。我对这个支出减少感到高兴以及震惊。我从未如此确信无服务器技术将彻底改变云服务下的应用交付。 相关链接: https://read.acloud.guru/adventures-in-migrating-to-serverless-a63556b39042 https://read.acloud.guru/node-is-the-wrong-runtime-for-serverless-jk-c69595f6a8eb 原文链接:https://read.acloud.guru/six-months-of-serverless-lessons-learned-f6da86a73526 【编辑推荐】
点赞 0 (编辑:PHP编程网 - 湛江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |



