Nesta sexta-feira (10), a BitTorrent Inc. disponibilizou a primeira versão beta para Windows do Project Maelstrom (nome provisório), navegador que promete se destacar dos demais por utilizar uma arquitetura peer-to-peer (P2P).

O browser foi revelado no final de 2014. Uma versão alpha foi liberada dias após o anúncio, mas somente para um grupo restrito de usuários – na maioria dos casos, desenvolvedores. Com a chegada da fase beta, qualquer interessado pode baixar o Maelstrom.

A base do navegador é o Chromium, o que significa que o Maelstrom é capaz de lidar bem com as necessidades de navegação atuais: renderizar páginas em HTML5, executar código em JavaScript, permitir várias abas abertas simultaneamente, entre outros.

O uso do protocolo P2P também serve para acesso a sites, só que, à medida do possível, de modo descentralizado. Explico: quando você entra em determinada página, o Maelstrom a armazena e envia partes dela para outros usuários que, por sua vez, repetem o processo.

Project Maelstrom

Trata-se de um modo de funcionamento que lembra o BitTorrent em si: em vez de servidores centralizando a distribuição de dados, essa tarefa é feita entre todos os nós que participam do compartilhamento. Cada computador ou dispositivo móvel é, portanto, cliente e servidor ao mesmo.

A BitTorrent Inc. acredita que, com esse método, o Maelstrom agilizará o carregamento de páginas. Mas o principal benefício é a não dependência de servidores: se um provedor tiver que bloquear certo site, não conseguirá fazê-lo por conta da arquitetura distribuída – é praticamente impossível identificar e bloquear todos os nós. Imagine a utilidade que um navegador assim terá em países que censuram o acesso à internet?

Para fazer download, basta acessar o endereço oficial do Maelstrom. Mas não vá ficar decepcionado: o navegador acaba de chegar à fase beta, assim, ainda é bastante limitado (e deve demorar muito para cumprir tudo o que promete, se é que a sua proposta vingará).

Há pouquíssimas páginas P2P disponíveis, por exemplo, todas criadas pelos desenvolvedores da BitTorrent. Mas ao menos já dá para ter noção sobre como o modo funciona: ao fazer um acesso, o navegador exibe uma animação que mostra a busca por nós que compartilham a página. É bem interessante.

Vale frisar que o Project Maelstrom também chegará a outras plataformas. A versão para OS X será a próxima a entrar em beta.

Comentários

Envie uma pergunta

Os mais notáveis

Comentários com a maior pontuação

leandrw
É o conceito de Sovereign Computing (computação soberana) colocado em prática. É excelente! https://prezi.com/egm4kn30d5ni/sovereign-computing/ http://sneer.me/project.html http://www.grokpodcast.com/2012/06/15/episodio-70-computacao-soberana-parte-1-de-3/
Rubios Rousseff

Nem sempre, algumas modificações do Chromium diminui o consumo de Ram, exemplo o opera.

