Minden, amit az online számlázásról tudnod kell, friss hírek, információk

Ismerd meg a billingót

Másodpercek harca

2014-04-17 - Frissítések
Másodpercek harca

Néhány nappal ezelőtt néhány drága felhasználónk felhívta a figyelmünket, hogy az elektronikus számla letöltésének az ideje "meghosszabbodott", volt olyan akinek fél percet is kellett várnia mire letöltött a számla. Az nagyon messze van az általunk ideálisnak tekintett "pár másodperc"-től.

Figyelem: Fejfádítóan technikai cikk következik! :)

Mi lehet a gond?

Az egész folyamatot elemezve, a következő történik:

  • A szerver generál egy PDF fájlt a számla adatai alapján - ez nem lehetett lassú, mivel kizárólag az elektronikus számlákat érinti a lassulás, a hagyományos nyomtatott számlákat nem
  • A PDF fájlt átadjuk egy Java processnek, ami egyrészt végig ellenőrizi a PDF fájl struktúráját, hogy megfelelő-e.
  • A PDF fájlból készítünk egy hash, amit aláírunk a tanúsítványainkkal
  • Az aláírást továbbküldjük a TSA-nek (timestamping authority), ők rábiggyesztik a hivatalos időbélyeget, és visszaküldik nekünk
  • Ezt az egészet összegyúrjuk CAdES aláírássá, és újraírjuk a PDF fájlt az aláírással
  • A kész PDF fájlt visszaküldjük a felhasználót kiszolgáló folyamatnak

A teljes folyamatot profiloztuk, és sikerült néhány bottlenecket találnunk benne. Az első, hogy néhány tanúsítványt nem cacheltünk, és mivel a szerverek ahonnan összegyűjtöttük őket nagyon lassan válaszoltak rá, ezzel jelentősen lelassították a mi folyamatunkat.

A mostani verzió

A jelenleg futó verzióban több folyamat részbe tettünk memória cacheeket, valamint a teljes folyamatot tovább gyorsítottuk egy kis optimalizálós fekete mágiával. Már ezzel sikerült 5 másodperc alá szorítanunk a generálás sebességét (ez már így is közel 300% -os sebesség növekedés).

További másodpercek harca

Sajnos az egyik leglassabb rész a használt PDF könyvtár sebességéből adódik. Nincs megfelelően optimalizálva a mentés sebessége, mivel digitális aláíráshoz egy úgynevezett inkrementális mentést kell használni, és a PDF összes részét végig ellenőrizni. Ráadásul mindezt nem tudjuk memóriában csinálni, hanem kénytelen vagyunk lemezen ideiglenes fájlokba a mentést megcsinálni. Attól függetlenül, hogy kizárólag SSD merevlemezeket használunk, sajnos ez még mindig egy lassú folyamat.

Azon kívül, hogy elkezdtünk beletúrni a nyílt forráskódú PDFBox könyvtárba (természetesen ha sikerült megoldást találnunk, azt átadjuk a PDFBoxnak, valószínűleg nem csak nekünk van szükségünk gyorsabb könyvtárra), még további optimalizálsokat csináltunk a rendszerben, így a mostani fejlesztés alatt lévő aláíró szerver már 1-2 másodperc alatt képes egy aláírást létrehozni, de ezt még tovább szeretnénk gyorsítani akár a mágikus másodperces határ alá szorítani.

Mennyiben befolyásol ez engem?

Tulajdonképpen csak annyiban, hogy kicsit többet kell most várni egy elektornikus számlára mint azt szeretnénk. Ettől függetlenül a mostani 4-5 másodperces várakozás (és a következő verzió 1-2 másodperces ideje) szerintünk az elfogadható határon bőven belül van, csak szeretnénk ha tudnátok, hogy mindent megteszünk annak érdekében, hogy ez még sokkal-de-sokkal gyorsabb legyen! Így is a 2 másodperces elkészítés több mint 100% gyorsulás a mostanihoz képest, szóval most már abban a kategóriában mozgunk ahol egy-egy komolyabb fejlesztés is minimális érezhető sebesség növekedést okoz.

Miért ilyen nehéz ez?

Mert a mostani 4 másodperces generálási sebességhez képest a 2 másodperc 100%-os növekedés, és egy-egy jól megírt algoritmus optimalizálása is kb. 10-20% -os növekedést eredményez jobb esetben. Ezért mások nem szoktak foglalkozni ezekkel, mivel az érezhető sebesség nem változik (nagyon kevesen fognak észrevenni különbséget 2.5 másodperc és 2 másodperc között). Ettől függetlenül mi tovább harcolunk minden egyes tizedmásodpercért. :))

Mondtam én, tiszta Forma 1!

Örömteli számlázást kíván,
Számlázó program - Billingo online számlázó - Billy üdvözlettel,
Billy

Billingózz Te is!

Regisztrálj egy ingyenes fiókot és tesztelt a számlázót 30 napig ingyen!

Regisztrálok Billingózz Te is!

Hozzászólások ()

Bonácz Zsolt adótanácsadó a Billingo új online számlázás szakértője

Bonácz Zsolt adótanácsadó a Billingo új online számlázás szakértője

Hírek, 2019-10-14

Bonácz Zsolt adótanácsadó és adószakértő is csatlakozott a Billingo szakértői csapatához. Az elismert szakembe…

WOW, Billingo a Forbes Flow színpadán

WOW, Billingo a Forbes Flow színpadán

Hírek, 2019-10-08

Pistyur Vera és Fehér Gyula, az Oktogon Ventures befektetőcég alapítói előtt pitchelt Sárospataki Albert, a Bi…

Profi szakértőkkel erősít a Billingo

Profi szakértőkkel erősít a Billingo

Hírek, 2019-10-08

Óriási változások várhatók a Billingo háza táján, aminek leginkább az online számlázó ügyfelei és a KKV szekto…

Elismerés: "A" minősítést kapott a Billingo az Opten cégminősítőtől

Elismerés: "A" minősítést kapott a Billingo az Opten cégminősítőtől

Hírek, 2019-10-08

“A” minősítést kapott a Billingót üzemeltető Octonull Kft. az OPTEN speciális cégminősítési módszertana alapjá…

Több mint 560 000 Ft értékű Billingo előfizetés Az Év Webshopja nyerteseinek

Több mint 560 000 Ft értékű Billingo előfizetés Az Év Webshopja nyerteseinek

Hírek, 2019-09-30

2019-ben is megrendezték Az Év Webshopja online versenyt, amelynek támogatói között idén a Billingo online szá…

ÚJDONSÁG: elérhető a Billingo-Quick összekapcsolás

ÚJDONSÁG: elérhető a Billingo-Quick összekapcsolás

Hírek, 2019-09-24

Újabb hasznos és fontos lehetőséget kaptak a Billingo felhasználói, a számlázó program fiókjai ugyanis egy úja…