Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python AWS API网关和;Lambda-API分页_Python_Postgresql_Amazon Web Services_Aws Lambda_Aws Api Gateway - Fatal编程技术网

Python AWS API网关和;Lambda-API分页

Python AWS API网关和;Lambda-API分页,python,postgresql,amazon-web-services,aws-lambda,aws-api-gateway,Python,Postgresql,Amazon Web Services,Aws Lambda,Aws Api Gateway,我正在考虑使用AWS API网关和AWS Lambda(Python)创建一个无服务器API,但在设计这个API时,我考虑了一些方面,如分页、安全性、缓存、版本控制等等 所以我的问题是: 在性能和成本方面,用非常大的数据(100万条记录)实现API分页的最佳方法是什么 我应该在postgresql数据库中实现分页吗?(我认为这 (会很慢) 我不应该使用postgresql数据库分页,而只是将从数据库获得的所有结果缓存到aws弹性缓存中,然后在lambda中进行服务器端分页 我感谢你们的帮助 如果

我正在考虑使用AWS API网关和AWS Lambda(Python)创建一个无服务器API,但在设计这个API时,我考虑了一些方面,如分页、安全性、缓存、版本控制等等

所以我的问题是: 在性能和成本方面,用非常大的数据(100万条记录)实现API分页的最佳方法是什么

  • 我应该在postgresql数据库中实现分页吗?(我认为这 (会很慢)
  • 我不应该使用postgresql数据库分页,而只是将从数据库获得的所有结果缓存到aws弹性缓存中,然后在lambda中进行服务器端分页

  • 我感谢你们的帮助

    如果您的数据要保存在postgresql数据库中,我会从您的请求访问数据库开始,并分析性能。您已经假设它很慢,但是您没有说明延迟的要求是什么,或者您的模式是什么,所以人们关于它是否适合您的情况的任何断言都是完全推测性的

    如果您确实认为评测后的缓存速度不够快,那么添加一个缓存是有意义的,尽管将整个内容存储在缓存中似乎是浪费,除非您能够保证您的客户端将始终遍历所有结果。您可能需要考虑一种机制,它预取数据块,这些数据将服务于一些请求,而不是试图缓存整个数据。
    TL;DR:不要过早地优化您的解决方案。量化您希望您的系统如何响应并测试和验证您的假设。

    如果您的数据将存在postgresql数据库中,我将从您的请求访问数据库开始,并分析性能。您已经假设它很慢,但是您没有说明延迟的要求是什么,或者您的模式是什么,所以人们关于它是否适合您的情况的任何断言都是完全推测性的

    如果您确实认为评测后的缓存速度不够快,那么添加一个缓存是有意义的,尽管将整个内容存储在缓存中似乎是浪费,除非您能够保证您的客户端将始终遍历所有结果。您可能需要考虑一种机制,它预取数据块,这些数据将服务于一些请求,而不是试图缓存整个数据。 TL;DR:不要过早地优化您的解决方案。量化您希望系统如何响应、测试和验证您的假设