O serviço ASP.NET+Web realiza compartilhamento de software
Autor:Eve Cole
Data da Última Atualização:2009-06-30 15:39:48
Resumo Este artigo propõe um novo método de compartilhamento de software por meio do compartilhamento de funções de software. A vantagem desse método é que ele realiza o compartilhamento de funções de software na forma de invocação remota de serviços Web sem copiar o software para o cliente e também reduz o custo. Alguma redundância de recursos na rede também conduz ao compartilhamento de serviços Web existentes e à integração de novos sistemas. Além disso, este artigo analisa a eficácia deste novo método através de um exemplo do módulo de verificação de identidade do aluno.
introdução
O compartilhamento de software tradicional consiste em copiar o software do servidor de rede para o cliente para realizar o compartilhamento de software. A desvantagem desse método é que cada cliente que precisa usar o software deve copiá-lo primeiro, resultando em redundância de espaço na rede. resulta em uma grande quantidade de dados isolados e lógica de negócios duplicada.
Os serviços da Web fornecem uma solução viável para alcançar a interoperabilidade de dados e sistemas, permitindo a troca de dados e a invocação remota da lógica do aplicativo usando mensagens XML, permitindo que os dados passem por firewalls e movendo dados entre sistemas heterogêneos.
Este artigo propõe um novo método de compartilhamento de software por meio do compartilhamento de funções de software para resolver problemas tradicionais de compartilhamento de software. A vantagem desse método é que o compartilhamento de funções de software é obtido na forma de invocação remota de serviços da Web sem copiar o software para o cliente. também reduz alguma redundância de recursos na rede e também conduz ao compartilhamento de serviços Web existentes e à integração de novos sistemas. Além disso, este artigo analisa a eficácia deste novo método através de um exemplo do módulo de verificação de identidade do aluno.
O significado do compartilhamento de software
Com a popularização e o desenvolvimento de aplicativos de computador, softwares de computador práticos foram desenvolvidos e aplicados em diversos setores e em empresas ou departamentos tão pequenos. Esses softwares melhoraram muito a eficiência do trabalho e o nível de gestão moderno da empresa, e se tornaram o núcleo da operação e gestão comercial da empresa. Mas a adoção generalizada de software personalizado em quase todos os departamentos da maioria das empresas resultou em um grande número de blocos de lógica de negócios úteis, mas isolados e repetitivos. Se a duplicação do projeto puder ser evitada durante o projeto e desenvolvimento, e o compartilhamento de funções de software for usado para alcançar as mesmas funções de cada módulo, isso economizará muito nos custos de desenvolvimento de software e fornecerá uma boa base arquitetônica para futuras atualizações e integração do sistema. Além disso, a lógica de negócios existente pode ser compartilhada com outras aplicações através de uma pequena quantidade de melhorias, reduzindo assim os custos de desenvolvimento.
Como os ambientes nos quais cada aplicativo é desenvolvido são diversos e a tecnologia está em constante evolução, no passado era difícil compartilhar aplicativos existentes para criar um conjunto de recursos. Felizmente, o surgimento da tecnologia de serviços da Web tornou possível realizar o compartilhamento de software. O serviço da Web de funções de software fornece lógica de negócios que pode ser compartilhada na Internet e, em última análise, forma uma abertura baseada em vários sistemas de componentes funcionais. A seguir, discutiremos como usar a tecnologia de serviços da Web para realizar o compartilhamento de software.
Compartilhamento de software baseado em tecnologia de Web Services
1. Introdução à tecnologia de Web Services
Os Web Services podem ser considerados APIs implantadas na Internet, que podem ser facilmente integradas e chamadas por aplicativos e até mesmo por outros Web Services para formar novos serviços de aplicativos. Possui encapsulamento completo, acoplamento fraco e alta capacidade de integração. Não há dúvida de que a tecnologia de serviços Web se tornará a tecnologia dominante da próxima geração da Web, que é a personificação do “software como serviço”.
A arquitetura dos Web Services é a seguinte, consistindo em solicitante de serviço, agente de serviço e provedor de serviço:
O provedor de serviços da Web é o proprietário do serviço da Web. Ele se registra no agente de serviço para configurar e publicar o serviço e espera pacientemente para fornecer suas próprias funções a outros serviços e usuários. , que usa a operação de pesquisa para recuperar a descrição do serviço do corretor de serviços e, em seguida, vincular-se ao provedor de serviços e invocar ou interagir com o serviço da Web.
Um provedor de serviços da Web é equivalente a um intermediário, que conecta um solicitante de serviços da Web a um provedor de serviços da Web apropriado. Geralmente, o UDDI fornece um mecanismo para localizar serviços da Web de forma dinâmica para solicitantes de serviços.
2. Implementação de compartilhamento de software baseado em Web Services
No processo de desenvolvimento de software, as pessoas geralmente dividem o software em diferentes módulos de acordo com as funções para facilitar a reorganização, reutilização, modificação e atualização das funções do módulo. Para realizar o compartilhamento de software através da tecnologia de Web Services, também é necessário primeiro dividir o sistema integrado em módulos de acordo com as funções, depois criar serviços Web para implementar esses módulos funcionais, a fim de tornar os serviços Web acessíveis, também é necessário publicar; descrições de serviço (implantar serviços da Web) para que outros módulos possam ser encontrados e chamados. Desta forma, funções de software implementadas como serviços Web podem ser compartilhadas por aplicações e até mesmo por outros serviços Web.
Quando os solicitantes de serviços, como aplicativos ou outros serviços da Web, precisam chamar os serviços da Web, eles primeiro recuperam a descrição do serviço ou consultam o tipo de serviço necessário no centro de registro de serviços. Quando o serviço necessário for encontrado, a descrição do serviço poderá ser usada para vincular-se ao provedor de serviços e chamar o serviço correspondente.
O principal produto recém-lançado da Microsoft, Visual Studio.NET, é conhecido como a ferramenta preferida para o desenvolvimento de serviços da Web. Usando o Visual Studio.NET, você pode facilmente criar e chamar serviços da Web. Abaixo será dado um exemplo específico de compartilhamento de software baseado em tecnologia de Web Services.
3. Exemplos de aplicação de compartilhamento de software: implementação compartilhada do módulo de verificação de identidade do aluno.
Atualmente, existem muitos sistemas de software em faculdades e universidades, como sistemas de seleção de cursos, sistemas de consulta de notas, sistemas de cursos on-line, sistemas de bibliotecas, sistemas financeiros de estudantes, etc. Como cada sistema é independente um do outro, cada sistema possui um módulo de verificação de identidade do aluno, o que resulta na duplicação funcional do design, além disso, cada sistema é independente um do outro e os alunos precisam lembrar as senhas dos diferentes sistemas;
Tendo em vista a situação acima e a atual rede de campus altamente desenvolvida, podemos usar completamente os serviços da Web para realizar o compartilhamento de módulos de verificação de identidade dos alunos. A seguir será apresentado o processo de criação e chamada do serviço web de autenticação de identidade do aluno usando a linguagem C# usando o ambiente Visual Studio.NET.
1) Criação de serviços Web
O módulo de autenticação de identidade do aluno consiste em 1 serviço web:
public Boolean ValidUser (string ID do usuário, string Pwd)
O serviço Web ValidUser é usado para verificar a identidade do aluno. Foi criada uma tabela básica de informações do aluno Student no banco de dados Sql Server StudentsInfo, na qual os campos UserID e Pwd armazenam o código de usuário e a senha do aluno respectivamente.
A seguir será apresentado em detalhes o processo de criação de serviços da Web:
a Execute o ambiente de desenvolvimento do Visual Studio.NET e crie um novo projeto WSStudentLogin do tipo "ASP.NET Web Service".
b Implementação de código específico de serviços Web.
usando System.Data.SqlClient;
//Omitir código...
classe pública Service1: System.Web.Services.WebService
{
stringConStr="";
ConnStr="DATABASE=StudentsInfo;SERVER=10.1.111.19;UID=sa;PWD=;";
//Omitir código...
[WebMethod]
public Boolean ValidUser (string ID do usuário, string Pwd)
{
Sinalizador booleano = falso;
stringsqlStr="";
//Cria um objeto de conexão com o banco de dados
SqlConnection tempConn=new SqlConnection(ConnStr);
sqlStr="selecione * do aluno onde ID='"+userID+"' e pwd='"+Pwd+"';";
//Cria um objeto de comando
SqlCommand tempComm=new SqlCommand(sqlStr,tempConn);
tempConn.Open();
SqlDataReader tempReader=tempComm.ExecuteReader(CommandBehavior.CloseConnection);
if (tempReader.HasRows) flag=true;
tempReader.Close();
tempComm.Dispose();
bandeira de retorno;
}
}
Deve-se observar que apenas os métodos descritos com [WebMethod] são serviços Web que podem ser chamados remotamente. Portanto, [WebMethod] na frente do método não pode ser omitido.
Para disponibilizar um serviço web para outros, ele deve ser implantado em um servidor web acessível aos clientes que você deseja oferecer suporte. Para implementar o serviço da web em um servidor diferente do servidor de desenvolvimento, é possível incluir um projeto de instalação da web ou copiar os arquivos necessários no servidor de destino. Devido a limitações de espaço, este artigo não discute isso detalhadamente. Supõe-se que o serviço Web neste exemplo seja implementado no servidor de desenvolvimento.
Depois de criar e implantar o serviço Web, podemos chamar o serviço Web correspondente no cliente. A seguir descreve como localizar e fazer referência a funções de serviço da Web no cliente.
2) Chamada de serviço da Web
O processo de utilização de um serviço Web é, na verdade, o processo de vincular o usuário do serviço Web ao serviço Web e chamar seus métodos. Para simplificar o processo de vinculação. Visual Studio.NET fornece métodos de classes de proxy de serviço. A classe proxy de serviço gera uma classe local baseada no documento de descrição do serviço Web (XXX.WSDL). Durante o processo de execução, o cliente usa as informações da classe proxy para acessar o serviço Web e implementar a invocação real do método. O Visual Studio.NET nos fornece uma maneira simples de realizar esse processo:
a Crie um programa cliente de acesso a serviços da Web.
Os programas clientes de acesso a serviços da Web podem ser vários tipos de aplicativos ou outros serviços da Web. Aqui, criamos um novo projeto WebApplication2 do tipo "ASP.NET WEB Application".
b. Referência de serviço.
Primeiro, clique em Adicionar referência da Web no menu Projeto. Em seguida, como o serviço Web neste exemplo está localizado no computador local, clicamos no link "Serviço Web no computador local" no painel do navegador. Em seguida, clique no link Service1 da lista fornecida para recuperar informações sobre o serviço web. Em seguida, clique em Adicionar referência para adicionar uma referência da web ao serviço da web de destino. O Visual Studio.NET fará download da descrição do serviço e gerará uma classe de proxy que serve como interface entre o aplicativo e o serviço Web.
c. Exemplos de códigos específicos para chamar serviços da Web em programas clientes.
private void Button1_Click (remetente do objeto, System.EventArgs e) { //Criar objeto de classe proxy localhost.Service1 ClientProxy=new localhost.Service1(); tentar {//Acessar serviços da Web por meio de objetos de classe de código if (ClientProxy.ValidUser(TxtUserId.Text,txtPwd.Text)) Label1.Text="OK"; outro Label1.Text="ERRO"; } pegar (e) {jogar e;} finalmente {ClientProxy.Dispose();} } |
outro
A tecnologia de Web Services fornece uma boa base técnica para a realização de compartilhamento de software e integração de sistemas com base em sistemas de informação existentes. Contudo, é necessário tornar o compartilhamento de software baseado na tecnologia de Web Service verdadeiramente prático. Também precisamos resolver as seguintes questões: primeiro, segurança e confiabilidade, primeiro, a confiabilidade da conexão de transmissão da rede de serviços Web e, segundo, a confiabilidade do conteúdo do serviço Web, ou seja, garantir a integridade e confidencialidade dos dados. A segunda é o controle dos direitos de uso do serviço. Os serviços da Web são a personificação do "software como serviço". Quem está proibido de usar este serviço, quem está autorizado a usar este serviço, como cobrar pela utilização deste serviço, etc., todos precisam ser resolvidos no problema de uso real. Além disso, questões como a capacidade de suporte dos serviços Web, a implantação e descoberta de serviços Web e o tratamento de falhas de chamadas de serviços Web pelos clientes também são questões que precisam ser resolvidas.
resumo
Este artigo propõe a realização do compartilhamento de software a partir da perspectiva do compartilhamento de funções de software, discute o uso da tecnologia de serviços da Web para realizar o compartilhamento remoto de funções de software e usa o módulo de verificação do corpo discente para analisar a eficácia e as vantagens do compartilhamento de funções de software. A pesquisa sobre compartilhamento de funções de software é de grande importância para a realização da computação distribuída e requer mais pesquisas.