tabnews.com.br icon indicating copy to clipboard operation
tabnews.com.br copied to clipboard

Parar de calcular TabCoins e TabCash na hora de injetar a sessão (e outros lugares)

Open filipedeschamps opened this issue 2 years ago • 2 comments

Contexto

Todo endpoint que injeta a sessão do usuário puxa do banco para a memória da aplicação o objeto inteiro do usuário, e isto inclui calcular as tabcoins e tabcash deste usuário, mesmo que isto não seja usado. Na verdade, na menor parte das vezes que um usuário é requisitado do banco nós usamos as propriedades tabcoins e tabcash, então vou sugerir algo interessante na Execução:

Execução

Em primeiro lugar, ao injetar uma sessão, o usuário inteiro é puxado aqui:

https://github.com/filipedeschamps/tabnews.com.br/blob/0bbb0f655dc88847fa741001a83d3f3297bf01a1/models/authentication.js#L41

Sendo que a única coisa que usamos, nesse caso, é a propriedade features logo abaixo no authorization.

Então minha sugestão é nunca retornar as tabcoins e tabcash nos métodos de busca do user, a não ser que isso seja explicitamente requisitado.

Os métodos de user que sugiro mexer por enquanto

findOneByUsername https://github.com/filipedeschamps/tabnews.com.br/blob/0bbb0f655dc88847fa741001a83d3f3297bf01a1/models/user.js#L28

findOneByEmail https://github.com/filipedeschamps/tabnews.com.br/blob/0bbb0f655dc88847fa741001a83d3f3297bf01a1/models/user.js#L66

findOneById https://github.com/filipedeschamps/tabnews.com.br/blob/0bbb0f655dc88847fa741001a83d3f3297bf01a1/models/user.js#L105

Outros métodos

Destaco estes 3 ali de cima, pois tem outros, mas não acho que seja importante mexer nisso agora:

removeFeatures https://github.com/filipedeschamps/tabnews.com.br/blob/0bbb0f655dc88847fa741001a83d3f3297bf01a1/models/user.js#L505

addFeatures https://github.com/filipedeschamps/tabnews.com.br/blob/0bbb0f655dc88847fa741001a83d3f3297bf01a1/models/user.js#L566

filipedeschamps avatar Dec 20 '22 23:12 filipedeschamps

Tem alguem fazendo isso ou posso pegar?

gSarciotto avatar Dec 21 '22 19:12 gSarciotto

Tem alguem fazendo isso ou posso pegar?

Oi @gSarciotto, mesmo se já tiver alguém implementando, nada impede de você também fazer. 👍

Quando temos PRs parecidos abertos, podemos comparar as soluções e até mesmo aproveitar parcialmente cada uma, se for necessário.

aprendendofelipe avatar Dec 21 '22 20:12 aprendendofelipe

Atividade concluída nos PRs #1396 e #1439

aprendendofelipe avatar Jun 08 '23 12:06 aprendendofelipe