• User

    Stima per scelta server e architetture

    Salve,

    spero che la sezione sia giusta e che sopratutti riusciate ad illuminarmi un pochetto, perchè brancolo nel buio completo 😢.

    Devo portare a termine dei piccoli task... "...e che vi vole??" ..si come no!! :mmm:

    1. Come è possible stimare quanto carico riesce a supportare un server.
      Nel caso che faccia da web server (appunto) o da database server?

    2. E' possibile tramite strumenti di analisi di rete whois, dns, etc. etc risalire all'infrastruttura server di un sito?
      Mi spiego: il server che risponde è solo 1 o sono una batteria... insomma cose di questo tipo. Io credo sia difficile se non impossibile.

    3. Ha senso avere un web server locato in zona geografica e un database server locato in altra zona geografica magari anche altro continente?

    4. Come deve essere strutturata un' architettura High-Availability per evitare il minimo disservizio di un sito web ritenuto business critical?

    Si lo sò che sono stato "pesante" ma nion riesco a trovare nulla!:bho:

    Grazie in anticipo per le risposte


  • Moderatore

    Beh dal post non è chiaro se ti interessa creare una rete di server per fornire servizi o sei vuoi costruire una mappa di una rete già esistente e stimarne le effettive capacità.

    La seconda cosa è decisamente ardua senza poter mettere le mani nella rete stessa, anche se potresti lanciare dei test ( tipo effettuare N connessioni simultanee verso la rete o il singolo server ), però ti ritroverai sempre con dati falsati, visto che non sai quanti altri host stanno contattando il server mentre tu fai il test.

    Se invece sei in procinto di metter su un server o una di server, beh, allora puoi usare i vari strumenti messi a disposizione dai sistemi unix/linux. Mi riferisco a mysqlslap, ab ( serve per testare il web server ), ma ovviamente ce ne sono molti altri.

    1. E' possibile tramite strumenti di analisi di rete whois, dns, etc. etc risalire all'infrastruttura server di un sito?
      Mi spiego: il server che risponde è solo 1 o sono una batteria... insomma cose di questo tipo. Io credo sia difficile se non impossibile.

    In parte si, puoi ad esempio effettuare N richieste ad intervalli di pochi secondi e verificare se l'IP che ti viene comunicato è diverso, nel qual caso sai che c'è in atto una gestione round robin dei dns.

    Ma non è sempre così, può benissimo essere una rete connessa ad Internet tramite un reverse proxy tipo nginx o mongrel il quale a sua volta dirotta le richieste verso i server interni. In questo caso non c'è possibilità di sapere quali e quanti server reali ci sono dietro.

    1. Ha senso avere un web server locato in zona geografica e un database server locato in altra zona geografica magari anche altro continente?

    No, anzi aumentato le latenze. I server dovrebbero stare vicini, meglio se collegati alla stessa lan. Magari puoi averne altri in altre zone, in modo da creare dei datacenter. Se un cinese vuole accedere al tuo sito lo mandi al datacenter cinese, se lo fa un americano lo mandi al datacenter americano. Ma ogni datacenter ha tutto ciò che gli serve ( web server e database server ).

    1. Come deve essere strutturata un' architettura High-Availability per evitare il minimo disservizio di un sito web ritenuto business critical?

    Beh in primo luogo scarta windows, non è adatto a questo genere di cose. Anzi è meglio se vai su freebsd.

    Poi dai un'occhiata qui http://www.linuxvirtualserver.org/HighAvailability.html


  • User

    Ciao...

    grazie per le risposte.

    Beh dal post non è chiaro se ti interessa creare una rete di server per fornire servizi o sei vuoi costruire una mappa di una rete già esistente e stimarne le effettive capacità.Si beh in effetti non mi sono spiegato bene.. Tutte e due :).

    L'obbiettivo è la rete di server. O meglio un sito con 1 web server 1 DB server ridondati per evitare, nel caso di rotture hardware, lo stop del sito.

    Quindi ho pensato studiare la possibile struttura (SERVER) di "sito" e capire se tale struttura soddisfa anche le mie esigenze.

    Tutto questo per poi creare appunto una mia struttura sulla "falsa riga" di quella di "sito".

    Se non altro ho la parziale conferma che la cosa funziona.

    Ma probabilmente non è l'approccio corretto.

    Esistono forse degli standard de facto per l'implementazione di una struttura del genere?

    C'è uno studio fatto a tavolino prendendo in considerazione qualche tipo di dato? (per questo chiedevo del carico del server.)

    Quindi in relazione al carico del server (parliamo sempre di web) non si può sapere a priori quante connessioni questo riesce a sostenere?
    Anche se deve restituire pagine dinamiche senza elaborazioni particolari lettura da db e stampa dei dati?

    Grazie


  • Moderatore

    Si, è effettivamente estremamente complicato svolgere un'analisi interna di una rete standone all'esterno. Non impossibile ma molto difficile e in alcuni casi potrebbe essere necessario installare dei rootkit su alcuni macchine interne alla rete.

    In sostanza è una tecnica usata dagli hacker per costruire l'organigramma delle reti da attaccare. Ti si porrebbero problemi legali oltre che tecnici. Dunque è da escludere.

    Riguarda l'analisi della potenza di un server, beh, c'è poco da fare, bisogna andare di test. Ripeterli almeno 5-10 volte e fare una media.

    Ovviamente tieni presente che i risultati possono cambiare a seconda del tipo di lavoro che il server andrà a fare, dei software usati ( ad esempio nginx è molto più veloce di apache sia sui siti statici che dinamici ), dal sistema operativo ( windows è da escludere se si vuole un server veramente performante ).

    Le variabili in gioco sono talmente tante che è impossibile creare delle formule che permettano il calcolo delle performance.

    Riguardo invece la ridondanza puoi fare in vari modi.

    Il sistema più complesso è la creazione di un cluster, che altro non è che un insieme di computer collegati tra loro e che si dividono i compiti, oltre a ciò il cluster ha la capacità di identificare i computer guasti ed escluderli al volo dalla rete finchè non saranno riparati.

    La strada più semplice e meno costosa è di avere N server, possibilmente in punti diversi del pianeta o comunque presso hoster diversi, mantenerli sincronizzati con backup periodici e usare un servizio come dnsmadeeasy.com per monitorarli.

    In pratica questo servizio ti permette di assegnare ad un nome di dominio un numero arbitrario di IP, inoltre monitorizza i server e invia gli utenti solo verso gli ip/server che sono al momento funzionanti.


  • User

    ... grazie 1000 per le risposte, ora mi metto fitto a studiare.

    ciao