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!
Obrigado!
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
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
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!