Considerações do Tempo de Execução para Desenvolvedores de Aplicativos SIP

Considere os comportamentos do tempo de execução de determinado produto ao gravar aplicativos SIP (Session Initiation Protocol).

O contêiner pode aceitar esquemas URI não SIP

O contêiner de SIP não rejeitará uma mensagem caso não reconheça o esquema no Uniform Resource Indicator (URI) do pedido porque o contêiner não poderá saber quais esquemas URI são suportados pelos aplicativos. Os elementos SIP podem suportar um URI de pedido com um esquema diferente de sip ou sips, por exemplo, o esquema pres: tem um significado especial para servidores de presença, mas o contêiner não o reconhece. Ele está preparado para determinar se aceitar ou rejeitar um esquema específico. Os elementos SIP pode converter URIs não SIP utilizando algum mecanismo disponível, resultando em URIs SIP, URIs SIPS e outros esquemas, como o esquema URI tel do RFC 2806 [9].

Para Usuários de Transição Para Usuários de Transição: Quando um aplicativo SIP envia um pedido para um URI SIP através do Transport Layer Security (TLS) na versão 6.1, o esquema de URI de pedido é alterado de "sip" para "sips." Na versão atual, o esquema não é alterado. É possível reverter o novo comportamento alterando o código do aplicativo. Com um URI "sips", o comportamento permanece igual após o upgrade da versão 6.1 para a 7.0 ou mais recente. Consulte o tópico Considerações de Pré-migração no centro de informações para obter mais informações.trns

Direcionando pedidos num ambiente de vários contêineres

Num ambiente de vários contêineres (proxy SIP mais contêineres SIP), quando o aplicativo envia um pedido que se destina inicialmente a ser enviado externamente, mas recebido posteriormente, ele deve utilizar o host e portas do elemento mais a frente no balanceamento de cargas (ou um sprayer de IPs para vários proxies IP SIP, ou o proxy SIP se apenas um existir). Se o aplicativo utilizar o nome do host de um contêiner em vez do elemento mais a frente, o pedido pode ser perdido no caso de uma falha.

Por exemplo, um aplicativo envia um pedido INVITE para ele mesmo, mas o pedido deve passar por um sistema de contabilidade externo por meio de um cabeçalho de Rota pressionada. O aplicativo deve configurar o URI do pedido INVITE para o host e porta do elemento mais a frente para garantir a ocorrência do failover. Os pedidos serão roteados para o sistema de contabilidade por meio de uma Rota pressionada, e enviar de volta ao elemento de balanceamento de carga frontal para processamento.

Chamando Eventos do Listener de Sessão

Os eventos SipSessionListener e SipApplicationSessionListener são chamados apenas se um aplicativo pedir o objeto de sessão correspondente. Isso é feito utilizando no seu aplicativo o método mostrado em Tabela 1.
Tabela 1. Os métodos que chamam os eventos do listener da sessão.

Esta tabela lista os métodos que chamam os eventos listener da sessão.

As classes de eventos Método
SipSessionListener getSession()
SipApplicationSessionListener getApplicationSession()

Ativação e passivação da Sessão

Durante a operação normal, este produto nunca migra uma sessão de um servidor para outro. A migração de sessão ocorre apenas como resultado de uma falha do servidor. Contudo, o retorno de chamada de passivação do método SipSessionActivationListener nunca é chamado. Contudo, o retorno de chamada de ativação é chamado quando uma falha força o failover da sessão em um servidor diferente.

Recursos Externos

Se um aplicativo SIP executar E/S intensa ou acessar um banco de dados externo, ele poderá ser bloqueado durante vários milissegundos. Se possível, utilize APIs assíncronas para esses recursos. Quando sobrecarregado, um aplicativo SIP bloqueado pode acionar um Tempo Limite ou uma Retransmissão de Pedido.

Atributos do Aplicativo SIP

Evite interromper objetos grandes ou BLOBs, como Atributos de Sessão do SIP (via API SIPSession.setAttribute). Isso pode danificar o desempenho geral quando combinado com HA (alta disponibilidade). A mesma recomendação aplica-se ao SIPApplicationSession.setAttribute. Na maioria dos casos, o objeto grande pode ser substituído por várias cadeias simples ou compostas.

Ícone que indica o tipo de tópico Tópico de Referência



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rsip_refwrite
Nome do arquivo: rsip_refwrite.html