我开发了一种“Statistics-Web”。百万ManyToMany条目 - 内存问题
例如我有一些博客条目,并为每个访问者一个额外的统计条目。
例博客实体:
/**
* @ORM\ManyToMany(targetEntity="Statistic", inversedBy="blogid")
* @ORM\JoinTable(name="blog_statistics")
*/
private $statistics;
实施例的统计的实体:
/**
* @ORM\ManyToMany(targetEntity="Blog", mappedBy="statistics")
*/
private $blog;
在用于统计的实体我有更喜欢 “时间,用户,IP” 字段。 在Blog实体中,我有“文本,标题,时间”等字段。
在开始时我有1个条目。 一切正常/良好。
一个星期后,我有两个博客作品5.000条目(DB)。 (每个博客条目2.500) 我得到php内存问题。
我认为学说试图加载所有2.500条目到RAM/Cache中。 但是我只需要最后一次为“上次访问”信息。 如果我需要他们,我可以得到剩下的条目。 (统计概览)
什么是最好的“限制”条目? 当前呼叫:“Repository->使用fetchall”
直接在你的查询中排序和限制,所以只有你搜索的行被水化成php对象。 – 2013-05-14 14:01:08
我有2个条目......或者你的意思是像@ORM \ Limit(1) – Patrick 2013-05-14 14:48:16
这样的注释你可以发布更多的代码,在哪里调用你的fetchAll和哪个repo? – 2013-05-14 14:52:06