1 MySQL數據庫作發佈系統的存儲,一天五萬條以上的增量,預計運維三年,怎麼優化?
a. 設計良好的數據庫結構,允許部分數據冗餘,儘量避免join查詢,提高效率。
b. 選擇合適的表字段數據類型和存儲引擎,適當的添加索引。
c. mysql庫主從讀寫分離。
d. 找規律分表,減少單表中的數據量提高查詢速度。
e。添加緩存機制,比如memcached,apc等。
f. 不經常改動的頁面,生成靜態頁面。
g. 書寫高效率的SQL。比如 SELECT * FROM TABEL 改爲 SELECT field_1, field_2, field_3 FROM TABLE.
2 對於大流量的網站,您採用什麼樣的方法來解決各頁面訪問量統計問題
a. 確認服務器是否能支撐當前訪問量。
b. 優化數據庫訪問。
c. 禁止外部訪問鏈接(盜鏈), 比如圖片盜鏈。
d. 控制文件下載。
e. 使用不同主機分流。
f. 使用瀏覽統計軟件,瞭解訪問量,有針對性的進行優化。
3 寫出一個正則表達式,過慮網頁上的所有JS/VBS腳本(即把標記及其內容都去掉)
答:
PHP
/<[^>].?>.?<\/>/si
4 用PHP打印出前一天的時間格式是2006-5-10 22:21:21
答:echo date(‘Y-m-d H:i:s’, strtotime(‘-1 day’));
5 echo(),print(),print_r()的區別
答:echo是語言結構,無返回值;print功能和echo基本相同,不同的是print是函數,有返回值;print_r是遞歸打印,用於輸出數組對象
6 如何實現字符串翻轉?
答:.用strrev函數唄,不準用PHP內置的就自己寫:
strrev( len=strlen( newstr = ”;
for( len; i–)
{
str{ newstr;
}
7 實現中文字串截取無亂碼的方法。
答:mb_substr()
8 如何用php的環境變量得到一個網頁地址的內容?ip地址又要怎樣得到?
答:
$_SERVSR[‘REQUEST_URI’] , $_SERVER[‘REMOTE_ADDR’]
9 求兩個日期的差數,例如2007-2-5 ~ 2007-3-6 的日期差數
答:(strtotime(‘2007-3-6’)-strtotime(‘2007-2-5’))/3600*24
10 如何通過javascript判斷一個窗口是否已經被屏蔽
答:獲取open()的返回值,如果是null,就是屏蔽了