Marcio Trindade

Junho de 2011

Settingslogic

A gem settingslogic é uma forma simples de consumir arquivos de configuração em uma applicação rails. Já faz alguns anos que utilizo nos meu projetos e recomendo pra quem ainda não a usa.

Esses dias trabalhei em um projeto e vi o pessoal usando uma constante CONFIG que carrega um arquivo config.yml dentro do environment.rb ou em um initializer qualquer. Basicamente o settingslogic tem a mesma funcionalidade a diferença é que em vez de ficar criando constantes você cria um model e este model responde como método, através de method_missing pra cada item do yml. Veja abaixo dois exemplos pra entender esta diferença.


Rails carregando 36% mais rápido com Ruby 1.9.3

O Xavier Shay públicou a alguns dias um artigo mostrando um patch que ele fez alterando mais de 3000 linhas de código e 20 dependências do ruby 1.9.2 e conseguiu fazer o load do rails ficar aproximadamente 60% mais rápido. O que todos achavam estranho é o patch não ser aceito pelo core team, mas a de se entender que alterar tanta coisa como o que o Xavier fez é algo extremamente complicado. Porém 4 dias após este artigo o Masaya Tarui do core team do ruby fez um commit de 26 linhas na class load.c (o loader em c do ruby) e obteve uma performance até melhor do que o código do Xavier chegando a um ganho de até 64% em relação ao ruby 1.9.2.

Se tiver mais interesse neste assunto o Ruby Inside publicou um artigo contando toda esta história.