RUBIOS
Nem sempre, algumas modificações do Chromium diminui o consumo de Ram, exemplo o opera.
ayrton
realmente pelo alto upload seria difícil usar em redes móveis de operadoras, então o uso se limitaria a computadores e dispositivos móveis com conexão wifi, sem usar o plano de dados
ayrton
Complicação 1: scripts server side Pela lógica apenas a parte estática seria compartilhada (como já citado), ou, talvez, muito talvez, haja um modo de separar a parte do php que pode ser processada em qualquer servidor, como uma função simples que não necessite de conexão com o banco de dados, e em cada cliente pode haver um mini servidor php rodando, vamos chamar essa parte que não precisa de conexão com db de "script1" e a parte que precisa de "script2". Então digamos que eu faça a requisição de uma página, a parte estática é carregada no estilo torrent, e a parte do "script1" é rodada apenas em um dos servidores (baseado em um calculo de qual servidor teria um conexão mais rápida, qual servidor está ocioso, etc), e a parte do "script2" seria carregada em um servidor principal centralizado, não tem jeito, mas esse "script2" seria carregado apenas se necessário, pois nem toda pagina php precisa de conexão com banco de dados.(lembrando que acabei de pensar nisso, não quer dizer que realmente funcione assim, é apenas uma hipótese) Complicação 2: atualização Mais uma vez, para atualizar, é inevitavel um servidor descentralizado, mas uma maneira razoavelmente facil e eficaz seria se a parte estática e o "script1" tivessem uma informação no cabeçalho de "versão", e quando uma requisição é feita, é sempre priorizada a versão superior, assim digamos que tenha 1000 servidores disponiveis, mas apenas 1 com uma versão superior, a página inteira seria baixada desse 1. E digamos que eu estou hospedando determinada página, e esta página é atualizada no servidor centralizado. Quando meu sistema está ocioso, o navegador em segundo plano conecta com esse servidor e verifica se há uma versão mais atual, e atualiza automaticamente, sem eu precisar visitar novamente a página para atualizar no meu computador. Dessa forma poderia demorar sim para uma atualização se propagar em toda a rede, mas basta apenas uma máquina atualizada para ter efeito, porém, uma atualização comprometeria a velocidade, sendo que no começo haveriam poucas máquinas disponíveis rodando uma versão atual, mas com esse esquema de verificar se há alguma atualização em segundo plano e baixar automaticamente ficaria muito mais rápido, questão de uma hora (dependendo da popularidade do seu site) já teria uma disponibilidade razoavel, mas caso nenhuma versão mais atual esteja disponível, vai a versão velha mesmo, melhor que nada (ou dependendo de como você pensa, por segurança, pode desativar esse recurso, no caso de alguma brecha de segurança que a atualização precisa ser propagada) Mas seria necessário bom senso do responsável pelo site, para não "faz 10 linhas de código / atualiza / faz mais 5 linhas / atualiza ....", pois isso comprometeria a disponibilidade do site, sendo que haveriam sempre poucas máquinas atualizadas devido a atualização constante. Seria melhor fazer uma modificação significativa e só então atualizar. Outra possibilidade é quebrar a parte estática e o "script1" em várias partes, assim se atualiza apenas a parte necessária, o que deixaria mais veloz, e por exemplo, no caso de 1000 máquinas apenas uma ter a versão atualizada, apenas a parte do código que foi atualizada precisa ser baixada dessa máquina, o resto que continua igual, ou seja, as outras partes quebradas do código, pode ser baixada de qualquer uma das 999 máquinas restantes, por mais que não esteja atualizada, mas essa parte não sofreu alteração. (imagine você separar uma página em várias, uma o cabeçalho, outra o rodapé, outra o conteúde de determinada div, etc, dá trabalho mas não seria impossível) Conclusão: Teriamos que programar voltado a este tipo de navegador (provavelmente se essa idéia der certo surgirão mais e mais navegadores diferentes com o mesmo princípio), teremos que aprender um novo estilo de programar, voltado para a distribuição descentralizada, separando o código "script2" que necessariamente tem de ser executado no servidor central (com conexão com banco de dados por exemplo), separando a parte estática e a parte "script1", fora que essas duas últimas teriam que ser quebradas em várias partes para melhorar a atualização, atualizando apenas a parte necessária. Um servidor central continua sendo necessário para o bom funcionamento, mas funções básicas ainda podem ser executadas mesmo com ele desligado, como uma parte que funcione offline. [ LEMBRANDO QUE SÃO APENAS HIPÓTESES ]
Fabrício Cunha

Já dá pra imaginar o estrago que deve causar no consumo de RAM... Prefiro usar browser mais leves como o Comodo ou o PSafe.

Baidu feat MC Brinquedo

A base do navegador é o Chromium, o que significa que o Maelstrom é capaz de sugar toda a RAM do seu pc em poucos minutos

Hao123
A base do navegador é o Chromium, o que significa que o Maelstrom é capaz de sugar toda a RAM do seu pc em poucos minutos
Tales Cembraneli Dantas
Ele poderia compartilhar apenas a parte estática do site (todos os sites possuem, uns mais outros menos) e deixar a parte server side pro servidor (não tem outro jeito). Minha dúvida é sobre as atualizações dos sites, como ficam? outra dúvida é se vai valer a pena, (principalmente em plataformas movéis), por causa do uso da rede constante para upar as páginas para outros usuários.
Keaton
Pois é, mas nem toda empresa é tão liberal. (Afinal, eles pagam para trabalhar não para usar a internet. lol)
Danton

Sites PHP e mySQL não entram nessa, certo? Pois PHP tem a justa função de ser um código "server side", código fechado somente para os desenvolvedores e o servidor, banco de dados mySQL é "server side" também, senão todos saberiam sua senha do facebook... Então, quantos sites seriam capazes de rodar? Somentes sites estáticos? Hoje em dia na internet a maioria dos websites são dinâmicos (CMS, páginas de usuários, conteúdo com sugestão através de big data... Que poderiam ser resolvidos por iframes, porém é de uso depreciado...) devido a volátilidade da informação. Como será as atualizações de páginas? Complicações são grandes, porém uma ideia gênial...

Dan
Sites PHP e mySQL não entram nessa, certo? Pois PHP tem a justa função de ser um código "server side", código fechado somente para os desenvolvedores e o servidor, banco de dados mySQL é "server side" também, senão todos saberiam sua senha do facebook... Então, quantos sites seriam capazes de rodar? Somentes sites estáticos? Hoje em dia na internet a maioria dos websites são dinâmicos (CMS, páginas de usuários, conteúdo com sugestão através de big data... Que poderiam ser resolvidos por iframes, porém é de uso depreciado...) devido a volátilidade da informação. Como será as atualizações de páginas? Complicações são grandes, porém uma ideia gênial...
Alexandre Santos
Acho uma ideia bem legal. Vai ser difícil tirarem sites do ar agora, né, mas será que vinga?
Erique Souza
Ajudando a compartilhar a palavra do Maelstrom https://www.facebook.com/photo.php?fbid=759388070840562&set=a.462561777189861.1073741827.100003081295105&type=1
William Lima Crisostomo
Pelo o que me pareceu depende do site disponibilizar um torrent... Acho que é um pouco complicado isso. Mas veremos.
Exibir mais comentários