Skip to content

Startemy-Corporation/live-imersao-20-nextjs-multi-tenancy

 
 

Repository files navigation

Live sobre Multi-tenancy com Next.js

Eu acrescentei pós live o uso do tenant id para fazer as chamadas para permitir o cache de cada tenant.

Um detalhe importante sobre o cache do Next.js ao usar headers personalizados, é que o cache será feito por cada token, ou seja, mesmo que usuários diferentes do mesmo tenant loguem, não será feito um cache compartilhado, será feito um cache por usuário, exemplo:

 await fetch(`http://localhost:8000/projects/${projectId}/tasks`, {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      Authorization: `Bearer ${session.token}`,
    },
    body: JSON.stringify({ title, description }),
  });

O uso de um header personalizado que será diferente para cada usuário, faz com que o cache seja feito por usuário, e não por tenant.

Para realizar um cache onde temos headers personalizados, podemos usar o unstable_cache, como acrescentei no código. Na versão 15, temos o use cache, mas ele ainda não está estável para uso.

Assim, teremos um cache compartilhado por tenant e não por usuário.

About

project multitenant

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 75.1%
  • JavaScript 24.5%
  • CSS 0.4%