Por que preciso do ArcGIS Server apenas para hospedar o ArcObjects em um serviço da web?

8

Eu recebo muito essa pergunta dos desenvolvedores da Web e gostaria de ter uma resposta curta e concisa para eles ...

Por que preciso do ArcGIS Server apenas para hospedar o ArcObjects em um serviço da web?

Kirk Kuykendall
fonte

Respostas:

4

Você pode usar o ArcObjects SDK para criar seus próprios serviços sem problemas em um servidor, desde que você tenha uma licença apropriada. Eu tenho vários serviços que usamos que não usam os serviços SOC / SOM no AGS, mas ainda são consumidores do ArcObjects.

O motivo pelo qual você precisa do AGS é um problema de licença; você está certo, você pode usar o tempo de execução do ArcEngine para fazer o que precisa, mas isso não é aceitável.

DEWright
fonte
Obrigado @DEWright. Então você está dizendo que posso iniciar um encadeamento a partir do meu serviço da Web, definir o estado do apartamento do encadeamento como STA, inicializar a licença no servidor e usar arcobjects?
Kirk Kuykendall
Está correto; da mesma maneira que você pode com qualquer extensão do ArcGIS Desktop; você apenas usa a opção ArcGIS Server para a licença e obtém acesso ao nível da API apropriado. Fazemos isso conversando muito com as classes GeoDatabse, além de outras funções em nossos serviços da web.
DEWright
3

ATÉ ONDE SEI. Como o licenciamento ESRI não permite que você instale o ArcObjects do Desktop / Engine e execute-o como um servidor. (Precisa encontrar uma referência a um contrato de licença, afirmando que ...)

MathiasWestin
fonte
Sim, eu também li isso.
Donny V. 25/05
Mas mesmo que eu esteja licenciado para usar o servidor ArcGIS, pensei que também houvesse algum problema relacionado ao modelo de encadeamento que impede o uso de objetos de arco ao implementar, por exemplo, um serviço REST WCF sem SOC envolvido.
Kirk Kuykendall
@ Kirk-Kuykendall É verdade que as APIs do servidor são feitas para rodar em um servidor e o design do servidor facilita a criação e o dimensionamento da solução com mais SOCs, etc., sem lidar com problemas de encadeamento. O principal problema é provavelmente que as APIs nos produtos de desktop não são feitas para execução em um servidor e possuem ganchos para itens da GUI e para suportar a execução em um ambiente que não seja da GUI. A ESRI precisaria documentar exatamente quais APIs podem ser usadas ou separadas as principais APIs e GUI ainda mais. Se as pessoas como essa idéia que é possível fazer uma idéia sobre ideas.arcgis.com e voto para ele ...
MathiasWestin
Na verdade, o SDK tem muitas das APIs divididas entre a interface do usuário e as classes de suporte; você só precisa ter certeza de passar por eles corretamente. A maior coisa que vi foi garantir que você lide com a memória e os objetos corretamente no lado do servidor; o AppPools precisa suportar uma única instância; você começa a tentar executar várias instâncias das bibliotecas do ArcObj e vi falhas explosivas.
DEWright