处理海量数据API-PLATFORM

时间:2019-06-04 18:04:49

标签: nginx bigdata api-platform.com

我有一个名为Companies的实体,该实体与另一个称为CrmItems的实体具有OneToMany关系。

Entity / Company.php

spinoff.com

Entity / CrmItems.php

/**
 * @ORM\OneToMany(targetEntity="App\Entity\CrmItems", mappedBy="company")
 * @ORM\JoinColumn(nullable=false, name="`CompanyID`", referencedColumnName="`company_id`")
 */
private $crmItems;

这里的问题是,一家公司可以拥有11000件商品。 因此,当我请求http://localhost:8080/companies/2时出现502错误

enter image description here

似乎标题大小与X-Cache自定义标题大小有关。

即使在API平台官方文档https://api-platform.com/docs/v2.3/extra/troubleshooting/#upstream-sent-too-big-header-while-reading-response-header-from-upstream-502-error

中,我也已经通过互联网进行了搜索

该解决方案似乎增加了fastcgi缓冲区。

/**
 * @ORM\ManyToOne(targetEntity="App\Entity\Companies", inversedBy="crmItems")
 * @ORM\JoinColumn(nullable=false, name="company_id", referencedColumnName="`CompanyID`")
 */
private $company;

我已经尝试增加而没有成功。

有什么技巧可以处理海量数据? API平台支持关系集合分页吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

  

API平台支持关系集合分页吗?

我从不对文档发红。

如果确实太大,我会考虑其他设计方法。为什么不对公司使用CrmItems和filter。这样您就可以对它们进行分页。