在 PHP 后端从多个 API 提供服务的最佳解决方案是什么?

What is the best solution to serve from multiple API's on a PHP backend?

我正在用 Laravel's Lumen 构建一个 API,我意识到我的 API 的主要任务是为来自其他 API 的数据提供服务' s.

我真的不知道哪一个是获得最佳性能的最佳方法。

我想到了两个解决方案:

我看到的问题是另一个API的数据在不断变化,所以我必须提供更新的数据。

所以我真的希望有任何其他更好的解决方案来解决此类问题。我想知道大公司是如何处理这个问题的。

谢谢!

你描述的是微服务架构。 在我的公司(大型电子商务网站),我们正在开发 5 个微服务和 2 个网关。

当客户请求数据时,它会被定向到我们的网关(后台或前台相关)。 然后,应用我们的业务逻辑,我们调用不同的微服务来提供新数据(或尽可能缓存数据)。

当然,你必须要有快速有效的微服务。 为此,您必须使用 ORM 缓存(例如,我们的微服务使用 Symfony,因此我们将 Doctrine 与 Redis 一起使用)。 此外,必须优化您的数据库查询。

您的第二种方法可行,但维护起来会很痛苦,并且对您的数据库来说会非常庞大​​,因为您的所有数据都将被抓取。 这不是 "micro service compliant",因为结果是前面有一个大数据库,里面有许多较小的数据库

总而言之,大公司使用我首先描述的微服务,使用 RESTFul API 或 GRAPHQL 技术