Vra

Ons het 'n webservice loop op Websphere 6.1 met behulp van die IBM JAX-RPC gebaseer webservices. Kliënt stuur versoeke sonder HTTP header van Transfer-Encoding: chunked (Dit spesifiseer inhoud-lengte). Die reaksie van WebSphere het altyd Transfer-Encoding: chunked in die HTTP-header. Ek neem aan dit sal lei tot die reaksie gestuur in verskeie stukke. In 'n stelsel waar die diens aansoeker en diensverskaffer van mekaar geskei word deur baie tussengangers (soos firewalls en loadbalancers (T1 / F5)) hierdie soort gerammel kan lei tot beduidende latency.

Dit skakel en hierdie skakel praat oor versoek gerammel, maar niks op antwoord te noem.

Is daar 'n manier om WebSphere instel om die oordrag-enkodering nie byvoeg: chunked in die reaksie van die HTTP-header

?
Was dit nuttig?

Oplossing

In WebSphere, die stuk grootte word beheer deur die "Skryf Buffer Size" in die vervoer ketting van die web houer inkomende kanaal. Uit hul dokumentasie:


As veelvuldige skryf verwag om antwoorde te hanteer aan die kliënt, verander die gespesifiseerde vir die Skryf buffer grootte parameter om 'n waarde wat meer geskik is vir jou kliënte waarde. The Write buffer grootte parameter beheer die maksimum bedrag van data per draad wat die Web houer buffers voor die stuur van die versoek vir verwerking. Die standaard waarde is 32768 bytes, wat voldoende is vir die meeste aansoeke. As die grootte van 'n reaksie is groter as die grootte van die skryf buffer, is die reaksie chunked en terug geskryf in verskeie TCP skryf.

Ander wenke

Ek dink nie jy kan Websphere instel om dit te doen nie, maar ook, moet dit nie saak nie. Ek beveel die lees van wat RFC 2616 te sê het oor chunked enkodering; dit nie doen wat jy dink dit beteken.

Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top