Domanda

Ho un'applicazione (un servizio di conferenza IP) che devo ridimensionare. Ha parecchi componenti / applicazioni indipendenti, scritti in diverse lingue (principalmente C ++ e PHP, alcuni Perl). Attualmente una singola installazione viene eseguita su 5 macchine, con 1-2 componenti che condividono una singola scatola. La configurazione di ogni scatola è quindi diversa, quindi è una seccatura ridimensionare il tutto, per non parlare della manutenzione.

I singoli componenti variano dai proxy dei media ai proxy dei messaggi e ai database, quindi il carico è tutt'altro che uniforme.

Stavo pensando di mettere tutti i componenti su una singola macchina e aggiungere più scatole mentre vado con una sorta di bilanciamento del carico di fronte. Altri mi hanno consigliato di ridimensionare l'altro modo - aggiungere caselle specializzate in cui il carico dell'app aumenta, ma questo porta all'incubo della manutenzione.

Conosci le risorse da dove dovrei iniziare? Idealmente avrei bisogno di alcuni parametri di riferimento quale approccio è migliore in termini di prestazioni? (pensando ad alta voce, quando ho X quantità di carico e Y quantità di memoria e potenza di elaborazione, dove importa come l'allocco?)

È stato utile?

Soluzione

Vorrei andare alla virtualizzazione. In questo modo è possibile avere varie macchine di configurazione simili e distribuire il carico tra di esse secondo necessità, anche se si mantengono i moduli in macchine virtuali separate.

Altri suggerimenti

Devi determinare dove sarà il carico o il collo di bottiglia più alto, sarà difficile pianificarlo correttamente senza.

In secondo luogo guarderei alla virtualizzazione. Rende la tua app: Rapido da distribuire Facile da eseguire il backup In caso di errore ripristinare rapidamente

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top