Rehosting aplikácií mení prostredie, v ktorom aplikácia beží, zatiaľ čo väčšinu samotnej aplikácie ponecháva nezmenenú. Spustiteľný súbor, konfigurácia a dáta sa presúvajú do nového cieľového hostingu, avšak systém si zvyčajne zachováva rovnaké hlavné hranice, závislosti a správanie počas behu.
Čo zahŕňa presun formou rehostingu
Konkrétna práca závisí od toho, ako je aplikácia zabalená a prevádzkovaná. Virtuálny počítač sa môže presunúť ako obraz, zatiaľ čo fyzický server sa najprv zreprodukuje ako virtuálne prostredie. Konfigurácia, sieťový prístup, certifikáty, plánované úlohy, úložisko a monitorovanie sa musia presunúť spolu s aplikáciou alebo sa musia nahradiť ekvivalentnými službami.
| Oblasť | Čo sa zvyčajne mení | Čo zvyčajne zostáva |
|---|---|---|
| Výpočtový výkon | Hostiteľ, virtuálny počítač alebo umiestnenie behového prostredia | Aplikačný proces a nasaditeľná jednotka |
| Sieť | Adresy, smerovanie, pravidlá firewallu | Očakávané porty a komunikačné vzorce |
| Dáta | Umiestnenie úložiska a detaily pripojenia | Schéma a model vlastníctva |
| Prevádzka | Integrácia zriaďovania a monitorovania | Existujúce príručky a chybové stavy |
Minimálna zmena kódu neznamená žiadnu inžiniersku zmenu. Predpoklady špecifické pre prostredie môžu byť zabudované v cestách k súborom, názvoch hostiteľov, metódach autentifikácie alebo v skriptoch na nasadenie. Graf závislostí (dependency graph) pomáha tieto predpoklady odhaliť ešte pred samotným presunom.
Dôkazy potrebné pred presunom
Audit staršieho codebase zaznamenáva hranice aplikácie a všetky prostriedky potrebné na jej beh. Migračný tím potrebuje informácie z konfigurácie, histórie nasadenia, prevádzkových logov a od ľudí, ktorí systém prevádzkujú.
Praktický inventár zahŕňa:
- Požiadavky na behové prostredie: Operačný systém, behové prostredie jazyka, služby a nainštalované knižnice.
- Externé pripojenia: Databázy, zdieľané súbory, sprostredkovatelia správ, poskytovatelia identity a odchádzajúce služby.
- Prevádzkové činnosti: Zálohy, plánované úlohy, monitorovanie, upozornenia a postupy obnovy.
- Prevádzka a stav: Vstupné body, perzistentné dáta, stav relácií a okná údržby.
- Overenie: Kontroly stavu a biznisové transakcie, ktoré potvrdzujú, že presunutý systém funguje.
Tieto kontroly definujú, čo musí byť k dispozícii pri prepnutí a čo sa musí otestovať následne.
Čo rehosting nemení
Rehosting môže odstrániť obmedzenia hardvéru alebo hostingu, ale sám o sebe nemení vnútornú štruktúru aplikácie. Úzke prepojenie, zastarané knižnice, nezdokumentované pravidlá a krehké procesy vydávania verzií zostávajú, pokiaľ ich migrácia nerieši samostatne. Nové prostredie môže tiež odhaliť predpoklady, ktoré predchádzajúci hostiteľ zhodou okolností spĺňal.
Replatforming aplikácií vykonáva ohraničené zmeny v behovom prostredí alebo platforme počas presunu. Rearchitektúra aplikácií mení štruktúru a zodpovednosti aplikácie. Rehosting sa líši tým, že tieto otázky ponecháva mimo bezprostredného presunu infraštruktúry.
Ako zapadá do modernizačného plánu
Rehosting môže byť konečným výsledkom, ak je aplikácia stabilná a hlavným problémom je obmedzenie hostingu. Môže ísť aj o prechodný stav, ktorý vytvára čas na neskoršiu prácu. Plán by mal jasne určiť, o ktorý výsledok ide, pretože dočasné miesto nasadenia a dlhodobý prevádzkový model vyžadujú odlišné nadväzujúce kroky.
Rozhodnutie patrí do migračnej sekvencie s jasnými závislosťami, krokmi overenia a vlastníkmi. To zabraňuje tomu, aby sa presun infraštruktúry zamieňal za štrukturálnu modernizáciu, a spája presun s rozsiahlejšou prácou pri prevzatí staršieho codebase.