Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Info su principi di multiutenza web/php

    Gentili Amici,

    ho scritto un porgramma eseguibile che viene correttamente chiamato, sul Server Web, da un programma php (invocato dal browser web).

    Mi sapreste dire cosa succede quando due (o più) utenti web richiedono la stessa risorsa sul Server?

    Mi mancano i principi base di multiaccesso/web. Non ho idea se vengono create multi-sessioni o altro...

    Sapreste anche indicarmi della Documentazione dove studiare?

    Vi ringrazio molto e saluto,

    Maurizio

  2. #2
    Sì hai detto bene: un server web è un sistema multi-utente. A seconda della banda disponibile il server può accettare centinaia o anche migliaia di connessioni simultanee. Ad ogni utente in PHP viene assegnato un ID di SESSIONE univoco, proprio per capire cosa sta facendo un utente e cosa un altor: questo serve ad esempio a capire che due utenti stanno scrivendo dati contemporaneamente sul server.
    Lo stesso per il server mysql: è un database relazionale multi-utente che può accettare centinaia o migliaia di connessioni simultanee.
    Però più utenti ci sono contemporaneamente più la velocità scende: se tanti siti sono molto veloci è perchè hanno una grande banda di connessione o eprchè hanno anche una web farm, cioè un gruppo di server che si distribuisce il carico delle utenze: se il server 1 è sovraccarico le ulteriori richieste vengono dirottate al server 2 se ha posto libero. M questo succede solo nei siti di grandi aziende, dove possono entrare anche decine di migliaia di utenti tutti assieme che scaricano a forte velocità.
    Anche sui nostri PC possiamo installare un web server come saprai, ma è molto limitato dalla memoria e della banda disponbile, che corrisponde alla velocità della linea ADSL che abbiamo!

    Queste sono nozioni mooolto di base...

  3. #3
    Grazie Emulman,

    ...allora per il software php c'è l'identificativo utente che lo contraddistingue e quindi, se ho capito bene, c'è l'apertura automatica di più istanze per lo stesso programma. Ma cosa succede, secondo te, al programma eseguibile che viene richiamato dal software php?

    L'eseguibile appartiene alla sessione "privata" del chiamante? O c'è da gestire il multi accesso su quest'ultimo? E come si farebbe?

    Aggiungo, inoltre, che l'eseguibile legge e scrive dei files (.jpg e .txt) di lavoro. Anche questi rientrano nel dominio del programma php chiamante? devo gestire io (anche in questo caso) il multi accesso?

    Insomma, ho delle serie lacune...

    Ciao!

    Maurizio

  4. #4
    come puoi vedere qua su windows, tu puoi aprire più volte un programma perchè windows è multitasking (cioè esegue più compiti contemporaneamente), lo stesso è in un server: se 10 utenti chiedono una cosa quella cosa verrà aperta 10 volte. Ma questo è pericoloso perchè potrebeb esaurire la memoria del server. Per cui aprire programmi non è certo consigliabile, anzi!!! meglio evitarlo assolutamente. Tanto quando tu vuoi vedere una pagina web il server la cerca e sela trova te la rimanda al tuo browser che pensa a visualizzarla.
    Quando apri una pagina sul tuo browser il server apore per te come già detto una nuova sessione che verrà chiusa quando esci dal sito. per chiarire:

    <?php
    //inizia la sessione utente
    session_start();
    // visualizza la ID di session
    echo "id di sessione: ".session_id();
    // assegna alla variabile di sesisone chiamata ID l'id di sessione
    $_SESSION['id']=session_id();
    // visualizza l'id di sessione
    echo "valore di pippo: ".$_SESSION['pippo'];
    ?>

    se usi un web server locale salvalo nella root del server come session.php o come vuoi e poi apri due browser (firefox ed explorer per esempio) lanciando da entrambi:

    http://localhost/session.php

    nei due browser vedrai due valori diversi porprio eprchè sono stati aperte due sessioni distin te, come se ci fossero due utenti diversi. e nonostante la variabile di sessione ID sia la stessa in entramb i i casi il valore ivi contenuto è diverso a dimostarzione che ci sono appunto due utenti diversi che sono entrati nel web server! in questo modo non si corrono rischi di interferenze e ciascuno può salvare o richiamare i dati che vuole.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.