b'\n_START_ARTICLE_\nEfeito Digg\n_START_SECTION_\nComo o Digg Funciona?\n_START_PARAGRAPH_\nO Digg \xc3\xa9 um servi\xc3\xa7o de Links Sociais, ou seja, \xc3\xa9 um servi\xc3\xa7o onde as pessoas contribuem com links para p\xc3\xa1ginas que acham interessante. Quando uma quantidade razo\xc3\xa1vel de pessoas indicam um \xc3\xbanico link para o Digg, este percebe que h\xc3\xa1 um certo interesse das pessoas por aquele link, e ent\xc3\xa3o, publica-o em suas p\xc3\xa1ginas._NEWLINE_Dependendo do interesse das pessoas, se a quantidade de indica\xc3\xa7\xc3\xb5es continuar a subir, ent\xc3\xa3o o Digg coloca o link em sua primeira p\xc3\xa1gina. Como o Digg \xc3\xa9 um portal muito acessado e visto por milh\xc3\xb5es de pessoas e assinantes de RSS todos os dias, existe uma grande chance de um link apresentado pelo servi\xc3\xa7o seja acessado pelos visitantes.\n_START_SECTION_\nComo o Digg pode derrubar um site ou blog?\n_START_PARAGRAPH_\nDado o volume potencial de acessos que o Digg pode gerar a um \xc3\xbanico WebSite ou Blog (milhares de visitantes em potencial por hora), este pode ter problemas para responder a todos estes visitantes e entrar em colapso, ficar lento ou mesmo indispon\xc3\xadvel._NEWLINE_Toda p\xc3\xa1gina de Internet funciona hospedada em um servidor conectado a internet. O servidor \xc3\xa9 respons\xc3\xa1vel por receber as requisi\xc3\xa7\xc3\xb5es de acesso dos usu\xc3\xa1rios, processa-las e devolver como resposta as p\xc3\xa1ginas, que ser\xc3\xa3o interpretadas pelo Browser dos usu\xc3\xa1rios. Esta troca acontece a cada acesso a um determinado site, e por isso, quanto maior a quantidade de acessos, mais o servidor tem de trabalhar para atender a todos os pedidos._NEWLINE_Se esta quantidade de acessos for maior do que o servidor consegue atender, ent\xc3\xa3o, ele tende a atender mais lentamente cada uma das requisi\xc3\xa7\xc3\xb5es, para que todos sejam atendidos. Por\xc3\xa9m, em alguns casos, a quantidade de requisi\xc3\xa7\xc3\xb5es \xc3\xa9 t\xc3\xa3o grande que o servidor leva muitos minutos para processar cada uma._NEWLINE_Para evitar que o servidor trabalhe sem-fim, ou seja, receba tantas requisi\xc3\xa7\xc3\xb5es que chegue ao ponto de n\xc3\xa3o conseguir atender nenhuma, existe um gatilho que determina que nenhum processamento pode levar mais do que N segundos (este tempo varia dependendo da configura\xc3\xa7\xc3\xa3o de cada servidor), ent\xc3\xa3o, sempre que este tempo \xc3\xa9 alcan\xc3\xa7ado, o pr\xc3\xb3prio servidor interrompe o processamento e devolve uma resposta de indisponibilidade (Timeout).\n_START_SECTION_\nComo evitar que o site saia do ar\n_START_PARAGRAPH_\nSabendo que o site sai do ar pois o servidor n\xc3\xa3o consegue atender as requisi\xc3\xa7\xc3\xb5es, fica simples determinar a solu\xc3\xa7\xc3\xa3o:\n_START_SECTION_\nOtimizar a p\xc3\xa1gina para que processe mais rapidamente\n_START_PARAGRAPH_\nPara fazer com que as requisi\xc3\xa7\xc3\xb5es sejam processadas mais rapidamente, voc\xc3\xaa deve diminuir a quantidade de processamento que cada requisi\xc3\xa7\xc3\xa3o executa. Isso \xc3\xa9 poss\xc3\xadvel otimizando o c\xc3\xb3digo que \xc3\xa9 executado no servidor, atrav\xc3\xa9s de t\xc3\xa9cnica de melhoria da l\xc3\xb3gica, uso de componentes mais leves, uso de bancos de dados mais r\xc3\xa1pidos ou redu\xc3\xa7\xc3\xa3o no uso do banco de dados. T\xc3\xa9cnicas de cacheamento e etc.\n_START_SECTION_\nFazer mais servidores trabalharem com clusteriza\xc3\xa7\xc3\xa3o\n_START_PARAGRAPH_\n\xc3\x89 uma forma de atender mais usu\xc3\xa1rios sem modificar muito a programa\xc3\xa7\xc3\xa3o do sistema do site ou blog. Utilizando v\xc3\xa1rios servidores, ligados entre si em rede, e distribuindo a carga de processamento entre eles. A t\xc3\xa9cnica \xc3\xa9 chamada de Sistema de processamento distribu\xc3\xaddo, e \xc3\xa9 simples de ser implementada, apesar de muitas vezes ser dispendiosa (por necessitar de mais hardware). \xc3\x89 poss\xc3\xadvel substituir um \xc3\xbanico servidor por muitos (o n\xc3\xbamero \xc3\xa9 praticamente ilimitado), e ent\xc3\xa3o, cada servidor fica respons\xc3\xa1vel por atender uma quantidade menor de requisi\xc3\xa7\xc3\xb5es. Em um sistema de cluster, tamb\xc3\xa9m \xc3\xa9 necess\xc3\xa1rio eleger um dos servidores para ficar respons\xc3\xa1vel por distribuir a carga de processamento entre todos os outros servidores do cluster.\n_START_SECTION_\nAumentar a capacidade de processamento do servidor\n_START_PARAGRAPH_\nSe cada processo est\xc3\xa1 levando muito tempo para ser executado, uma solu\xc3\xa7\xc3\xa3o pode ser aumentar a capacidade de processamento do servidor, tornando o tempo de processamento mais r\xc3\xa1pido e por conseq\xc3\xbc\xc3\xaancia, atendendo a mais usu\xc3\xa1rios em um mesmo espa\xc3\xa7o de tempo. Para aumentar a capacidade de um servidor geralmente s\xc3\xa3o adicionados mais processadores (ou substitu\xc3\xaddos os processadores atuais por outros mais r\xc3\xa1pidos), adicionada mais mem\xc3\xb3ria, substui\xc3\xa7\xc3\xa3o dos sistemas de disco por outros mais r\xc3\xa1pidos.\n_START_SECTION_\nCriar um sistema de cache\n_START_PARAGRAPH_\n\xc3\x89 um sistema muito utilizado, que elimina quase que completamente o processamento que um servidor deve fazer ao entregar uma p\xc3\xa1gina ao usu\xc3\xa1rio. Se as p\xc3\xa1ginas que ser\xc3\xa3o entregues aos usu\xc3\xa1rios ser\xc3\xa3o exatamente iguais sempre, ent\xc3\xa3o n\xc3\xa3o h\xc3\xa1 motivo para reprocessa-la a cada requisi\xc3\xa7\xc3\xa3o. Basta processa-la uma \xc3\xbanica vez e entregar este resultado a todas as requisi\xc3\xa7\xc3\xb5es. Alguns sistemas de cache s\xc3\xa3o ligados diretamente ao servidor web (Apache, IIS, etc). Estes s\xc3\xa3o geralmente mais r\xc3\xa1pidos pois n\xc3\xa3o exigem que o programa do site seja executado. Outros, s\xc3\xa3o definidos junto a programa\xc3\xa7\xc3\xa3o do site, e exigem uma pequena carga de processamento do servidor (cache em .NET, PHP, etc), mas que ainda assim \xc3\xa9 mais r\xc3\xa1pido do que a execu\xc3\xa7\xc3\xa3o integral do programa._NEWLINE_Um sistema muito comum de cache em Blogs \xc3\xa9 o WP-Cache, para o sistema Wordpress. O funcionamento dele consiste em processar integralmente uma p\xc3\xa1gina e salvar um arquivo em HTML puro no servidor. Na pr\xc3\xb3xima requisi\xc3\xa7\xc3\xa3o de um usu\xc3\xa1rio, o sistema verifica se j\xc3\xa1 existe o arquivo pr\xc3\xa9-processado, e caso exista, entrega o tal arquivo em vez de processar a requisi\xc3\xa7\xc3\xa3o totalmente. Com isso, economiza-se processamento no Banco de dados._NEWLINE_O plug-in WP-SuperCache, para a mesma plataforma, foi criado a partir do WP-Cache, por\xc3\xa9m, com a diferen\xc3\xa7a b\xc3\xa1sica de quem passa a tarefa de verificar se o arquivo existe ao servidor web (Apache), senso assim, o servidor web verifica se o arquivo existe e o entrega sem nem mesmo carregar em mem\xc3\xb3ria o motor do PHP, que \xc3\xa9 a base de execu\xc3\xa7\xc3\xa3o do Wordpress.'