mardi 5 janvier 2016

Doctrine 2 way too slower than Laravel's Eloquent

I'm trying to use Doctrine 2 (LaravelDoctrine) instead of Eloquent.

Performing simple query of getting paginated data:

// Doctrine
$orders = $this->orderRepository->paginateAll(50);
// Eloquent
$orders = $this->orders->paginate(50);

I end up with Doctrine queries taking too much time (info from Laravel Debugbar):

  • Doctrine queries took 3.86s

1.79s

SELECT DISTINCT id_0 FROM (SELECT o0_.id AS id_0, o0_.customer_id AS customer_id_1, o0_.customer_ref AS customer_ref_2, ... FROM orders o0_) dctrn_result LIMIT 50 OFFSET 0

16.63ms

SELECT o0_.id AS id_0, o0_.customer_id AS customer_id_1, o0_.customer_ref AS customer_ref_2, ... FROM orders o0_ WHERE o0_.id IN (?)

2.05s

SELECT COUNT(*) AS dctrn_count FROM (SELECT DISTINCT id_0 FROM (SELECT o0_.id AS id_0, o0_.customer_id AS customer_id_1, o0_.customer_ref AS customer_ref_2, ... FROM orders o0_) dctrn_result) dctrn_table

  • Eloquent queries took 50.38ms

36.73ms

select count(*) as aggregate from `orders`

13.65ms

select * from `orders` limit 50 offset 0

I'm not pasting whole doctrine queries here as there's 65 columns in the table, but they all used with 'AS', identically to mentioned columns.

Is this is intended Doctrine 2 behavior to be so slow or am I missing something?

I used annotations as Meta Data for mapping and Doctrine\ORM\EntityRepository for accessing the data.

Thank you in advance.

Best Regards.



from Newest questions tagged laravel-5 - Stack Overflow http://ift.tt/1OKPGbt
via IFTTT

Aucun commentaire:

Enregistrer un commentaire