TecnologiaCloud ComputingRuby, a linguagem do mundo Cloud

Ruby, a linguagem do mundo Cloud

-

Publicidade
Ruby, a linguagem do mundo CloudRuby on Rails é definitivamente o primeiro motivo para qualquer novo programador se interessar por Ruby. É um framework muito estável que conquistou uma posição de destaque. Atualmente criou-se um ecossistema que expandiu além do framework e gerou uma coleção de bibliotecas, ferramentas e serviços. O pacote básico oferece muito: desde um excelente suporte a MVC-Web. O sistema de roteamento ainda é excepcional mesmo comparado a outros frameworks. Apesar de controverso o ORM ActiveRecord evoluiu e se tornou muito estável. Novos patterns de organização como PresentersService Objects,Concerns surgiram para facilitar aplicativos maiores. Pacotes como MinitestRSpecFactory GirlFabricator e outros continuam a tornar os testes mais e mais completos. Também controverso o Asset Pipeline faz o que todo framework deveria fazer como básico: minificar e otimizar assets.O mundo front-end evoluiu além do JQuery. É trivial integrar os novos frameworks como BackboneAngularEmber. O mundo de CSS também evoluiu além do Sass, temos facilmente integrado Twitter Bootstrap, Foundation e outros. E o mundo de templates evoluiu além do ERB e HAML com exemplos como Slim. Enfim, existem opções simples para todos os gostos.

E para facilitar a vida durante o desenvolvimento temos servicos como CodeClimate para análise estática de código, Travis-CI para integração contínua. New Relic continua sendo uma opções completa e robusta de monitoramento em produção e melhoria contínua.E se quisermos explorar além do básico ainda temos o mundo de NoSQL, Mongoid é a melhor opção para MongoDB. O melhor sistema de execução de tarefas assíncronas é o Sidekiq, que usa Redis. Integrar cache com Memcached chega a ser trivial. E tudo isso numa arquitetura que continua se mantendo “shared nothing”, garantindo nossa opções de escalabilidade horizontal.

E se o Ruby MRI não é mais suficiente, sempre temos a opção de usar JRuby e ganhar alta performance com poucas (ou às vezes nenhuma) mudança de código. E com isso temos diversas opções de servidores de aplicação com UnicornPassenger e Puma.

Mais do que isso, depois que o tema “assíncrono” ficou na moda por causa de node.js, surgiram diversos serviços que solucionam todos os use cases. Não há mais necessidade de se preocupar com comunicação assíncrona com serviços como PusherPubNub e diversos outros.

O stack está bastante completo, é uma combinação muito difícil de equiparar. E além disso o mundo Ruby está evoluindo para outras direções. Uma constatação importante: hoje o mundo está se movendo para a virtualização de servidores e automação de infraestrutura. O primeiro grande exemplo e ainda a melhor opção da categoria que ficou conhecida como IaaS (Infrastructure as a Service) é Amazon Web Services (AWS) EC2. Temos outros como Rackspace Cloud, Digital Ocean e no mundo não-open source temos Microsoft Azure.

Mas nós do mundo Ruby usamos uma categoria acima faz alguns anos: o chamado PaaS (Platform as a Service). A opção mais conhecida é sem dúvida o Heroku onde com um mero “git push” fazemos deployment em quantos servidores quisermos. Além dele ainda temos o Engine Yard Cloud. Agora outra coisa interessante, dentre as maiores opções temos ainda os recém-chegados RedHat OpenShiftVMWare Cloud Foundry, até certo ponto também o Microsoft Azure, a própria Amazon com o AWS Elastic BeanstalkAWS Opsworks, e o Google com uma opção mais restrita que é o Google App Engine. Existem outros mas vamos ficar com esses mais conhecidos, 7 opções e delas 5 utilizam ferramental e tecnologias Ruby.

O mundo Ruby está evoluindo isso faz algum tempo, começando com ferramentas de automação de infraestrutura que tentam tratar o mundo de hardware como se fosse software e nessa categoria temos PuppetChef. Sobre esse ferramental, novas tecnologias como Bosh foram criadas. Essas tecnologias permitiram Heroku, Engine Yard, OpenShift, Cloud Foundry, e o próprio AWS OpsWorks (que é uma interface Web sobre Chef).

