InfoQ

Notícias

GemStone Revela Planos para a MagLev Ruby VM na RailsConf 2008

Postado por Nick Laiacona , traduzido por Ricardo Yasuda em 30 Out 2008 07:49 AM

Comunidade
Ruby
Tópicos
Ruby on Rails,
Linguagem
Tags
ACID,
GemStone,
MagLev

Na sexta-feira da RailsConf, Avi Bryant e Bob Walker da GemStone revelaram os planos para o projeto MagLev. MagLev vai rodar Ruby on Rails dentro da tecnologia de objetos distribuídos da GemStone. A MagLev VM, embora ainda parcialmente implementada, até agora supera em performance o MRI 1.8.

MagLev é uma máquina virtual Ruby baseada na GemStone S64 VM, que roda Smalltalk. A máquina virtual Smalltalk foi estendida com byte codes especiais para torná-la compatível com Ruby. A máquina virtual Smalltalk da GemStone é usada há mais de 20 anos em setores como mercados financeiros em tempo real e a indústria mundial de remessas. É um repositório de dados maduro, rápido, estável, distribuído e transacional que pode armazenar mais de um trilhão de objetos ou 17PB (Petabytes) de informação. O objetivo do projeto MagLev é trazer esta tecnologia de objetos distribuídos para o mundo Ruby on Rails.

Avi Bryant, membro do core team do Dabble DB e SeaSide, demonstrou a tecnologia de objetos distribuídos do MagLev rodando Ruby. Usando uma sessão irb em uma máquina virtual Ruby, ele foi capaz de compartilhar dados de objeto com uma sessão irb em outra máquina virtual simplesmente instanciando objetos globais. Avi então demonstrou as palavras-chave BEGIN, COMMIT e ABORT que proporcionam uma estratégia de concorrência totalmente transacional e compatível com ACID. Ele também foi capaz de acessar dados de armazenamento persistentes usando o mesmo mecanismo. Essencialmente, MagLev estava fazendo o papel não somente da máquina virtual como também das camadas de cache e de armazenamento persistente.

Bob Walker, que é o gerente de projetos do projeto MagLev na GemStone, falou depois sobre o progresso deste esforço. Atualmente, o time de Bob Walker consegue rodar o MagLev significantemente mais rápido que o MRI 1.8 em cerca de 36 dos Ruby Shootout Benchmarks Eles planejam usar o Ruby Specs do projeto Rubinius para verificar a compatibilidade. Eles estão no terceiro mês de implantação. Partes do projeto serão open source, mas o core VM, que é escrito em C, vai provavelmente permanecer fechado.

A GemStone está ainda pensando em um modelo de preços para o MagLev. Bob Walker afirmou que haverá uma versão grátis disponível. A gerência da GemStone especula que um modelo de preços de dois ou três níveis é possível, definidos por tamanho de armazenamento ou número de transações. A GemStone colocou no ar uma página do projeto onde eles prometem que informações atualizadas sobre o projeto estarão disponíveis em breve.

Leia a entrevista exclusiva com Bob Walker, da GemStone, sobre MagLev na InfoQ..

 

Conteúdo Educacional

13 Razões para Programadores Java aprenderem Flex e BlazeDS

Treze razões para que programadores java aprendam Flex e BlazDS. Ele discute sobre o porquê que Flex e BlazeDS é uma das melhores opções para desenvolver aplicações ricas de internet.

Ruby in Practice com Jeremy McAnally

Rob Bazinet e Matthew Bass, ambos da InfoQ, tiveram a oportunidade de conversar com Jeremy McAnally, sobre o livro "Ruby in Practice" no qual foi co autor junto à Assaf Arkin.

Esclarecendo os Equívocos Mais Comuns Sobre Refatoração

Danijel Arsenovski tenta esclarecer alguns mitos sobre refatoração e como isso se aplica para desenvolvedores .NET

As 10 Maiores Mudanças no Flex 4

Em maio, Adobe lançou a primeira versão beta do Flex 4, codinome Gumbo. A lista a seguir proporciona uma visão geral de alto nível dos itens que foram modificados na última versão do framework RIA.

Conversa sobre RubyMine e JetBrains

Um dos anúncios mais interessantes recentemente feito à comunidade Ruby foi o lançamento da IDE JetBrains RubyMine para aplicações Ruby e Ruby on Rails.

Introdução à Data Services

Data Services são serviços de software que encapsulam operações das entidades chave relevantes para a empresa.

Esquemas para Web Services – Parte 1: Tipos de dados básicos.

O uso do XML traz consigo desvantagens, como problemas em potencial com desempenho, mas também oferecem um nível de abstração que permite diminuir o acoplamento entre as partes envolvidas na troca.

Revisão do livro: Clean Code: A Handbook of Agile Software Craftsmanship

Como programadores, a nossa primeira prioridade é criar código que funciona. Infelizmente, código que simplesmente “funciona” não é suficiente.