Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione
Documentazione di Apigee X. Informazioni
Questo documento spiega come configurare il timeout della connessione per i processori di messaggi Apigee Edge.
Il timeout della connessione rappresenta il tempo per il quale il processore di messaggi attende prima di stabilire
connessione con il server di destinazione. Il valore predefinito della proprietà di timeout della connessione nella
Il processore di messaggi ha una durata di 3
secondi. Il periodo di timeout è applicabile ai
di backend configurati nella configurazione dell'endpoint di destinazione
Criterio ServiceCallout
del proxy API.
Il timeout della connessione per i processori di messaggi può essere aumentato o diminuito rispetto al valore predefinito di 3
secondi in base alle tue esigenze. Può essere configurato nei seguenti modi:
- Nel proxy API
- Nell'endpoint di destinazione
- Nel criterio
ServiceCallout
- Sul processore di messaggi
Le seguenti proprietà controllano il timeout della connessione sui processori di messaggi:
Nome proprietà | Località | Descrizione |
---|---|---|
connect.timeout.millis |
Proxy API:
|
Questo è il tempo massimo che il processore di messaggi attende per connettersi al server di destinazione.
Per impostazione predefinita, questa proprietà utilizza il valore impostato per
Proprietà Se questa proprietà viene modificata con un nuovo valore di timeout per il server di destinazione associato con un proxy API, viene influenzata solo l'ora di connessione per quel server di destinazione. |
HTTPClient.connect.timeout.millis |
processore di messaggi |
Questo è il tempo massimo che il processore di messaggi attende per connettersi al server di destinazione. Questa proprietà viene utilizzata per tutti i proxy API in esecuzione su questo processore di messaggi.
Il valore predefinito di questa proprietà è
Puoi modificare questa proprietà come spiegato in
Configura il timeout della connessione sui processori di messaggi di seguito. In alternativa, puoi sovrascrivere questo valore
impostando la proprietà |
Prima di iniziare
Prima di seguire la procedura descritta in questo documento, assicurati di aver compreso i seguenti argomenti:
- Se non hai familiarità con il timeout della connessione, consulta le
connect.timeout.millis
descrizione della struttura in Specifica della proprietà di trasporto di TargetEndpoint. - Se non hai familiarità con la configurazione delle proprietà per Edge su Private Cloud, leggi Come configurare Edge.
Configurazione del timeout della connessione nel proxy API
Il timeout della connessione può essere configurato nel proxy API nelle seguenti posizioni:
- Endpoint di destinazione
- Criterio
ServiceCallout
Configurazione del timeout della connessione nell'endpoint di destinazione del proxy API
Questa sezione spiega come configurare il timeout della connessione nell'endpoint di destinazione del proxy API.
Il timeout della connessione può essere configurato tramite la proprietà connect.timeout.millis
,
che rappresenta il valore di timeout della connessione in millisecondi.
- Nella UI Edge, seleziona il proxy API specifico in cui desideri configurare il nuovo il valore di timeout della connessione.
- Seleziona l'endpoint di destinazione specifico che vuoi modificare.
- Aggiungi la proprietà
connect.timeout.millis
con un valore appropriato nel campo Elemento<HTTPTargetConnection>
nella configurazioneTargetEndpoint
.Ad esempio, per modificare il timeout della connessione in
5
secondi, aggiungi il parametro seguente blocco di codice:<Properties> <Property name="connect.timeout.millis">5000</Property> </Properties>
Poiché la proprietà
connect.timeout.millis
è in millisecondi, il valore di5
secondi corrispondono a5000
.I seguenti esempi mostrano come configurare il timeout della connessione nell'endpoint di destinazione configurazione del proxy API:
Esempio di configurazione dell'endpoint di destinazione utilizzando l'URL per il server di backend
<TargetEndpoint name="default"> <HTTPTargetConnection> <URL>https://mocktarget.apigee.net/json</URL> <Properties> <Property name="connect.timeout.millis">5000</Property> </Properties> </HTTPTargetConnection> </TargetEndpoint>
Esempio di configurazione di endpoint di destinazione utilizzando il server di destinazione
<TargetEndpoint name="default"> <HTTPTargetConnection> <LoadBalancer> <Server name="target1" /> <Server name="target2" /> </LoadBalancer> <Properties> <Property name="connect.timeout.millis">5000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </TargetEndpoint>
- Salva le modifiche apportate al proxy API.
Configurazione del timeout della connessione nel criterio ServiceCallout del proxy API
Questa sezione spiega come configurare il timeout della connessione nell'ServiceCallout
del proxy API. Il timeout della connessione può essere configurato tramite
connect.timeout.millis
, che rappresenta il valore dell'ora di connessione in
millisecondi.
Per configurare il timeout della connessione nel criterio ServiceCallout
utilizzando il
Proprietà connect.timeout.millis
:
- Nella UI Edge, seleziona il proxy API specifico in cui desideri configurare il nuovo
valore di timeout della connessione per il criterio
ServiceCallout
. - Seleziona il criterio
ServiceCallout
specifico che vuoi modificare. - Aggiungi la proprietà
connect.timeout.millis
con un valore appropriato sotto il campo Elemento<HTTPTargetConnection>
nella configurazioneTargetEndpoint
.Ad esempio, per modificare il timeout della connessione in
5
secondi, aggiungi il seguente blocco di codice:<Properties> <Property name="connect.timeout.millis">5000</Property> </Properties>
Poiché la proprietà
connect.timeout.millis
è in millisecondi, il valore di5
secondi corrispondono a5000
.I seguenti esempi mostrano come configurare il timeout della connessione in Criterio
ServiceCallout
del tuo proxy API:Esempio di configurazione di criteri ServiceCallout con l'URL del server di backend
<ServiceCallout name="Service-Callout-1"> <DisplayName>Service Callout-1</DisplayName> <HTTPTargetConnection> <Properties> <Property name="connect.timeout.millis">5000</Property> </Properties> <URL>https://mocktarget.apigee.net/json</URL> </HTTPTargetConnection> </ServiceCallout>
Esempio di configurazione di criteri ServiceCallout con l'utilizzo del server di destinazione
<ServiceCallout enabled="true" name="Service-Callout-1"> <DisplayName>Service Callout-1</DisplayName> <Response>calloutResponse</Response> <HTTPTargetConnection> <LoadBalancer> <Server name="target1" /> <Server name="target2" /> </LoadBalancer> <Properties> <Property name="connect.timeout.millis">5000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </ServiceCallout>
- Salva le modifiche apportate al proxy API.
Configurare il timeout della connessione sui processori di messaggi
Questa sezione spiega come configurare il timeout della connessione nei processori di messaggi.
Il timeout della connessione può essere configurato tramite la proprietà
conf_http_HTTPClient.connect.timeout.millis
, che rappresenta il timeout della connessione
in millisecondi sul componente Processore di messaggi, utilizzando il token in base
sintassi descritta in
Come configurare Edge.
Per configurare il timeout della connessione sui processori di messaggi, segui questi passaggi:
- Sul computer del processore di messaggi, apri il file seguente in un editor. In caso contrario
esiste già, quindi lo creeremo.
/opt/apigee/customer/application/message-processor.properties
Ad esempio, per aprire il file utilizzando
vi
, inserisci quanto segue:vi /opt/apigee/customer/application/message-processor.properties
- Aggiungi al file delle proprietà una riga nel formato seguente, sostituendo il valore per
TIME_IN_MILLISECONDS:
conf_http_HTTPClient.connect.timeout.millis=TIME_IN_MILLISECONDS
Ad esempio, per modificare il timeout della connessione sul processore di messaggi impostandolo su
5
secondi, aggiungi la seguente riga:conf_http_HTTPClient.connect.timeout.millis=5000
- Salva le modifiche.
- Verifica che il file delle proprietà appartenga all'utente
apigee
, come mostrato di seguito:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Riavvia il processore di messaggi come mostrato di seguito:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Se utilizzi più di un processore di messaggi, ripeti i passaggi precedenti su tutte le Processori.
Verifica del timeout della connessione sui processori di messaggi
In questa sezione viene spiegato come verificare che il timeout della connessione sia stato modificato correttamente il giorno processori di messaggi.
Anche se utilizzi il token conf_http_HTTPClient.connect.timeout.millis
per impostare
il timeout della connessione sul processore di messaggi, devi verificare se la proprietà effettiva
HTTPClient.connect.timeout.millis
è stato impostato con il nuovo valore.
- Cerca la proprietà sul computer
HTTPTransport.connect.timeout.millis
in directory/opt/apigee/edge-message-processor/conf
e controlla se è sia stato impostato con il nuovo valore come mostrato di seguito:grep -ri "HTTPClient.connect.timeout.millis" /opt/apigee/edge-message-processor/conf
- Se il nuovo valore di timeout della connessione viene impostato correttamente sul processore di messaggi,
precedente mostra il nuovo valore nel file
http.properties
.Il risultato di esempio del comando precedente dopo aver configurato il timeout della connessione su
5
secondo è il seguente:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.connect.timeout.millis=5000
Nell'output di esempio sopra riportato, puoi notare che la proprietà
HTTPClient.connect.timeout.millis
è stato impostato con il nuovo valore5000
inhttp.properties
. Ciò indica che il timeout della connessione è stato configurato correttamente su5
secondi sul messaggio Processore. - Se visualizzi ancora il valore precedente per la proprietà
HTTPClient.connect.timeout.millis
, quindi verifica di aver seguito tutti i passaggi descritti nella Configurare il timeout della connessione sui processori di messaggi in modo corretto. Se hai saltato qualche passaggio, ripeti tutti i passaggi correttamente. - Se non riesci ancora a modificare il timeout della connessione, contatta l'assistenza Apigee Edge di Google Cloud.