41.簡述線程死鎖是如何造成的?如何避免?
# 答案:
1.加鎖順序(線程按照一定的順序加鎖)
2.加鎖時限(線程嘗試獲取鎖的時候加上一定的時限,超過時限則放棄對該鎖的請求,並釋放自己占有的鎖)
3.死鎖檢測
42.asynio是什么?
# 答案:
python高並發模塊。
43.gevent模塊是什么?
# 答案:
'''
gevent是第三方庫,通過greenlet實現協程,其基本思想是:
當一個greenlet遇到IO操作時,比如訪問網絡,就自動切換到其他的greenlet,等到IO操作完成,再在適當的時候切換回來繼續執行。由於IO操作非常耗時,經常使程序處於等待狀態,有了gevent為我們自動切換協程,就保證總有greenlet在運行,而不是等待IO。
'''
44.什么是twisted框架?
# 答案:
'''
twisted是異步非阻塞框架。爬蟲框架Scrapy依賴twisted。
'''
45.什么是LVS?
# 答案:
'''
LVS :Linux虛擬服務器
作用:LVS主要用於多服務器的負載均衡。
它工作在網絡層,可以實現高性能,高可用的服務器集群技術。
它廉價,可把許多低性能的服務器組合在一起形成一個超級服務器。
它易用,配置非常簡單,且有多種負載均衡的方法。
它穩定可靠,即使在集群的服務器中某台服務器無法正常工作,也不影響整體效果。另外可擴展性也非常好。
'''