Os testes de desempenho são mecanismos extremamente interessantes para uma análise da escalabilidade de um sistema, entretanto em casos mais complexos somente a realização de testes não é o suficiente, para esses casos é necessário realizar uma modelagem de desempenho do sistema computacional como todo. Modelar o desempenho de um sistema não é simples, mas também [...]
Continuar Lendo...7. Outubro 2010
Um desafio para o mercado de software Para milhares de empresas, o seu crescimento no mercado pode ser medido através do aumento da quantidade de usuários de seus sistemas web. Como essas empresas podem ter garantias que os seus sistemas suportam esse aumento significativo de usuários tão desejado por elas? Imaginem o caso de uma [...]
Continuar Lendo...6. Outubro 2010
Programação imperativa, funcional, orientada a eventos e atores. Muitos programadores não conhecem todos estes termos, mas hoje falaremos de um em especial: a programação funcional e o que ela tem a ver com escalabilidade. Comecemos pela definição de programação funcional: In computer science, functional programming is a programming paradigm that treats computation as the evaluation [...]
Continuar Lendo...4. Outubro 2010
No Google 80% do processamento é feito com MapReduce, isto inclui indexar páginas web, os algoritmos de cluster que agrupam as noticias no Google News, gerar relatórios das keywords mais populares ( Google Trends ). Mesmo as traduções automáticas e os processamentos de linguagem natural são realizados utilizando o MapReduce. Os outros 20% do processamento [...]
Continuar Lendo...30. Setembro 2010
Simon Frost o arquiteto chefe do iPlayer da BBC publicou recentemente no blog oficial da BBC online algumas lições aprendidas no processo de escalar uma aplicação para milhões de usuários. Estudar cases de escalabilidade é uma das melhores maneiras de aprender a resolver os problemas de escala que suas aplicações podem ter. O site iPlayer [...]
Continuar Lendo...21. Setembro 2010
Aqui no Escalabilidade falamos bastante de sistemas distribuídos por sua importância nos problemas de escalabilidade e processamento de dados em larga escala. É importante lembrar que escalar um sistema não necessariamente envolve criar um sistema distribuído horizontalmente entre múltiplas maquinas. Mas quando devemos escalar horizontalmente e quando devemos escalar verticalmente ? Primeiramente vamos a algumas [...]
Continuar Lendo...
2. Dezembro 2010
3 Comentários