apresentação na php conference brasil 2012

21
Folha de S.Paulo Ambiente, PHP e Paywall #phpconference

Upload: ariovaldo-carmona

Post on 04-Jul-2015

455 views

Category:

Technology


0 download

DESCRIPTION

Pequena apresentação para PHP Conference Brasil 2012. Expondo principais pontos da direção técnica do núcleo de desenvolvimento Folha na utilização de PHP.

TRANSCRIPT

Page 1: Apresentação na PHP Conference Brasil 2012

Folha de S.PauloAmbiente, PHP e Paywall

#phpconference

Page 2: Apresentação na PHP Conference Brasil 2012

Eu

• Coordenador do núcleo de desenvolvimento;

• Na Folha desde 2010 e mais alguns anos;

• Trabalho e gosto de PHP;

• @aricarmona.

Page 3: Apresentação na PHP Conference Brasil 2012

Folha e Equipe

Page 4: Apresentação na PHP Conference Brasil 2012

Folha• Diversidade de projetos;

• Desenvolvimento interno;

• Estruturando equipe;

• Definindo ambiente;

• Foco Web (LAMP), com algumas variações;

• Contratando!

Page 5: Apresentação na PHP Conference Brasil 2012

Equipe• Cerca de 20 DEVs (LAMP);

• Iniciando em métodos ágeis;

• Contratação e treinamento;

• Atender projetos corporativos e públicos;

• Evoluindo tecnologias, ferramentas e filosofia;

• Equipes estrategicamente focadas.

Page 6: Apresentação na PHP Conference Brasil 2012

Ambiente e PHP

Page 7: Apresentação na PHP Conference Brasil 2012

Ambiente• PHP 5.3;

• MySQL 5.5;

• MongoDB 2.0;

• Memcache;

• CodeSniffer;

• SVN, indo para Git;

• PHPDoc com saída automática;

• PHP Lint via pre-commit.

Page 8: Apresentação na PHP Conference Brasil 2012

Ambiente

• Fórum, blog e wiki interno;

• Sandbox para cada DEV integrado ao restante do ambiente;

• Evolução constante no toolkit interno;

• Incubadora de novas ideias e ferramentas.

Page 9: Apresentação na PHP Conference Brasil 2012

PHP• PHP sendo utilizado em todos projetos,

independente da estratégia;

• Projetos internos, corporativos, frontend, robôs, etc;

• Balanceamento de carga e ampliação/expansão horizontal;

• Nosso gargalo normalmente está no banco de dados.

Page 10: Apresentação na PHP Conference Brasil 2012

PaywallDetalhes

Page 11: Apresentação na PHP Conference Brasil 2012

Paywall• Alguns detalhes e premissas:

• Prazo agressivo, cerca de 3 meses;

• Detalhes fechados durante codificação;

• Acesso poroso, 20 notícias para qualquer usuário, até 40 para cadastrado e acima disto apenas para assinantes;

• Alteração mínima no CMS e arquitetura atual.

Page 12: Apresentação na PHP Conference Brasil 2012

Paywall• Mais detalhes:

• Utilizar as ferramentas disponíveis;

• Integração com UOL para assinantes do conteúdo online;

• Suportar toda audiência do portal e dos parceiros que utilizarem o sistema;

• Relatórios gerenciais detalhados para acompanhamento do produto.

Page 13: Apresentação na PHP Conference Brasil 2012

PaywallProposta

Page 14: Apresentação na PHP Conference Brasil 2012

Paywall• Proposta:

• Aplicativo inteiramente PHP;

• Evoluir o sistema de autenticação atual;

• Relatórios:

• ETL do MongoDB para o MySQL, consolidando informações;

• Integração com outros sistemas.

Page 15: Apresentação na PHP Conference Brasil 2012

Paywall• Proposta:

• Sessão via Memcache;

• Plugin com Javascript e HTML:

• Camada simples e fácil de integrar a qualquer página do portal;

• Facilmente “burlado”;

Page 16: Apresentação na PHP Conference Brasil 2012

Paywall1. Página carregada;

2. Requisição via JavaScript:

3. Retorno JSON ou JSONP:

4. Popula objeto:

Folha.Paywall;

5. Continua o processamento e exibição de mensagens, com base no objeto populado.

Envia URL e Referer

{ paywall: on, status: ok, ... }

Page 17: Apresentação na PHP Conference Brasil 2012

Paywall• Proposta:

• Persistência dos dados com MongoDB:

• Sharding com 4 (ou mais) nós;

• Replica-Set para redundância;

• Apenas uma collection para persistência.

• Integração com UOL, via OpenID.

Page 18: Apresentação na PHP Conference Brasil 2012

Paywall• Proposta:

• Administração:

• Facilidade para ligar/desligar tudo;

• Limites dos bloqueios são configuráveis;

• Áreas de bloqueio configuráveis (Regex);

• Possível liberar páginas específicas do bloqueio. Exemplo: Furo de reportagem.

Page 19: Apresentação na PHP Conference Brasil 2012

Paywall

• Equipe:

• Cerca de 4 DEVs (sendo 1 líder);

• 1 Webmaster;

• 1 SysAdmin;

• 1 Analista de projetos.

Page 20: Apresentação na PHP Conference Brasil 2012

Paywall• Atualmente:

• Aprendizado sobre o comportamento dos usuários;

• Cerca de 600 conexões simultâneas.