Docker és desktop app


Gyakran halljuk, hogy a Docker (konténerizáció) és a mikroszolgáltatások nem alkalmasak asztali alkalmazások fejlesztésére. Az érv általában az, hogy az alkalmazások Windowsra készültek, amely nem támogatja a Dockert

Szeretnénk megcáfolni ezeket az érveket.

A konténerizáció és a mikroszolgáltatások alkalmasak ezekre az alkalmazásokra, de bizonyos eljárásokhoz kötöttek.

A hosszú évek, néha évtizedek alatt kifejlesztett alkalmazások idővel elavulnak, és frissítésre szorulnak. Ez az a terület, ahol a konténerizáció jelentős segítséget jelenthet.

Jelenlegi állapot:

  • Alacsony sebesség - A számításokat az ügyfélrészben végzik, és az adatok túlterhelik az adatbázissal fennálló kapcsolatot.
  • Terminálszerveres vezérlés - távoli felületen vagy konzolon keresztül.
  • Kód felhalmozódás az évek során.
  • A technológia megváltoztatása az alkalmazás teljes átírását jelenti.
  • Kódkettőzés az alkalmazás webes és asztali verziójának egyidejű futtatásakor.
  • Az alkalmazás egy moduljának módosítása az egész alkalmazás összeomlását vagy máshol jelentkező problémákat okozhat.
  • Gyakran egyetlen fejlesztő vagy egy szorosan együttműködő csapat fejleszti.
  • Az új fejlesztők számára nehéz beépíteni és megérteni az alkalmazást.
  • Kétrétegű architektúra
 

A konténerizáció használatával:

  • Nagy sebesség - a számítások szerver infrastruktúrán futnak.
  • Bármilyen felhasználói környezet (mobil, web, asztali PC) csatlakoztatása.
  • Egyszerű beállítások és részleges funkciók módosításai.
  • Fokozatos és független módosítások lehetősége egyes konkrét funkciók esetében.
  • Az ügyfélalkalmazás csak egy a szerver rész funkcióira utaló számítások nélküli felhasználói felület.
  • Az egyik modulban végzett módosítások nem befolyásolják más független modulok kódjait.
  • Független csapatok és fejlesztők mind az ügyfél, mind az alkalmazás alrészei számára.
  • A független modulok kódjának egyszerűsége és áttekinthetősége.
  • Háromrétegű architektúra

Vázlat - kétrétegű alkalmazás

 

Vázlat - három rétegű alkalmazás