2007年12月3日 星期一

Homework 11-26-2007

1. Problem 1 & Problem 3 of Textbook on Page 55.

試解釋WEB技術演進是要解決什麼樣的問題?

相較以往在Server上產生HTML並回傳至瀏覽器,任何畫面皆利用瀏覽器本身或附加的功能來產生。形同於借用了Client Side CPU的運算資源,減少Server成本。使用者感受到的互動性與回應速度皆有大幅的提升。
由於Server並不是每次都回傳複雜龐大的HTML,而是利用XML或JSON傳輸資料的部分,使用的頻寬也相對變小。
Server Side除了使用傳統XML Web Service,更可以採用REST,讓Client的應用程式可以更快速掌握資料的新增修改刪除(CRUD)並簡化呼叫的服務URL。
能夠快速Mashup其他的Web應用程式資源,又能擁有高速的執行效能。

3.程序(PROCESS)害執行緒(THREAD)對網站性能有什麼不同的影響?
Program: 一群程式碼的集合,用以解決特定的問題。以物件導向的觀念來類比,相當於Class。 Process:由Program所產生的執行個體,一個Program可以同時執行多次,產生多個Process。以物件導向的觀念來類比,相當於 Object。每一個Process又由以下兩個東西組成 一個Memory Space。相當於Object的variable,不同Process的Memory Space也不同,彼此看不到對方的Memory Space。
程序(Process)
用在Web系統演進的第二時期,當使用者增多時,由於耗費過多系統資源會導致網站速度明顯下降。
執行緒(Thread)
用在Web系統演進的第三時期,取代了程序,而使用常駐的服務(Service\Daemon),此程式會一直留在系統內,除非關機,否則會一直做服務。當人多時Thread就會變多;人少時,Thread就會減少,故不會耗費系統資源而導致網站速度下降。


2. What does a CGI output contain in the HTTP header? Hint: Such as Content-type

計數器、和近來頗盛行的網頁遊戲如travian

3. If you want to upload an mp3 file, should you use the GET or POST method? Why?

Get是從輸入網址端的服務器上獲得資料。Post則用來對伺服器發布資料。上傳檔案室對伺服器發送數據資料,應該用post。

沒有留言: