2
Apresentação do Kbase Framework André Luis - [email protected] Kbase Framework é um conjunto de componentes para o desenvolvimento de complexas aplicações Web com foco na escalabilidade e desempenho. Ele foi desenvolvido com base no Kohana Framework. Novos Componentes Foram inclusos novas bibliotecas, módulos e diversos novos recursos, além de melhorias e correções para os componentes já existentes no Kohana. • Frontend e Ajax - Novos controladores para páginas estáticas e requisições Ajax. Além disso, foi incluído um flexível controle de versão para componentes como CSS e Javascript. • Html Filter - Biblioteca complexa para filtrar tags HTML utilizando um sistema simples para configuração de filtros de acordo com as necessidades de cada projeto. • Mailer - Biblioteca para envio de emails com suporte a HTML e anexos utilizando poucas linhas de código. É possível usar uma camada View com HTML como modelo para o email por exemplo. • Carrinho - Módulo utilizado para gerar carrinho de compras. Possui suporte a aplicações específicas como por exemplo gerar um carrinho de compras no formato de Gateways de pagamento como Pagseguro, Paypal ou um carrinho padrão de loja virtual. • Payment - Módulo de pagamento padrão do Kohana. Foi adicionado suporte ao novo módulo de Carrinho e para os principais Gateways de pagamento nacionais como Pagseguro, Pagamento Digital e Mercado Pago. • Autenticação, Autorização e ACL - Módulo para criação de grupos de usuários com controle de privilégios por papéis, além de suporte para autenticação e autorização de acordo com as necessidades de cada projeto. Eventos de inicialização No Kbase Framework a etapa de inicialização do sistema é mais rápida e voltada para ambientes de produção que necessitam de alto desempenho e disponibilidade. Na etapa de inicialização do Kohana até a etapa da execução da aplicação do usuário, os eventos do sistema são executados levando em conta as configurações carregadas do sistema ou específicas do projeto. Em um ambiente de produção, muitas dessas etapas são desnecessárias como por exemplo a verificação de compatibilidade do servidor, filtro de caracteres para variáveis globais do servidor, entre outras etapas.

Apresentação do Kbase Framework

Embed Size (px)

Citation preview

Page 1: Apresentação do Kbase Framework

Apresentação do Kbase Framework

André Luis - [email protected]

Kbase Framework é um conjunto de componentes para o desenvolvimento de complexas aplicações Web com foco na escalabilidade e desempenho. Ele foi desenvolvido com base no Kohana Framework.

Novos Componentes

Foram inclusos novas bibliotecas, módulos e diversos novos recursos, além de melhorias e correções para os componentes já existentes no Kohana.

• Frontend e Ajax - Novos controladores para páginas estáticas e requisições Ajax. Além disso, foi incluído um flexível controle de versão para componentes como CSS e Javascript.

• Html Filter - Biblioteca complexa para filtrar tags HTML utilizando um sistema simples para configuração de filtros de acordo com as necessidades de cada projeto.

• Mailer - Biblioteca para envio de emails com suporte a HTML e anexos utilizando poucas linhas de código. É possível usar uma camada View com HTML como modelo para o email por exemplo.

• Carrinho - Módulo utilizado para gerar carrinho de compras. Possui suporte a aplicações específicas como por exemplo gerar um carrinho de compras no formato de Gateways de pagamento como Pagseguro, Paypal ou um carrinho padrão de loja virtual.

• Payment - Módulo de pagamento padrão do Kohana. Foi adicionado suporte ao novo módulo de Carrinho e para os principais Gateways de pagamento nacionais como Pagseguro, Pagamento Digital e Mercado Pago.

• Autenticação, Autorização e ACL - Módulo para criação de grupos de usuários com controle de privilégios por papéis, além de suporte para autenticação e autorização de acordo com as necessidades de cada projeto.

Eventos de inicialização

No Kbase Framework a etapa de inicialização do sistema é mais rápida e voltada para ambientes de produção que necessitam de alto desempenho e disponibilidade.

Na etapa de inicialização do Kohana até a etapa da execução da aplicação do usuário, os eventos do sistema são executados levando em conta as configurações carregadas do sistema ou específicas do projeto. Em um ambiente de produção, muitas dessas etapas são desnecessárias como por exemplo a verificação de compatibilidade do servidor, filtro de caracteres para variáveis globais do servidor, entre outras etapas.

Page 2: Apresentação do Kbase Framework

Sistema de arquivos em cascata

Foi desenvolvido um novo sistema de Cache interno da localização de arquivos inclusos dinãmicamente para altíssimo desempenho em ambientes de produção com suporte nativo para APC e Memcached.

O Kohana utiliza um sistema de arquivos em cascata para uma melhor organização dos componentes. Cada componente precisa estar corretamente localizado em uma pasta específica para ser inicializado posteriormente. Para essa inicialização dinâmica, o sistema busca o arquivo primeiramente na pasta application, em seguida nos diretórios da pasta modules e por último na pasta system. Para visualizar essa etapa de busca, considere o exemplo da seguinte imagem:

Na aplicação exemplo, para inicializar a biblioteca View é necessário verificar a existência em três diretórios do arquivo View.php antes de incluir o arquivo localizado na pasta system. Essa busca em diretórios para localização de arquivos em cada requisição pode afetar o desempenho geral de todo o servidor devido a limitações de disco. Para solucionar esse problema, os desenvolvedores do Kohana criaram um método para Cache da localização dos arquivos que foram incluídos, evitando a busca dos arquivos.

A desvantagem no Cache interno do Kohana é que ele utiliza apenas o sistema de arquivos como base para salvar os dados, não oferecendo suporte para métodos de alta performance como Cache em memória utilizando Memcache e APC. Além disso, o arquivo de Cache é lido e depois salvo novamente em cada requisição, impossibilitando um ganho de performance através da leitura do arquivo utilizando o Cache de arquivos do sistema operacional.