Essa evolução no mundo de ferramental de Cloud retorna ao mundo de desenvolvimento mesmo no desktop com ferramentas como Vagrant, que automatiza a montagem do seu ambiente de desenvolvimento. Integrado com ferramentas como o Chef e facilitadores como Berkshelf, temos uma enorme biblioteca para montar ambiente complicados, podemos inclusive configurar rapidamente um ambiente inteiro Cloud Foundry sobre Vagrant.

O que quero dizer com isso? O mundo Cloud não está chegando: ele já está aqui. O ecossistema Ruby colaborou muito no bootstrap do novo mundo Front-end, influenciando práticas, tecnologias e agora faz o mesmo no mundo Back-end, diretamente no motor do Cloud. Além disso o ecossistema permeia hoje todas as etapas de uma solução completa: front-end, back-end, infraestrutura, além de Java, poucos ecossistemas são tão verticais.

Dicas? Comece a estudar ecossistemas como Chef e evoluções de ferramentas como Vagrant. Saber Rails, saber fazer testes automatizados, saber fazer front-end com pipeline automatizado, já pode ser considerado o básico.

[Crédito da Imagem: Cloud – ShutterStock]

Fabio Akita
Codeminer 42 co-founder Brazilian Ruby Activist RubyConf Brazil Program Chairman Software Craftsmanship Evangelist Tech Speaker in many conferencesLinkedIn: br.linkedin.com/in/akitaonrails

2 COMMENTS

  1. Gostei do artigo e da parte que me toca, as empresas de PaaS.
    Minha contribuição é informar a existência da Getup Cloud, uma PaaS brasileira baseada em OpenShift.
    Ainda pequena, mas sua relevância está em termos uma empresa nacional entrando neste mercado e sendo uma opção por essas bandas, afinal todas as citadas estão lá fora.
    Abraço

Latest news

Estratégia de comunicação para TI: 5 erros para NÃO cometer

Existem 5 erros comuns que você não pode cometer mais na comunicação da sua empresa. Se você é um MSP que busca o sucesso, acesse e confira!

Inovação e Liderança: Uma Jornada de Transformação Digital

Inovação e Liderança: Uma Jornada de Transformação DigitalNo ritmo acelerado do mundo de hoje, a combinação de inovação e empreendedorismo é fundamental para profissionais que desejam gerar impacto nas organizações. Ao longo da minha carreira, passei de funções técnicas para posições de liderança, e, nesse caminho, aprendi como a tecnologia pode ser uma força transformadora nos negócios.

IDCA – A Força Motriz por Trás da Excelência em Infraestrutura Digital

Em um mundo cada vez mais digital, a Infraestrutura Digital robusta e confiável se tornou a espinha dorsal da sociedade moderna. É nesse cenário crucial que o IDCA (International Data Center Authority) se destaca como líder mundial, moldando o presente e o futuro da indústria. Mas o que torna o IDCA tão especial?

Gerenciador de senhas: saiba como fortalecer a segurança de TI da sua empresa em 2024

Um gerenciador de senhas é uma ferramenta projetada para armazenar, organizar e gerenciar senhas de forma segura. Mas podemos mostrar que ele vai muito além disso!
Publicidade

Software para MSPs: indo além do preço ao procurar pelas ferramentas certas

Confira 5 dicas essenciais para escolher as melhores plataformas para compor o monitoramento e segurança da infraestrutura de TI dos seus clientes

Rápido, seguro e nativo: Chrome chega ao Windows no Snapdragon

"Projetamos o navegador Chrome para ser rápido, seguro e fácil de usar em desktops e dispositivos móveis, e estamos sempre procurando maneiras de levar essa experiência a mais pessoas", disse Hiroshi Lockheimer, Senior Vice President, Google.

Must read

Estratégia de comunicação para TI: 5 erros para NÃO cometer

Existem 5 erros comuns que você não pode cometer mais na comunicação da sua empresa. Se você é um MSP que busca o sucesso, acesse e confira!

Inovação e Liderança: Uma Jornada de Transformação Digital

Inovação e Liderança: Uma Jornada de Transformação DigitalNo ritmo acelerado do mundo de hoje, a combinação de inovação e empreendedorismo é fundamental para profissionais que desejam gerar impacto nas organizações. Ao longo da minha carreira, passei de funções técnicas para posições de liderança, e, nesse caminho, aprendi como a tecnologia pode ser uma força transformadora nos negócios.
- Advertisement -

You might also likeRELATED
Recommended to you