Ini untuk konsep umum, bukan khusus Android
Biasanya, setiap pengguna mengirimkan permintaan HTTP untuk halaman tersebut. Server menerima permintaan dan mendelegasikannya ke pekerja yang berbeda (proses atau utas).
Bergantung pada URL yang diberikan, server membaca file dan mengirimkannya kembali ke pengguna. Jika file tersebut adalah file dinamis seperti file PHP, file tersebut akan dieksekusi sebelum dikirim kembali ke pengguna.
Setelah file yang diminta telah dikirim kembali, server biasanya menutup koneksi setelah beberapa detik.
Lihat Cara Kerja Server Web
EDIT:
Untuk HTTP menggunakan TCP yang merupakan protokol berbasis koneksi. Artinya, klien membuat koneksi TCP saat mereka berkomunikasi dengan server.
Beberapa klien diizinkan untuk terhubung ke port tujuan yang sama pada mesin tujuan yang sama secara bersamaan. Server hanya membuka beberapa koneksi simultan.
Apache (dan sebagian besar server HTTP lainnya) memiliki modul multi-pemrosesan (MPM). Ini bertanggung jawab untuk mengalokasikan utas/proses Apache untuk menangani koneksi. Proses atau utas ini kemudian dapat berjalan secara paralel pada koneksi mereka sendiri, tanpa memblokir satu sama lain. MPM Apache juga cenderung tetap membuka utas atau proses "cadangan" meskipun tidak ada koneksi yang terbuka, yang membantu mempercepat permintaan berikutnya.
Catatan:
Salah satu masalah paling umum dengan multi-threading adalah "kondisi balapan"-- di mana kalian berdua meminta melakukan hal yang sama ("berlomba" untuk melakukan hal yang sama), jika itu adalah satu sumber daya, salah satunya akan menang. Jika mereka berdua memasukkan record ke dalam database, mereka berdua tidak bisa mendapatkan id yang sama-- salah satu dari mereka akan menang. Jadi, Anda harus berhati-hati saat menulis kode untuk menyadari bahwa permintaan lain sedang berlangsung pada saat yang sama dan dapat memodifikasi database Anda, menulis file, atau mengubah global.