.. Webserver ウェブサーバ ============ :: client1:Process[p] "Googleボット" client2:Actor[r] "サーファー" webServer:Server[pr] "ウェブサーバ" t1:Thread[at] t2:Thread[at] localDisk:HDD *1 client1 Googleボットはインデックス可能 なページを探します。 *1 *2 client2 ネットサーファーは情報など を探します。 *2 *3 t1 ウェブサーバのスレッドプール には2つのスレッドがあります。 *3 (1)client1 (2)client2 (3)t1 (3)t2 client1:webServer.GET / webServer:t1.process request "GET /"& t1[,0]:page=localDisk.read("/var/www/index.html")& client2:webServer.GET /doc/menu.html *4client1 情報が届くのを待ちます。 *4 webServer:t2.process request "GET /doc/menu.html"& t2[,1]:page=localDisk.read("/var/www/doc/menu.html") (4)client2 t2:client2.send(page) t1[,0]:client1.send(pae) t1:stop t2[,1]:stop .. client1:Process[p] "Googlebot" client2:Actor[r] "Surfer" webServer:Server[pr] "Webserver" t1:Thread[at] t2:Thread[at] localDisk:HDD *1 client1 The Google bot in search of pages it can index. *1 *2 client2 An internet surfer in search of information or such. *2 *3 t1 These are two threads from the webserver's thread pool. *3 (1)client1 (2)client2 (3)t1 (3)t2 client1:webServer.GET / webServer:t1.process request "GET /"& t1[,0]:page=localDisk.read("/var/www/index.html")& client2:webServer.GET /doc/menu.html *4client1 Waiting for the information to arrive. *4 webServer:t2.process request "GET /doc/menu.html"& t2[,1]:page=localDisk.read("/var/www/doc/menu.html") (4)client2 t2:client2.send(page) t1[,0]:client1.send(pae) t1:stop t2[,1]:stop .. image:: webserver.png