Limitações do Office Web Components quando usado no lado do servidor

Traduções deste artigo Traduções deste artigo
ID do artigo: 317316 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Sumário

O Microsoft Office Web Components oferecem aos desenvolvedores da Web planilha, gráficos e recursos de tabela dinâmica para páginas da Web mais dinâmica. Os componentes foram desenvolvidos como controles ActiveX no lado do cliente que podem ser usados dentro do Microsoft Internet Explorer.

No entanto, a funcionalidade de componentes, levou muitos desenvolvedores usá-los em soluções do lado do servidor, como em Active Server Pages (ASP) ou + para criar e exportar gráficos. Enquanto os componentes podem ser usados dessa forma, limitações podem comprometer a estabilidade e desempenho do código do servidor e podem tornar os componentes problemáticos em uma solução do lado do servidor em larga escala.

Mais Informações

A Microsoft não recomenda que você usar o Office Web Components em uma solução do lado do servidor. Vários conhecidas limitações impedir que os componentes funcionando corretamente em um ambiente altamente reentrante, vários segmentos, não interativo. Entre os problemas que você pode enfrentar são as seguintes:
  • baixa execução ou um desempenho ruim : O Office 2000 Web Components foram projetados para o ambiente single-threaded apartment (STA) vários do Internet Explorer e não o ambiente multi-threaded apartment (MTA) da maioria dos aplicativos lado do servidor. A proteção para simultaneidade de thread para o Office Web Components não foi projetada para o volume alto, chamadas vários segmentos que são típicas de um serviço da Web e, portanto, pode afetar o desempenho. Por exemplo, o Office Web Components proteger um número de blocos de memória compartilhada com a mesma seção crítica, de modo que segmentos que não modificam uma seção de memória ainda podem ser bloqueados se outro thread modifica a seção de memória. Além disso, muitas das funções para processamento foram importadas de outras fontes do Office que foram criados em um modelo single-threaded, e essas seções de código não é possível executar simultaneamente.
  • erros de falta de memória : O Office Web Components usa uma compilação estática de biblioteca compartilhada do Microsoft Office para lidar com o gerenciamento de memória. As funções de alocação de memória de biblioteca compartilhada do Microsoft Office são criadas para o cliente e não esperam o é carregado e solicitações simultâneas que são comuns em uma solução de servidor. Isso pode limitar a quantidade de memória que os componentes tenham disponíveis para eles, independentemente da quantidade de memória livre no computador.
  • erros de automação aleatoriamente vezes : O Office Web Components usar algumas variáveis de estado que não são totalmente protegidas e se as variáveis alterar enquanto uma função estiver sendo executado, eles podem causar a função falha inesperada. Funções que requerem assíncrona de processamento (como solicitando dados de uma fonte de dados, ou calcular valores de célula em uma planilha) provavelmente gerar esses erros se vários threads estiverem Automatizando simultaneamente.
  • deadlocks de segmento : em algumas situações, o Office Web Components pode encontrar condições de corrida que levam a estados de espera indefinido ou exceções globais, que podem orfão um thread e causar uma perda de recursos. Nessas situações normalmente ocorrem quando os componentes são "estresse"; por exemplo, isso pode ocorrer quando um número alto de clientes fazer solicitações simultâneas para o servidor e cria cada solicitação, automatiza ou destrói sua própria instância do componente. Pool de instâncias pode minimizar o risco de deadlock.
  • Contenção de multi-Thread : se criar separado Office Web Components em separar apartments STA (Single Threaded) dentro de um único processo e os segmentos são executados simultaneamente, você pode encontrar penalidades de desempenho ou problemas de contenção que podem resultar em corrupção de estado ou uso da CPU alta de threads. É recomendável que você manter todas as instâncias em STA mesma, ou se você precisar parellel execução, você criar processos separados para hospedar cada thread STA necessário.
Os problemas com o Office Web Components listados acima são design limitações são consistentes com seu deve ser usam controles de ActiveX como lado do cliente. Nenhuma solução alternativa ou correção está disponível para essas limitações de Office Web Components.

Embora você pode executar o Office Web Components lado do servidor e isso funcionará para um site pequeno, esses problemas podem impedir a escala a solução até a alça de um site grande com tráfego intenso. Se você planeja uma nova solução, considere os requisitos de escala cuidadosamente e decidir se o Office Web Components é adequada para atender à demanda. Se você precisar de uma solução mais escalonável, existem muitos produtos de terceiros que podem executar operações semelhantes e projetados especificamente para operações do lado do servidor. Esses produtos de terceiros podem ser melhor adequados às suas necessidades.

Se você usar atualmente o Office Web Components em sua solução de Web do lado do servidor, considere a atualização para a versão mais recente do Office Web Components. Alguns problemas de erro de automação de problemas de erro de memória e foram solucionados em versões mais recentes do Office Web Components. No entanto, o design do Office Web Components como controles ActiveX não fará-los totalmente confiável para projetos da Web de grande escala se os componentes são executados lado do servidor.

Referências

Para baixar a versão mais recente do Office Web Components, consulte o seguinte site do Office:
http://www.microsoft.com/downloads/details.aspx?familyid=7287252C-402E-4F72-97A5-E0FD290D4B76
Para obter mais informações sobre situações em que um desenvolvedor pode querer usar servidor do Office Web Components, clique nos números abaixo para ler os artigos na Base de dados de Conhecimento da Microsoft:
286278Como criar um interativo Office gráfico lado do servidor usando ASP
294798Como usar o ASP para criar uma tabela dinâmica do Office XP e exibir os resultados como HTML

Propriedades

ID do artigo: 317316 - Última revisão: terça-feira, 31 de janeiro de 2006 - Revisão: 5.2
A informação contida neste artigo aplica-se a:
  • Microsoft Office 2003 Web Components
  • Microsoft Office XP Web Components
  • Microsoft Office Chart Component 9.0
  • Microsoft Office Spreadsheet Component 9.0
  • Microsoft Office PivotTable Component 9.0
Palavras-chave: 
kbmt kbdownload kbinfo kbofficewebchart kbofficewebpivot kbofficewebspread KB317316 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 317316

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com