Meu herói da escala

Inspiração para Stack Overflow ocasionalmente vem dos lugares mais improváveis. O senhor já ouviu falar do o site de relacionamentos Plenty of Fish?

Markus Frind criou o site Plenty of Fish em 2003 apenas como um exercício para ensinar a si mesmo uma nova linguagem de programação, ASP.NET. O site tornou-se popular entre os canadenses de língua inglesa. A popularidade entre os usuários de namoro on-line em muitas cidades dos Estados Unidos veio mais recentemente, e com gastos mínimos em publicidade do site. De acordo com dados da comScore Media Metrix de novembro de 2007, o Plenty of Fish teve 1,4 milhão de visitantes únicos nos Estados Unidos. Em dezembro, disse Frind, o site teve 1,2 bilhão de visualizações de página, e as visualizações de página aumentaram 20% desde 26 de dezembro.

O atual plentyoffish.com O design do site, embora tenha melhorado (acredite ou não) desde a última vez que olhei, é quase horrivelmente ruim; parece literalmente a primeira tentativa de programação de site de um estudante do ensino médio. Mas o isso não importa. O site é um sucesso retumbante entre os usuários, a ponto de ser quase totalmente administrado por eles:

Ninguém vai ao Plenty of Fish por causa do atendimento ao cliente, que é praticamente inexistente. A empresa não precisa de uma estrutura de suporte para lidar com os problemas de assinatura e cobrança dos membros porque o serviço é totalmente baseado em publicidade. Seu slogan é: “100% gratuito. Guarde seu cartão de crédito”. Para obter ajuda, os usuários precisam contar com outros membros, cujos conselhos são encontrados em fóruns on-line. A categoria Dating & Love Advice (Conselhos sobre namoro e amor) lista mais de 320.000 mensagens, compensando em quantidade o que falta em uma presença ao vivo tranquilizadora disponível por telefone.

É verdade que comparar um site de relacionamentos com outras propriedades on-line é um pouco injusto. Como mencionei em um post anterior, oNa verdade, os modelos de negócios mais sustentáveis e duradouros fazem com que o senhor faça sexo ou seja pago – e quanto mais diretamente, melhor. O clássico de Jamie Zawinski Groupware ruim cobre o mesmo assunto:

Por isso, eu disse para o senhor restringir o foco. Seu “caso de uso” deve ser: há um estudante universitário de 22 anos morando em um dormitório. Como esse software o ajudará a transar com o senhor?

É bastante claro a que eixo das necessidades humanas a Plenty of Fish atende. Ela já está trabalhando com a muito mais queijo do que a maioria dos desenvolvedores de software jamais terá.

OK, então Markus Frind criou sozinho um site de namoro gratuito extremamente popular que é quase inteiramente administrado pela comunidade. Grande coisa. Mas o que o torna especialmente incrível é que ele faz tudo isso em um punhado de servidores:

  • 1,2 bilhão de visualizações de página por mês, média de 500.000 logins únicos por dia
  • Mais de 30 milhões de acessos por dia, 500-600 por segundo
  • 45 milhões de visitantes por mês
  • site top 30 nos EUA, top 10 no Canadá, top 30 no Reino Unido
  • 2 servidores da Web Windows Server 2003 x64 com balanceamento de carga, com 2 CPUs Quad Core de 2,66 Ghz, 8 GB de RAM, 2 discos rígidos
  • 3 servidores de banco de dados. Não há dados sobre sua configuração
  • Aproximando-se de 64.000 conexões simultâneas e 2 milhões de visualizações de página por hora
  • A conexão com a Internet é uma linha de 1 Gbps, 200 Mbps são usados
  • 1 TB por dia servindo 171 milhões de imagens por meio da Akamai
  • Matriz de armazenamento de 6 TB para lidar com milhões de imagens em tamanho real carregadas todos os meses no site

Esses números de tráfego e tamanho são nada menos que surpreendentes. Ele conseguiu tudo isso por conta própria, usando apenas cinco servidores com a mesma pilha Microsoft e ASP.NET que usamos. Isso me dá muita esperança de escalonar o Stack Overflow sem precisar de muitos funcionários ou hardware de servidor. Não sei se algum dia atingiremos esse tipo de nível de tráfego.

Dito isso, há algumas nuvens negras no horizonte; em um post recente no blog, Markus observou que seu modelo de negócios gratuito nem sempre é tão bem dimensionado quanto o hardware:

O problema com a gratuidade é que toda vez que o senhor dobra o tamanho do seu banco de dados, o custo de manutenção do site aumenta seis vezes. Eu realmente subestimei a quantidade de recursos que seriam necessários. Atualmente, tenho uma tabela de banco de dados que ultrapassa 3 bilhões de registros. Quanto maior o tamanho do site gratuito, menos dinheiro o senhor ganha por visita e mais caro é o serviço de manutenção de uma visita.

É claro que qualquer semelhança entre um site de namoro gratuito e um site de perguntas e respostas para programadores é mera coincidência, tenho certeza.

Nos primeiros anos da programação, um programa era considerado propriedade privada do programador. O senhor não pensaria mais em ler o programa de um colega sem ser solicitado do que em pegar uma carta de amor e lê-la. Essencialmente, era isso que um programa era: uma carta de amor do programador para o hardware, cheia de detalhes íntimos conhecidos apenas pelos parceiros em um caso. Consequentemente, os programas se tornaram repletos de nomes de animais de estimação e abreviações verbais tão populares entre os amantes que vivem na feliz abstração que pressupõe que a existência deles é a única no universo. Esses programas são ininteligíveis para quem não faz parte da parceria.

Talvez o Stack Overflow também tenha sido construído sobre amor, estilo internet. Esperamos que ele seja tão bom quanto o Plenty of Fish.

Atualização: Markus observa que, de acordo com o hitwise, a partir de 2008, ele dirige o #13º site nos Estados Unidos.