Desempenho de requisições mysql no PHP Boa tarde pessoal! Bom, gostaria da ajuda de vocês para compreender se há ou não diferença entre: utilizar um método por exemplo: getEndereços (definido na minha classe Cliente) ou carregar com TRepository e TCriteria com cliente_id == 'o id do cliente'. Existe diferença em relação a desempenho de requisições no banco de dados? Acredito que utilizando um TRepository com TCriteria, se eu...
AN
Desempenho de requisições mysql no PHP  
Boa tarde pessoal! Bom, gostaria da ajuda de vocês para compreender se há ou não diferença entre: utilizar um método por exemplo: getEndereços (definido na minha classe Cliente) ou carregar com TRepository e TCriteria com cliente_id == 'o id do cliente'. Existe diferença em relação a desempenho de requisições no banco de dados? Acredito que utilizando um TRepository com TCriteria, se eu tiver por exemplo 10.000 clientes o desempenho irá cair significativamente do que se eu utilizar um getEnderecos, por exemplo. No caso o getEndereços, como que este faz as requisições no banco de dados? Por índices?
Obrigado!

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (2)


NR

Não há diferença, internamente a função getEnderecos vai fazer a mesma coisa(cliente_id == $id). O Adianti somente gera os sqls, a utilização de índices ou não depende da configuração do banco de dados.

Se necessário, também existe a opção de trabalhar com cache:
adianti.com.br/forum/pt/view_1341?banco-de-dados-em-memoria-nao-cach
AN

Entendi Nataniel. Obrigado! Estou perguntado isso porque meu servidor me informou que estou tendo alguns requisições lentas de SQL, e então estava com certa lentidão no carregamento das páginas.
No caso para trabalhar com cache bastaria eu acrescentar o comando
const CACHECONTROL = 'TAPCache';

certo?

Você recomenda utilizar este artifício em classes em que os objetos são quase sempre alterados?
Por exemplo, tenho uma classe Cliente, que possui vários Títulos e que esta pode possuir várias Parcelas e que estas podem possuir vários Pagamentos.
Sempre que um cliente faz algum Pagamento, o valor restante de Título é alterado e obviamente a Parcela também. Nesse caso, compensa eu utilizar tal artifício?

Muito obrigado!