Executando verificação de segurança...
1

Mas, a ideia de o monólito escalar tudo é que a partir do momento em que o software não pode ser mais otimizado, talvez onde a arquitetura não ajude e você comece a ter que particionar a aplicação em serviços menores (indo para um monólito modular).

Isso é crença, tá cheio de sistemas que escalam muito (entre os mais usados do mundo) e não precisam particionar nada.

O Twitter não tinha aquela como única opção, eles usaram aquela e divulgaram, tinham diversas outras, até continuar com o que tinham com alguma alteração. De qualquer forma o que eles mudaram nada tem a ver com o que está sendo falado aqui. Isso é uma divagação que não contribui já falei mais do que deveria sobre isso. A Wikipedia é feito com um PHP porco sem arquitetura pensada, é monólito e está entre os sites mais acessados do mundo, e escala.

Toda essa conversa sobre o meio termo eu já falei antes, mas parece que foi ignorado, não posso fazer nada além disso. Reforço a frase que terá o pior dos dois mundos, não é uma média matemática.

A falta de conhecimento é o que leva as pessoas a tomar decisões erradas.

Carregando publicação patrocinada...
1

Isso é crença, tá cheio de sistemas que escalam muito (entre os mais usados do mundo) e não precisam particionar nada.

Concordo. Qualquer sistema baseado em leitura majoritariamente estática como a própria Wikipedia tende a escalar com facilidade, principalmente quando há camadas pesadas de cache e uso intensivo de HTML pré-renderizado.

Mas usar isso como contraexemplo ao caso do Twitter é ignorar completamente o tipo de carga que eles passaram a enfrentar.

A reestruturação da plataforma não foi uma decisão por hype ou modinha, foi uma imposição técnica brutal, causada pela transição de timeline sequencial para um sistema de recomendação em tempo real com milhões de conexões simultâneas.

Ruby não estava nem perto de dar conta disso, nem com mágica.

Citando a ti, vale a pena entender um pouco mais:

Toda essa conversa sobre o meio termo eu já falei antes, mas parece que foi ignorado, não posso fazer nada além disso. Reforço a frase que terá o pior dos dois mundos, não é uma média matemática.

Nada é média matemática, o que tentei passar foi e repito Se e somente se o estudo de caso apontar a necessidade clara de desacoplamento, e as abordagens mais simples forem insuficientes, aí sim faz sentido particionar — mas não em microserviços prematuros..

A falta de conhecimento é o que leva as pessoas a tomar decisões erradas.

Erro não é falta de conhecimento, é o processo de obtê-lo. Quem nunca iterou errado, nunca operou fora da zona de conforto


No limiar dos ânimos não estou aqui para competir experiência contigo, só mostrar que ao invés de tentar fazer isso dessa forma, pode - se tentar dessa outra em uma POC, se der certo adota, se não volte ao convencional.

No mínimo vai agregar para positivo ou negativo só o tempo dirá

1

Eu usei a WP pra mostrar que uma linguagem lenta só é um problema por gerar mais gastos, não porque não escala, a linguagem nunca impede nada de escalar, isso é crença. Se vai refazer toda a arquitetura até faz sentido usar uma tecnologia melhor, e não precisaria ser Scala, na verdade acho que já se arrependeram de ter escolhido ela, apesar de não ter sido um norme problema. https://www.reddit.com/r/facepalm/comments/yvhjzj/elon_musk_turned_off_microservices_on_twitter/

O Instagram deve ser a mesma coisa, né? Eles não precisaram reescrever nada, continuaram com o monólito em Java, Python e JS.