Suomi.fi för tjänsteutvecklare
Gå direkt till innehållet.

Överföring av stora bilagor i Informationsleden

I den här artikeln berättar vi om dataöverföringen av stora bilagor och faktorer som påverkar dess effektivitet i Suomi.fi-informationsleden. Artikeln behandlar överföring av SOAP-bilagor, men samma allmänna principer gäller även överföring av REST-bilagor.

Artikeln beskriver Informationsledens basfall: kundsystemet skickar först bilagorna till sin egen anslutningsserver, varifrån de skickas till den mottagande anslutningsservern och därifrån vidare till det mottagande kundsystemet. Informationsledens prestanda vid överföring av stora bilagor har testats med hjälp av molntjänster. Mätvärdena från testerna är riktgivande och åskådliggör prestandaprofilen för överföring av Informationsledens bilagor.

Dataöverföringssätt och testutrustning

Vid överföring av stora datamängder i Informationsleden rekommenderas det att man använder bilagor. Informationsleden stöder två sätt att överföra bilagor från version 6.9.x:

  • SOAP with Attachments
  • Message Transmission Optimization Mechanism with XOP.

SOAP with Attachments (SwA)

SOAP with Attachments är Informationsledens ursprungliga överföringssätt av bilagor, som också har stötts i tidigare versioner av Informationsleden.

I Informationsleden skickas varje bilaga till SOAP with Attachments som ett eget multipart-avsnitt. Informationsleden stöder inte sändning av flera bilagor inom en multipart-del.

I prestandamätningar i anslutning till överföring av bilagor har man i huvudsak använt SOAP with Attachments.

Bekanta dig närmare med den tekniska definitionen av överföringssättet SOAP with Attachments (på engelska)Öppnas i ett nytt fönster..

Message Transmission Optimization Mechanism with XOP (MTOM)

Från och med version 6.9.x stöder Informationsleden också överföringssättet Message Transmission Optimization Mechanism.

Med tanke på anslutningsservrarna skiljer sig MTOM inte märkbart från SwA-överföringssättet och vid testmätningarna observerades ingen betydande skillnad i prestanda mellan överföringssätten. Observationerna av noggrannare prestandamätningar med SwA-överföringsmetoden gäller alltså även MTOM-överföringssättet.

Läs mer om den tekniska definitionen av överföringssättet Message Transmission Optimization Mechanism (på engelska)Öppnas i ett nytt fönster..

Testutrustning för överföring av bilagor

Överföringen av bilagor testades i huvudsak i AWS-miljön. Som anslutningsservrar användes AWS:s Ec2-instansens m4.large-modeller:

  • processor: 2.4 GHz Intel Xeon® E5-2676 v3 (Haswell), 2 vCPU
  • minne: 8 GB
  • disk: 120 GB classic/magnetic.

Utanför AWS användes anslutningsservrar med motsvarande prestanda för testning.

Bekanta dig närmare med AWS typer av EC2-instan (på engelska)Öppnas i ett nytt fönster..

Överföringshastighet för stora bilagor i Informationsleden

Informationsledens överföringshastighet (SwA) har testats med olika filstorlekar mellan 1 MB och 30 GB. Överföring av bilagor i tiotals gigabyte är inte en typisk meddelandetrafik i Informationsleden, men man har märkt att överföringarnas varaktighet även då förblir linjär i förhållande till filstorleken. I praktiken innebär detta att dataöverföringstiden i Informationsleden ökar stadigt när filstorleken ökar. Det finns alltså ingen egentlig storleksgräns för de bilagor som överförs via Informationsleden. De enda konkreta gränserna som påverkar överföringen är tillgänglig tid och diskutrymme.

I testerna har överföringen av bilagan via Informationsleden i första hand jämförts direkt med SOAP-överföringen mellan kundsystemen. Den största skillnaden i den totala längden på dessa överföringssätt är processningen av kommunikationen på anslutningsservrarna. Till exempel leder kryptering och verifiering av trafiken till en fördröjning i processen som ökar enligt meddelandets storlek. Om anslutningsservrarnas prestanda har planerats korrekt med tanke på omgivningen ökar processfördröjningen jämnt i takt med att filbilagorna blir större.

Effekten av den fördröjning som processningen orsakar kan kontrolleras med tillräcklig resursfördelning för anslutningsservrarna. Då kan även stora bilagor överföras relativt effektivt via Informationsleden. I mätningarna med bilagor och testkonfigurationer av olika storlek var överföringen av stora bilagor via Informationsleden i normalfallet i genomsnitt cirka 25 % långsammare än direkt SOAP-överföring. Om processningen av meddelandetrafiken på anslutningsservrarna fördröjdes på grund av otillräckliga resurser, ökade processfördröjningen i den totala överföringstiden och prestationsdifferensen blev klart större än genomsnittet.

Effekter av resursfördelningen för anslutningsservrar på överföringen av bilagor

Vid konfiguration enligt figur 1 streamar den sändande anslutningsservern förfrågan från kundsystemet och bifogade filer till den mottagande anslutningsservern. Den mottagande anslutningsservern sparar det mottagna dataflödet i ett diskbaserat cacheminne. Det diskbaserade cacheminnet sparar alla bilagor som följer med meddelandet i en tillfällig fil. Den tillfälliga filen tas bort när filens innehåll har skickats vidare till det mottagande kundsystemet.

Bild 1. Dataöverföring mellan kundsystemen i Informationsleden

Centralminnets betydelse

