OpenResty介紹
OpenResty是一個基于Nginx與Lua的框架,包含一些常用的組件拾并,這個框架主要是用來開發(fā)WebServer。
實(shí)現(xiàn)的原理是在Nginx中加入了Lua腳本語言,并且開發(fā)了Ngx庫署穗,可以讓Lua腳本直接運(yùn)行在Nginx中,Lua可直接嵌入到nginx的配置文件中嵌洼,也可以在nginx配置文件中添加獨(dú)立的.lua文件路徑進(jìn)行運(yùn)行
中文網(wǎng)站 https://openresty.org/cn/
為什么要學(xué)習(xí)這個東東
- 高性能案疲,Lua借助LuaJIT解釋器 ,執(zhí)行代碼速度極快麻养,比php7還要高的性能褐啡,比go更好調(diào)試,比node回調(diào)更少
- Nginx 鳖昌,低開銷备畦,高性能
- 國內(nèi)大公司都在用,京東许昨、360等
- 跨平臺懂盐,可以在windows系統(tǒng)下開發(fā),在linux系統(tǒng)上部署
- 開源
學(xué)習(xí)進(jìn)度
在網(wǎng)上找了一些資料:
分享一下:
- http://www.stuq.org/course/1015/study 奇虎360服務(wù)端架構(gòu)師 溫銘 主講的 OpenResty入門
- https://openresty.org/cn/events.html 中文官網(wǎng)
- http://wiki.jikexueyuan.com/project/openresty/ 《OpenResty 最佳實(shí)踐》
接下去會使用該技術(shù)開發(fā) “在線考試系統(tǒng)”
在線考試系統(tǒng):
- 需要實(shí)現(xiàn) 一臺1核1G內(nèi)存的阿里云linux系統(tǒng)服務(wù)器2M帶寬糕档,帶動近千名考生同時
在線實(shí)時 答題莉恼、交卷、評分速那、生成考生名單分?jǐn)?shù)等操作俐银。 - 之前使用php開發(fā),基本能跑端仰,客戶端進(jìn)行錯時優(yōu)化捶惜,10秒同步等措施,能帶動
- 實(shí)際上當(dāng)時為了方便荔烧,也是為了能夠下載原始數(shù)據(jù)吱七,數(shù)據(jù)庫選擇了sqlite,當(dāng)時測試 php循環(huán)寫入數(shù)據(jù)鹤竭,不使用事務(wù)提交踊餐,每秒只能寫入8條數(shù)據(jù),所以數(shù)據(jù)庫也做了優(yōu)化诺擅,每個考場使用一個數(shù)據(jù)庫
- 接下去準(zhǔn)備使用高性能的方式去做
- 實(shí)際上再加一點(diǎn)配置市袖,這套考試系統(tǒng)的能承載更多的在線人數(shù),不過么,技術(shù)就是在不斷嘗試中才能提升的苍碟,嘿嘿