Serverless架构相比于传统面向客户端的三层应用架构的差异是什么?
删除认证逻辑,用第三方BaaS服务替代; 使用另外一个BaaS,允许客户端直接访问架构与第三方(例如AWS Dynamo)上面的数句子库。通过这种方式提供给客户更安全的访问数据库模式; 前两点中包含着很重要的第三点,也就是以前运行在服务端的逻辑转移到客户端中,例如跟踪用户访问。客户端则慢慢转化为单页面应用。 计算敏感或者需要访问大量数据的功能,例如搜索这类应用,我们不需要运行一个专用服务,而是通过FaaS模块,通过API Gateway对HTTP访问提供响应。这样可以使得客户端和服务端都从同一个数据库中读取相关数据。由于原始服务使用Java开发,AWS Lambda(FaaS提供者)支持Java功能,因此可以直接从服务端将代码移植到搜索功能,而不用重写代码。 最后,可以将其他功能用另外一个FaaS功能取代,因为安全原因放在服务端还不如在客户端重新实现,当然前端还是API Gateway。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。