亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何用正確姿勢來學習獲得OpenResty?

如何用正確姿勢來學習獲得OpenResty?

蝴蝶不菲 2018-12-13 14:10:22
如何用正確姿勢來學習獲得OpenResty
查看完整描述

1 回答

?
湖上湖

TA貢獻2003條經驗 獲得超2個贊

1、阻塞的訪問網絡IO。在連接MySQL、Redis和發起HTTP請求時,工作進程不能傻傻的等待網絡IO的返回,而是需要支持事件驅動,用協程的方式讓CPU資源更有效的去處理其他請求。很多語言并不具備這樣的能力和周邊庫。

2、有完備的緩存機制。不僅需要支持Redis、Memcached等外部緩存,也應該在自己的進程內有緩存系統。我們希望大部分的請求都能在一個進程中得到數據并返回,這樣是最高效的方法,一旦有了網絡IO和進程間的交互,性能就會受到很大影響。

3、同步的寫代碼邏輯,不要讓開發者感知到回調和異步。這個也很重要,程序員也是人,代碼應該更符合人的思維習慣,顯式的回調和異步關鍵字,會打斷思路,也給調試帶來困難。

4、最好是站在巨人肩上,基于成熟的技術上搭建。采用一門全新誕生的語言和技術,需要經歷語言自身發展期頻繁調整的陣痛,還可能站錯隊。

它主要的使用場景主要是:      

1、在Lua中揉和和處理各種不同的nginx上游輸出(Proxy,Postgres,Redis,Memcached等)。   

2、在請求真正到達上游服務之前,Lua可以隨心所欲的做復雜的訪問控制和安全檢測   隨心所欲的操控響應頭里面的信息。   

3、從外部存儲服務(比如Redis,Memcached,MySQL,Postgres)中獲取后端信息,并用這些信息來實時選擇哪一個后端來完成業務訪問。


查看完整回答
反對 回復 2019-01-11
  • 1 回答
  • 0 關注
  • 597 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號