Atualmente, estou vendo que para uma tabela de banco de dados com um esquema muito simples (cerca de 5 campos), ela está inserindo novos registros a uma taxa de pouco menos de ~ 50 inserções / segundo, no meu ambiente de desenvolvimento local (unidade SSD) - isso é com nenhum observador no modelo que preenche tabelas associadas.
Usando SQL direto, estou vendo uma melhoria - ~ 1800 inserções / segundo. Estamos pensando em tentar otimizar o desempenho de nossos modelos, mas é claro que não queremos perder toda a boa estabilidade e flexibilidade que o núcleo Magento nos oferece.
Pergunto-me se alguém já seguiu esse caminho antes e se há algumas vitórias fáceis em termos de componentes da camada de modelo que podem ser ignoradas com relativa segurança, o que proporcionará melhorias significativas no desempenho.
Coisas como:
- Resolução do nome da classe
- antes e depois dos eventos salvos
- Despachos de eventos
- Transações
- etc.
UPDATE: Eu menti, na verdade havia algumas consultas adicionais disparando de observadores ou afterSave (), que eu vi quando inspecionei o log de consulta do banco de dados. O benchmarking em relação a uma entidade totalmente simples realmente me dá ~ 300 linhas / segundo nos modelos Magento - apenas o overhead do MySQL são transações.