För att testa överföringen av bilagor användes servrar med 8 GB minne, där minnet inte konstaterades utgöra någon betydande prestandabegränsning för meddelandehanteringen. I de tekniska rekommendationerna för Informationsledens anslutningsservrar uppmanas man att dimensionera anslutningsserverns minnesinställningar enligt belastningen. I särskilt krävande överföringsförhållanden lönar det sig att överväga att öka minnet, men utifrån mätningarna är det inte en av de viktigaste faktorerna som påverkar överföringshastigheten för stora bilagor.

Betydelsen av diskutrymme och diskhastighet

Tack vare det skivbaserade cacheminnet har den mottagande anslutningsserverns lediga diskutrymme en nyckelroll för att överföringen av bilagorna ska lyckas. Om de bilagor som skickas tillsammans med ett enskilt meddelande är så stora att den tillfälliga fil som skapas av det diskbaserade cacheminnet inte ryms på serverns skiva, misslyckas sändningen av bilagorna i mottagningsskedet.

Det diskbaserade cacheminne som den mottagande anslutningsservern använder kan också påverka den totala överföringshastigheten för bilagor. Därför ska hastigheten på det diskminne som anslutningsservrarna använder beaktas när dataöverföringskapaciteten planeras.

Till exempel när en bilaga på 1 GB överfördes med ett nät med hastigheten 52 Mb/s fick man med olika diskhastigheter följande resultat:

Diskens genomsnittliga läshastighet

Överföringstid, direkt SOAP (s)

Överföringstid, Informations-leden (s)

Informations-leden långsammare än direkt SOAP-överföring ~

16 Mt/s

164

207

26 %

72 Mt/s

172

191

11 %

Tabell 1. Betydelsen av diskens hastighet vid dataöverföring.

Med en snabbare disk kunde prestandan förbättras med cirka 15 procentenheter redan med en filstorlek på 1 GB. I genomsnitt förbättrade ändringen överföringshastigheten för Informationsleden med cirka 17 procentenheter för alla testade filstorlekar.

Betydelsen av prestationskapacitet

Dataöverföringen via Informationsleden kräver ytterligare processning på anslutningsservrarna i jämförelse med SOAP-överföringen. Man strävar efter att behandla data genast när de tas emot på nätet. Detta innebär att belastningen på anslutningsservrarna ökar när stora bilagor överförs i takt med att överföringshastigheten ökar. Då kan anslutningsserverns processorkapacitet bli en av de viktigaste faktorerna som begränsar dataöverföringshastigheten mellan kundsystemen.

I testerna observerades att processorbelastningen på anslutningsservrarna ökade kraftigt när stora bilagor överfördes med snabba nätförbindelser. I extrema testsituationer begränsade prestandakapaciteten överföringen så att processfördröjningens andel av den totala överföringstiden ökade kraftigt och dataöverföringen via Informationsleden var klart långsammare än den direkta SOAP-överföringen.

Vid överföring av 1 GB bifogad fil fick man följande resultat:

Genomsnittlig processor-belastning

Näthastighet

Överföringstid, direkt SOAP (s)

Överföringstid, Informations-leden (s)

Informations-leden långsammare än direkt SOAP-över-föring ~

0,15

175,6 Mb/s

43,6

55,4

27 %

1

568 Mb/s

16,6

71

328 %

Tabell 2. Betydelsen av prestationsbelastning vid dataöverföring.

Av resultaten framgår att ett snabbare nätverk orsakar en så stor belastning på processorn att dataöverföringen från anslutningsservern blir betydligt långsammare både direkt med SOAP-överföringen och med en långsammare nätförbindelse jämfört med överföringen över Informationsleden. På basis av mätningarna blir prestationsförmågan som inte räcker till för överföringsförhållandena den mest betydande begränsningen av prestandan i överföringen av bilagor i Informationsleden.

Sammanfattning

Utifrån ovan presenterade observationer kan man konstatera att det viktigaste i en effektiv överföring av stora datamängder är att resursfördela de anslutningsservrar som anslutits till Informationsleden så att de lämpar sig för användningsförhållandena. Ett snabbt nätverk och tjänster som kräver stora bilagor ställer höga krav även på anslutningsserverns processnings- och diskhastighet. Bilagornas storlek begränsar dock inte i sig användningen av Informationsleden eftersom det inte finns någon övre gräns för filstorleken som är beroende av Informationsleden. På grund av diskcacheminnet ska de bilagor som skickas dock i sin helhet rymmas på den mottagande anslutningsserverns disk.

Överföringen av bilagor via Informationsleden innehåller processfördröjning i förhållande till överföringen. Fördröjningen påverkar i hög grad hur prestationsduglig överföringen via Informationsleden är jämfört med direkt överföring. Särskilt anslutningsserverns processorkapacitet har en tydlig inverkan på uppkomsten av en överföringsfördröjning. Ett långsamt diskminne hos den mottagande anslutningsserverns kan leda till en lindrig fördröjning av dataöverföringen, medan otillräcklig processorkapacitet hos anslutningsservern kan höja processfördröjningen till en klart större faktor än den egentliga överföringsfördröjningen med tanke på den totala överföringstiden. Då rasar effektiviteten i överföringen av bilagor via Informationsleden jämfört med direkt överföring. Med tillräcklig prestandakapacitet för överföringsförhållandena blir processfördröjningen dock mindre än överföringsfördröjningen, varvid Informationsledens prestanda förblir god.


Uppdaterad: 9.10.2024

Är du nöjd med innehållet på denna sida?