introdução
WWW é um dos aplicativos mais populares da Internet. Seu rápido crescimento causou congestionamento na rede e sobrecarga de servidores, resultando em maiores atrasos no acesso dos clientes e problemas de qualidade do serviço WWW. A tecnologia de cache é considerada uma das formas eficazes de reduzir a carga do servidor, reduzir o congestionamento da rede e aumentar a escalabilidade da WWW. Sua ideia básica é usar o princípio da localidade temporal do acesso do cliente para armazenar o conteúdo que o cliente acessou no. Cache. Armazene uma cópia Na próxima vez que o conteúdo for acessado, ele não precisa estar conectado ao site de hospedagem, mas é fornecido pela cópia retida no Cache.
O conteúdo da Web pode ser armazenado em cache no cliente, no servidor proxy e no lado do servidor. A pesquisa mostra que a tecnologia de cache pode melhorar significativamente o desempenho da WWW [1] [2] e pode trazer os seguintes benefícios:
(1) Reduzir o tráfego da rede, aliviando assim o congestionamento da rede;
(2) Reduzir o atraso de acesso do cliente Os principais motivos são: ① Para conteúdo armazenado em cache no servidor proxy, os clientes podem obtê-lo diretamente do proxy em vez de no servidor remoto, reduzindo assim o atraso de transmissão; para rede O congestionamento e a carga do servidor são reduzidos para que possam ser obtidos pelos clientes com mais rapidez;
(3) Como parte do conteúdo da solicitação do cliente pode ser obtido do proxy, a carga no servidor remoto é reduzida;
(4) Se o servidor remoto não puder responder à solicitação do cliente devido a uma falha no servidor remoto ou na rede, o cliente poderá obter uma cópia em cache do conteúdo do proxy, o que aumenta a robustez do serviço WWW.
Os sistemas de cache da Web também trazem os seguintes problemas:
(1) O conteúdo obtido pelo cliente através do agente pode estar desatualizado;
(2) Se ocorrer uma invalidação de cache, a latência de acesso do cliente aumenta devido à sobrecarga adicional de processamento do proxy. Portanto, ao projetar um sistema de cache da Web, deve-se esforçar-se para maximizar a taxa de acertos do cache e minimizar o custo de falha;
(3) O agente pode se tornar um gargalo. Portanto, um limite superior para o número de clientes de serviço e um limite inferior para a eficiência do serviço devem ser definidos para um agente, de modo que a eficiência de um sistema agente seja pelo menos tão eficiente quanto a dos clientes diretamente conectados ao servidor remoto.
Atualmente, pesquisas extensas e aprofundadas têm sido realizadas em torno dos sistemas de cache da Web e suas questões de otimização, e esses trabalhos de pesquisa concentram-se principalmente no papel dos proxies.
2 Características ideais de um sistema de cache da Web Um sistema de cache da Web ideal deve ter as seguintes características:
(1) Velocidade: O sistema de cache deve ser capaz de reduzir efetivamente os atrasos no acesso do cliente;
(2) Robustez: Robustez significa disponibilidade, e os clientes desejam que os serviços Web estejam disponíveis a qualquer momento;
(3) Transparência: O sistema de cache deve ser transparente para os clientes, e os resultados obtidos pelos clientes são apenas resposta rápida e boa disponibilidade;
(4) Escalabilidade: O sistema de cache da web deve ser capaz de escalar bem à medida que o tamanho e a densidade da rede continuam a crescer;
(5) Eficiência: Quanto menor for a sobrecarga que o sistema de cache Web traz para a rede, melhor;
(6) Adaptabilidade: O sistema de cache pode se adaptar às mudanças dinâmicas nas solicitações dos clientes e no ambiente de rede, o que envolve gerenciamento de cache, roteamento de cache, configuração de proxy, etc., e é crucial para obter o desempenho ideal do cache;
(7) Estabilidade: A solução adotada pelo sistema de cache Web não deve trazer instabilidade à rede;
(8) Balanceamento de carga: Uma solução de cache ideal deve ser capaz de distribuir uniformemente a carga por toda a rede para evitar que um determinado agente ou servidor se torne um gargalo ou ponto de acesso, causando degradação do desempenho de parte do sistema ou mesmo de todo o sistema;
(9) Capacidades de processamento heterogêneas: À medida que a escala da rede e a área de cobertura continuam a aumentar, a rede abrangerá uma série de diferentes arquiteturas de hardware e software. Os sistemas de cache da Web devem ser capazes de se adaptar a diferentes arquiteturas de rede;
(10) Simplicidade: Soluções simples são fáceis de implementar e geralmente aceitas. Uma solução de cache web ideal deve ser simples e fácil de configurar.
Focando nas características acima, um sistema de cache Web deve resolver os seguintes problemas:
(1) Arquitetura de cache: como os proxies de cache são organizados e configurados na rede;
(2) Cooperação de agentes: Como cooperar entre agentes que cooperam entre si podem aumentar a taxa de acertos e melhorar o desempenho do sistema de cache;
(3) Roteamento de cache: quando um proxy de cache falha, como encaminhar a solicitação para outros proxies de cache;
(4) Algoritmo de substituição de cache: quando o espaço de cache não é suficiente, como substituir o conteúdo do cache;
(5) Consistência do cache: isto é, a atualidade do conteúdo em cache e como evitar que o conteúdo em cache fique desatualizado;
(6) Pré-busca de conteúdo: como o agente decide pré-buscar conteúdo do servidor ou de outros agentes para reduzir o atraso de acesso do cliente;
(7) Balanceamento de carga: Como resolver o fenômeno “Hot spot” na rede;
(8) Conteúdo do cache: que tipo de conteúdo pode ser armazenado em cache.
Ao projetar um sistema de cache web, os problemas acima devem ser abordados.
3 Visão geral das soluções de cache da Web
3.1 Arquitetura de cache da Web O desempenho de um sistema de cache da Web depende do tamanho de sua base de clientes. Quanto maior a base de clientes, maior será a probabilidade de o conteúdo armazenado em cache ser solicitado novamente. Grupos de cache que cooperam entre si podem aumentar a taxa de acertos e melhorar o desempenho do sistema de cache. Portanto, a arquitetura do sistema de cache deve garantir que os agentes possam cooperar de forma eficaz. As arquiteturas de cache típicas incluem: hierárquica, distribuída e híbrida.
Figura 1 Diagrama de arquitetura do sistema de cache da Web
3.1.1 Arquitetura de cache hierárquica
O projeto Harvest [3] propôs pela primeira vez uma arquitetura hierárquica de cache da web. Na arquitetura de cache hierárquica, o cache é configurado em vários níveis da rede, conforme mostrado na Figura 1(a). Por uma questão de simplicidade, assume-se que existem quatro níveis: Cache da camada inferior, Cache da camada local, Cache da camada regional e Cache da camada de área ampla. A camada inferior é o cache do cliente/navegador. Quando o cache do cliente não consegue atender à solicitação do cliente, a solicitação é encaminhada para o cache da camada de área local. Se ainda não for atendida, a solicitação é encaminhada para o cache da camada regional até a camada ampla. camada de área Cache. Se a solicitação não puder ser atendida em caches em todos os níveis, a solicitação será eventualmente encaminhada ao servidor. A resposta do servidor à solicitação é então enviada de cima para baixo ao cliente, deixando uma cópia em cada cache de camada intermediária ao longo do caminho. Outras solicitações para o mesmo conteúdo são encaminhadas de baixo para cima até serem satisfeitas em um determinado nível de cache.
A arquitetura de cache hierárquica é altamente eficiente em termos de largura de banda e o conteúdo da Web com altas taxas de cliques pode ser distribuído pela rede de forma rápida e eficiente. No entanto, esta arquitetura também tem algumas deficiências[4]:
(1) Estabelecer uma arquitetura de cache hierárquica. Os servidores de cache devem ser configurados nos principais pontos de acesso da rede e os servidores de cache devem cooperar entre si;
(2) Cada nível de Cache trará atraso adicional;
(3) O cache de alto nível pode se tornar um gargalo e causar longos atrasos nas filas;
(4) Várias cópias do mesmo conteúdo são armazenadas em caches diferentes e a utilização do espaço de cache de todo o sistema não é alta.
3.1.2 Arquitetura de cache distribuído Tendo em vista as deficiências da estrutura hierárquica de cache mencionadas acima, alguns pesquisadores propuseram uma arquitetura de cache distribuída. Nessa estrutura, existe apenas um cache de baixo nível, conforme mostrado na Figura 1 (b). Na estrutura de cache da Web distribuída da literatura [5], não há camada de cache intermediária além da camada local, e os caches cooperam entre si para lidar com falhas. Para determinar qual cache da camada de área local encaminhar a solicitação do cliente para obter o conteúdo inválido, cada cache da camada de área local retém uma cópia das informações do diretório do conteúdo armazenado em cache em outros caches da camada de área local, para que a solicitação do cliente possa ser encaminhado com precisão quando ocorre uma invalidação para o cache da camada local correspondente. Cache Array Routing Protocol CARP [6] (Cache Array Routing Protocol) é um esquema de cache distribuído que divide o espaço de URL em diferentes partes e atribui cada parte a um grupo de cache fracamente acoplado. Cada cache só pode armazenar em cache o conteúdo da web que possui um URL atribuído. a ele, possibilitando determinar para qual Cache encaminhar a solicitação com base na URL da qual o cliente solicitou o conteúdo.
Em uma estrutura de cache distribuída, a maior parte do tráfego de rede ocorre na parte inferior da rede, o que tem menos probabilidade de causar congestionamento na rede. A utilização do espaço de cache é alta, o compartilhamento de carga pode ser melhor alcançado e a tolerância a falhas é melhor. Entretanto, a configuração de um sistema de cache distribuído em larga escala pode encontrar vários problemas: alto número de conexões, altos requisitos de largura de banda e difícil gerenciamento [4].
3.1.3 Arquitetura de cache híbrida A arquitetura híbrida é mostrada na Figura 1(c). Cache no mesmo nível adota uma estrutura de cache distribuída e coopera entre si. O Internet Cache Protocol ICP (Internet Cache Protocol) desenvolvido pelo Harvest Group suporta a obtenção de conteúdo correspondente do cache pai ou do cache vizinho com o menor RTT.
3.1.4 Pesquisa de otimização na arquitetura de cache mostra que [4] em comparação com a estrutura de cache distribuída, a arquitetura de cache hierárquica tem tempo de conexão mais curto, portanto, documentos menores são armazenados em cache na camada intermediária. A latência de acesso ao cache pode ser reduzida; tempo de transmissão e maior utilização da largura de banda. A solução ideal é combinar os dois para aproveitar ao máximo seus respectivos pontos fortes e, ao mesmo tempo, reduzir o tempo de conexão e o tempo de transmissão.
3.2 Roteamento de cache Considerando a escalabilidade do sistema de cache da Web, a maioria dos sistemas de cache dispersa um grande número de cache na Internet. O maior problema trazido por isso é como localizar rapidamente o cache que armazena o conteúdo necessário. . Este problema é um pouco semelhante ao roteamento de rede, mas não pode ser resolvido da mesma maneira. O roteamento de rede tradicional pode ser baseado no agrupamento de endereços (a representação hierárquica de endereços torna possível o agrupamento de endereços), mas na WWW, documentos com o mesmo prefixo de URL ou prefixo de endereço de servidor podem não ser enviados para o mesmo cliente, dificultando o roteamento. agrupado para que a tabela de roteamento de cache se torne incontrolavelmente grande. Além disso, o conteúdo do cache é atualizado constantemente e as informações desatualizadas de roteamento do cache causarão a invalidação do cache. Para reduzir o custo da falha do cache, um algoritmo de roteamento de cache ideal deve rotear a solicitação do cliente para o próximo proxy, que tem maior probabilidade de acertar e está localizado no caminho de rede do cliente para o servidor ou próximo a ele.
3.2.1 Método de tabela de roteamento de cache
Malpani et al. [7] combinaram um grupo de Cache. Quando a solicitação do cliente for encaminhada para o Cache especificado, se o Cache tiver o conteúdo solicitado, ele será enviado ao cliente. por meio de multicast IP. Outros caches do mesmo grupo respondem à solicitação do cliente do cache que armazena o conteúdo correspondente. Se o conteúdo solicitado não for armazenado em cache em nenhum cache, a solicitação será encaminhada para o servidor de origem. O sistema de cache Harvest[3] organiza o cache em uma estrutura hierárquica e usa o protocolo de resolução de cache ICP (Internet Cache Protocol). Quando ocorre uma falha de cache, o cache de nível inferior primeiro consulta o cache do nó irmão antes de encaminhar a solicitação do cliente para o cache do nó irmão. cache de nível superior Se o conteúdo correspondente é armazenado em cache para evitar sobrecarregar o cache de nível superior. O sistema de cache web adaptativo [8] estabelece uma árvore de cache para cada servidor. Os caches na árvore são organizados em grupos multicast sobrepostos e uma solicitação obtém o conteúdo armazenado em cache correspondente através desses grupos de transmissão. Este método constrói uma árvore de cache diferente para cada servidor, portanto não há problema de sobrecarga do nó raiz e a autoconfiguração e robustez são relativamente boas. No entanto, solicitações de conteúdo com baixas taxas de cliques podem passar por mais caches, resultando em maior sobrecarga de comunicação de cache. O autor recomenda limitar o número de caches pelos quais as solicitações passam para resolver esse problema.
3.2.2 Método da função hash
O Cache Array Routing Protocol CARP [6] usa uma função hash baseada na lista de membros do array e na URL para determinar o endereço exato de cache de um objeto Web ou onde um objeto Web deve ser armazenado em cache. No Summary Cache [9], cada proxy salva uma URL com informações resumidas do conteúdo armazenado em cache por outros proxies no mesmo grupo. O proxy verifica essas informações resumidas ao encaminhar a solicitação do cliente para determinar para qual proxy encaminhar a solicitação. Para reduzir a sobrecarga, essas informações resumidas são atualizadas periodicamente. Experimentos mostram que este sistema pode reduzir significativamente a quantidade de informações entre caches, o consumo de largura de banda e a sobrecarga de CPU causada pelo protocolo, enquanto mantém quase a mesma taxa de acertos de cache que o ICP.
3.3 Algoritmo de substituição de cache
O algoritmo de substituição de cache é um fator importante que afeta o desempenho do sistema de cache proxy. Um bom algoritmo de substituição de cache pode produzir uma taxa de acertos mais alta. Os algoritmos propostos até agora podem ser divididos nas três categorias a seguir:
(1) Algoritmo de substituição tradicional e sua evolução direta. Seus algoritmos representativos são: ①Algoritmo LRU (Least Recentemente Usado): substitui o conteúdo menos usado recentemente do Cache ②LFU (Lease Frequently Used): substitui o conteúdo menos visitado do Cache; o Cache Cache; ③Pitkow/Recker[10] propôs um algoritmo de substituição: se todo o conteúdo do Cache for armazenado em cache no mesmo dia, o maior documento será substituído do Cache, caso contrário, será substituído de acordo com o algoritmo LRU.
(2) Algoritmo de substituição baseado nas principais características do conteúdo do cache. Seus algoritmos representativos incluem: ①Algoritmo de substituição de tamanho[10]: substitui o maior conteúdo do cache ②LRU-MIN[11] algoritmo de substituição: Este algoritmo se esforça para fazer o cache; documento substituído individual O menor número. Suponha que o tamanho do documento a ser armazenado em cache seja S, e os documentos armazenados em cache no cache com tamanho de pelo menos S sejam substituídos de acordo com o algoritmo LRU, se não houver nenhum objeto com tamanho de pelo menos S, o LRU; algoritmo é usado a partir de documentos com tamanho de pelo menos S/2. Substituir; 12] algoritmo de substituição: Substitua o documento com o menor atraso de acesso fora do cache.
(3) Algoritmo de substituição baseado em custo Este tipo de algoritmo usa uma função de custo para avaliar os objetos no Cache e, finalmente, determina o objeto de substituição com base no valor do custo. Seus algoritmos representativos são: ①Algoritmo Híbrido[12]: O algoritmo atribui uma função de utilidade a cada objeto no Cache e substitui o objeto pelo menor valor de utilidade do Cache ②Algoritmo de Valor Relativo Mais Baixo[13]: substitui o objeto pelo menor valor relativo; o menor valor de utilidade do Cache; ③ Algoritmo de Substituição de Custo Menor Normalizado (LCNR) [14]: Este algoritmo usa uma função de inferência sobre frequência de acesso ao documento, tempo de transmissão e tamanho para determinar documentos de substituição; propôs um método baseado no custo do tempo de transmissão do documento, tamanho e a função de inferência ponderada do último tempo de acesso são usados para determinar a substituição do documento ⑤Size-Adjust LRU (SLRU) [16] algoritmo: Classifique os objetos em cache de acordo com a proporção de custo; ao tamanho e selecione o objeto com a menor proporção para substituição.
Em suma, para maximizar a taxa de acertos do Cache, muito trabalho foi realizado em torno do algoritmo de substituição do Cache. No entanto, o desempenho do algoritmo de substituição depende em grande parte das características do acesso WWW. lidar com todos os modos de acesso à Web são melhores que outros algoritmos.
3.4 Consistência do cache
O sistema de cache da web pode reduzir a latência de acesso, mas tem um efeito colateral: a cópia em cache fornecida aos clientes pode ser conteúdo desatualizado, portanto, um mecanismo de consistência de cache deve estar em vigor para garantir que o conteúdo em cache possa ser atualizado e validado em tempo hábil. maneira, a fim de fornecer aos clientes o conteúdo mais recente.
Atualmente, existem dois tipos principais de consistência de cache: consistência de cache forte e consistência de cache fraca.
3.4.1 Forte consistência de cache (1) Confirmação do cliente: Para cada acesso, o proxy considera o conteúdo em cache como desatualizado e envia um cabeçalho "IF-Modified-Since-date" ao servidor com a solicitação. Se o conteúdo for alterado após o tempo especificado, o servidor envia o conteúdo atualizado ao agente e eventualmente ao cliente, se o conteúdo solicitado não tiver sido modificado, uma resposta "304" será enviada de volta, indicando que o documento não foi modificado; e o conteúdo em cache continua eficiente.
(2) Confirmação do servidor: Quando o servidor detecta que um conteúdo foi alterado, o servidor envia informações de invalidação a todos os clientes que solicitaram recentemente o conteúdo e podem ter armazenado o conteúdo em cache [17]. Este método exige que o servidor salve uma lista vinculada de clientes que acessam o conteúdo para enviar informações inválidas. Quando o número de clientes for grande, este método se tornará inaplicável. , fazendo com que o servidor envie mensagens para muitos clientes que não estão mais armazenados em cache. Os clientes deste conteúdo recebem informações inválidas.
3.4.2 Consistência de cache fraca (1) Mecanismo TTL adaptativo [18] (Time To Live): observando o tempo de vida de um documento para ajustar seu tempo de sobrevivência, resolvendo assim o problema de consistência de cache. Se um documento não tiver sido modificado durante um período de tempo considerável, tenderá a não voltar a ser alterado. Dessa forma, ao atributo tempo de vida de um documento é atribuída uma porcentagem da "idade" atual do documento (igual à hora atual menos a hora da última modificação). O método TTL adaptativo pode controlar a possibilidade de um documento se tornar obsoleto para menos de 5%. A maioria dos servidores proxy usa esse mecanismo, mas esse mecanismo de consistência de cache baseado no tempo de vida do documento não garante a validade do conteúdo armazenado em cache.
(2) Mecanismo de invalidação de piggyback
Krishnamurthy et al. propuseram o uso de um mecanismo de invalidação piggy-back para melhorar a eficiência da coerência do cache. Eles propuseram três mecanismos: ① Mecanismo Piggyback Cache Validation (PCV) [19]: usando solicitações enviadas pelo proxy ao servidor para melhorar a consistência do cache. Por exemplo, quando um proxy faz uma solicitação ao servidor, ele carrega uma série de conteúdo em cache, mas possivelmente desatualizado, do servidor para confirmação de validade ② Mecanismo Piggyback Service Invalidation (PSI) [20] (Piggyback Service Invalidation): a ideia básica; é que quando o servidor responde ao proxy, ele informa ao servidor proxy uma série de conteúdos que foram alterados desde o último acesso do proxy e o proxy invalida esses conteúdos, estendendo assim o tempo de cache de outros conteúdos armazenados em cache no Cache ③ PSI; e mecanismo híbrido PCV [21]: Este mecanismo determina qual mecanismo usar para obter o melhor desempenho geral com base no tamanho do intervalo atual desde que a última solicitação foi invalidada pelo agente. Se este intervalo de tempo for pequeno, o mecanismo PSI é utilizado, caso contrário, o mecanismo PCV é utilizado para confirmar o conteúdo do cache. O princípio básico é que quanto menor o intervalo de tempo, menor será o número de vazios enviados junto com o PSI, mas à medida que o tempo aumenta, o overhead de envio de vazios será maior que o overhead de solicitação de confirmação.
3.5 Pré-busca de conteúdo
A tecnologia de cache da Web pode melhorar o desempenho da Web, mas pesquisas mostram [22] que, independentemente do esquema de cache usado, a taxa máxima de acertos do cache geralmente não é superior a 40 a 50%. Para melhorar ainda mais a taxa de acertos do cache, é introduzida a tecnologia de pré-busca. A tecnologia de pré-busca é essencialmente uma tecnologia de cache ativo. Sua idéia básica é usar o conhecimento prévio do conteúdo ou modo de acesso do cliente para prever o conteúdo da próxima solicitação do cliente ao processar a solicitação atual do cliente e usar o conteúdo solicitado do cliente para armazenar em cache o conteúdo de previsão. o Cache para ocultar melhor a latência e melhorar a qualidade do serviço.
As primeiras pesquisas se concentraram na pré-busca de conteúdo entre navegadores/clientes e servidores Web. Quando os proxies foram introduzidos, o interesse de pesquisa das pessoas mudou para a tecnologia de pré-busca entre proxies e servidores. A pesquisa mostra que a tecnologia de pré-busca pode efetivamente reduzir a latência de acesso do cliente, mas a tecnologia de pré-busca ainda é controversa por dois motivos:
(1) A pré-busca de conteúdo é uma tarefa com altos requisitos em tempo real. Ela usa principalmente o intervalo de solicitações do cliente, e esse intervalo é geralmente inferior a um minuto [23]. , a pré-busca perderá o sentido. Portanto, existem requisitos mais elevados para a eficiência do algoritmo de pré-busca.
(2) A pré-busca de conteúdo reduz o tempo de resposta do cliente às custas do aumento da carga do servidor e do tráfego de rede, portanto, há requisitos mais elevados para a precisão da pré-busca. Ao mesmo tempo, um modelo de pré-busca deve considerar as características de acesso do cliente, a carga do servidor e as condições de tráfego da rede ao determinar o número de documentos pré-buscados. A pré-busca sem esses fatores pode ter efeitos contraproducentes.
Resumindo, um bom modelo de pré-busca deve ter alta eficiência e precisão a baixo custo. Mais pesquisas são necessárias sobre a eficiência e a precisão da pré-busca.
3.5 Balanceamento de carga Quando muitos clientes obtêm dados ou serviços de um servidor ao mesmo tempo, ocorrerá o fenômeno Hot Spot, resultando na degradação do desempenho do servidor ou até mesmo em falha. A maioria dos métodos atuais para lidar com este problema consiste em usar alguma estratégia de replicação para armazenar o conteúdo solicitado na Internet, distribuindo assim a carga para vários servidores (agentes) [24] para evitar que um único servidor se torne um gargalo.
3.6 Armazenando conteúdo em cache Um proxy pode desempenhar diversas funções. Além do cache de dados, ele também pode realizar cache de conexão e cache de cálculo. O cache de conexão refere-se ao uso de conexões persistentes entre o cliente e o agente, e o agente e o servidor para reduzir a sobrecarga de estabelecimento de uma conexão TCP e a sobrecarga de início lento quando o servidor envia, reduzindo assim o tempo de atraso de acesso do cliente [25 ]. O cache computacional pode ser visto como servidores Web que podem migrar alguns de seus serviços para proxies para aliviar gargalos do servidor. Uma de suas aplicações é o cache dinâmico de dados, que armazena dados dinâmicos por meio de proxies e migra parte dos cálculos para proxies, que são gerados por proxies. proxies e manter dados dinâmicos em cache, melhorando assim o desempenho dos clientes na obtenção de dados dinâmicos.
4 Questões que requerem mais pesquisas Uma grande quantidade de pesquisas foi realizada em torno da tecnologia de cache da Web e resultados frutíferos foram alcançados, mas ainda existem algumas questões que requerem mais pesquisas. Esses problemas incluem:
(1) Pesquisa sobre padrões de acesso do cliente: Ao estudar os padrões de acesso do cliente, podemos realizar melhor o gerenciamento de cache e a pré-busca de conteúdo e melhorar a taxa de acertos do cache;
(2) Cache de dados dinâmico: Uma razão importante pela qual a atual taxa de acertos do cache da web não é alta é que uma parte considerável do conteúdo (dados privados, dados autorizados, dados dinâmicos, etc.) não pode ser armazenada em cache. Como tornar mais dados armazenáveis em cache e como reduzir o atraso de acesso dos clientes para acessar páginas não armazenadas em cache tornou-se uma questão fundamental na melhoria do desempenho da Web;
(3) Características do tráfego da Web: A eficiência do sistema de cache reside na localidade temporal dos fluxos de acesso à Web e em boas estratégias de gerenciamento de cache. Compreender as características de carga geradas pelos clientes da Web é de grande importância para melhor projetar e fornecer serviços da Web;
(4) Configuração de proxy: Para obter um bom desempenho da Web, a configuração de proxy é crucial. Os padrões ideais para estratégias de configuração de proxy são: auto-organização, roteamento eficiente, balanceamento de carga, comportamento estável, etc.
Em suma, a pesquisa de ponta para melhorar o desempenho da Web reside no desenvolvimento de soluções de cache que sejam escaláveis, robustas, adaptáveis, estáveis, eficientes e que possam ser melhor configuradas nas redes atuais e futuras.
Wang Shike Wu Ji Jin Shiyao
(Laboratório Estadual de Paralelismo e Distribuição, Escola de Ciência da Computação, Universidade Nacional de Tecnologia de Defesa, Changsha 410073)
-