1、關於商品秒殺的問題,如何保證100件商品,只能使前100個用戶搶到呢?
思路1、我們可以使用redis緩存的list存儲類型,當有一個用戶請求到來時,將該用戶的id存放在list中,這樣當list中的llen長度達到100時就不在添加新的用戶id,然後在從list中取出對應的id操作數據庫,這樣有一個缺點是會有一定的延遲。
誰有更好的思路,歡迎討論
2、關於mysql索引問題
比如現在有一個帖子表
tiezi
id primary key auto_increment tiezi表主鍵
type tiezi所屬板塊
reply_time 回帖時間
pid 此板塊所屬父板塊
問題1:我現在要取板塊(type=1)裏的所有帖子,並根據回帖時間進行倒序排列,你如何建立索引?
答:在tiezi表中的type和reply_time建立一個聯合索引
select * from ties where type=1 order by reply_time desc
此時兩個索引都可以被用到。
問題2:我現在要取父板塊裏的所有帖子,並根據回帖時間進行倒序排列,你又如何建立索引呢?
答:在tiezi表中的pid和reply_time建立一個聯合索引
select * fron ties where pid=1 order by reply_time desc;
這裏兩個索引都可以被用到。
如果只在type,reply_time,pid上建立單個的索引
select * from ties where type=1 order by reply_time desc
這時就只能用到type這一個索引,而reply_time這個索引則是沒有辦法用到的,同理,select * from ties where pid=1 order by reply_time desc 也只能用到pid這一個索引
3、ngnix和apache的優缺點是什麼?爲什麼會有這些區別嗎?
可以參考下:http://weilei0528.blog.163.com/blog/static/206807046201321810834431/
4、有一個100G的訪問日誌文件,如何統計出每秒訪問量?
思路1:將100G的文件分成100個小文件,然後逐個統計,面試官說思路對了,但具體怎麼做我也不是很清楚,哈哈。。。
5、如何定義一個全局變量,使所有的文件不需要引入就可以訪問的到呢?
在php.ini中修改register_globals=on
6、http1.1和http1.0的區別是什麼?
可以參考一下:http://blog.csdn.net/forgotaboutgirl/article/details/6936982