socket timeout中文翻譯,socket timeout是什么意思,socket timeout發(fā)音、用法及例句
- 內(nèi)容導(dǎo)航:
- 1、socket timeout
- 2、使用jdbc查詢impala時(shí)的超時(shí)問(wèn)題
1、socket timeout
socket timeout發(fā)音
英: 美:
socket timeout中文意思翻譯
常見(jiàn)釋義:
套接字超時(shí)
socket timeout雙語(yǔ)使用場(chǎng)景
1、Signals that a timeout has occurred on a socket read or accept.───標(biāo)志在套接字讀取或接收時(shí)出現(xiàn)延時(shí)。
2、Interestingly, Ruby 1.9.0 has the lowest CPU usage, with an implementation that uses readpartial, "no timeout for socket reads" and "pre-allocated String buffer for each read".───有趣的是,Ruby 1.9.0對(duì)CPU的占有率最低,其實(shí)現(xiàn)采用了 readpartial:“不對(duì)socket讀取設(shè)置超時(shí)”,同時(shí)“提前為每次讀取分配字符串緩存”。
socket timeout相似詞語(yǔ)短語(yǔ)
1、socket───vt.給…配插座;n.插座;窩,穴;牙槽
2、socket 1151───插座1151
3、squid socket───魷魚(yú)窩
4、processing timeout───處理超時(shí)
5、execution timeout───執(zhí)行超時(shí)
6、timeout shanghai───超時(shí)上海
7、shadow socket───暗影插座
8、feign timeout───假裝超時(shí)
9、timeout of───的超時(shí)
2、使用jdbc查詢impala時(shí)的超時(shí)問(wèn)題
項(xiàng)目中應(yīng)用服務(wù)直接通過(guò)jdbc連接impala做數(shù)據(jù)查詢,其他遇到一個(gè)問(wèn)題,查詢impala時(shí)因?yàn)闆](méi)有設(shè)置查詢超時(shí),有些大sql一直占用連接,同時(shí)這個(gè)sql在impala集群中執(zhí)行著,也占用了impala集群的資源,這樣擠壓了其他sql的響應(yīng)。所以這時(shí)候設(shè)置查詢超時(shí),讓連接斷開(kāi),空閑出集群資源能夠很大程度上提升服務(wù)的穩(wěn)定性。
連接impala的jdbc主要有cloudera jdbc和hive jdbc。因?yàn)樾枰褂胟erberos認(rèn)證來(lái)連接impala,最開(kāi)始同事為了簡(jiǎn)單話選擇了hive jdbc,配置kerberos也方便( 官方推薦 Cloudera JDBC Connector )。開(kāi)始用的很爽,但后面發(fā)現(xiàn)并不能設(shè)置查詢超時(shí)(Statement.setQueryTime()無(wú)效,但是如果通過(guò)hive jdbc連接查詢hive的話是能夠生效的--- HIVE-4924 ,查詢impala卻不行)。最后想查詢下hive jdbc是否還有其他參數(shù)能夠設(shè)置,通過(guò)幾天的尋找,最終卻無(wú)果。
后來(lái)把目光放在了cloudera jdbc上,通過(guò)文檔中的參數(shù),發(fā)現(xiàn)一個(gè)SocketTimeout參數(shù),并在本地嘗試了cloudera jdbc配置上SocketTimeout這個(gè)參數(shù),在自測(cè)過(guò)程上都出現(xiàn)了大的查詢沒(méi)有執(zhí)行完,因?yàn)镾ocketTimeout時(shí)間到了而斷開(kāi)并拋出socket timeout exception,當(dāng)時(shí)很開(kāi)心,以為問(wèn)題解決了,當(dāng)把這個(gè)拿給同事時(shí),同事試了幾次,有時(shí)候會(huì)timeout斷開(kāi),有時(shí)候卻根本不斷開(kāi),直到sql執(zhí)行成功返回,基本宣布這個(gè)參數(shù)失敗。
再一次失敗后,都快覺(jué)得這個(gè)問(wèn)題搞不定了,我覺(jué)得不太可能是官方定義了一個(gè)不靠譜的參數(shù),更可能是自己理解上面的錯(cuò)誤,后來(lái)又反復(fù)查看了這個(gè)參數(shù)的解釋(The number of seconds after which Impala closes the connection with the client application if the connection is idle),一旦連接空閑超過(guò)這個(gè)時(shí)長(zhǎng),impala就會(huì)關(guān)閉應(yīng)該客戶端的連接。什么叫connection is idle,以及它為何叫socketTimeout卻不是查詢超時(shí)的英文呢?socket是網(wǎng)絡(luò)層,而且在參數(shù)定義中,說(shuō)連接空閑,而不是連接占用的時(shí)間。有了這些疑問(wèn)后,又搜索查詢了一番,最終在一篇文章中,很詳細(xì)的解釋了jdbc中的 各種timeout 。
通過(guò)這篇文章的講解,我知道我之前在hive jdbc配置的Statement.setQueryTime()是statement timeout,它是依賴于更低基本的socket timeout, impala沒(méi)有生效的原因很大可能是對(duì)于impala的查詢statement并沒(méi)有去處理超時(shí)(Statement Timeout Execution Process for JDBC Driver),而對(duì)hive查詢卻做了處理。
而cloudera jdbc提供了socket timeout參數(shù),也在statement timeout提供了超時(shí)的處理,即statement查詢超時(shí)后會(huì)中斷查詢并拋出java.sql.SQLTimeoutException。所以配置上Statement.setQueryTime(),就能夠在查詢超過(guò)timeout值后拋出異常,關(guān)閉連接。
最后講queryTimeOut配置入DataSource,與orm結(jié)合,查詢超時(shí)問(wèn)題算告一段落。
cloudera jdbc: https://www.cloudera.com/documentation/enterprise/5-11-x/topics/impala_jdbc.html#jdbc_driver_choice
query timeout: https://www.cubrid.org/blog/understanding-jdbc-internals-and-timeout-configuration
帶有kerberos驗(yàn)證連接impala: http://blog.csdn.net/tlqfreedom/article/details/75220058
本站其他內(nèi)容推薦
1、filbert macrophage manipulable gigolo panhandle tottery self-reliance Pilates Apollyon puncture
2、acer官網(wǎng)下載,宏基官網(wǎng)驅(qū)動(dòng)下載中心
3、flora什么意思(flora中文翻譯,flora是什么意思,flora發(fā)音、用法及例句)
4、轍[ zhé ],轍字的拼音,部首,意思,轍字的筆順,筆畫(huà)順序怎么寫
5、形容相同的成語(yǔ),形容很相同的成語(yǔ),四字成語(yǔ),四字詞語(yǔ)
6、extraterritorial是什么意思,extraterritorial中文翻譯,extraterritorial怎么讀、發(fā)音、用法及例句
7、dentiform是什么意思,dentiform中文翻譯,dentiform怎么讀、發(fā)音、用法及例句
8、rescript是什么意思,rescript中文翻譯,rescript怎么讀、發(fā)音、用法及例句
9、overuses
10、psychiatry是什么意思,psychiatry中文翻譯,psychiatry怎么讀、發(fā)音、用法及例句
11、exceeds
版權(quán)聲明: 本站僅提供信息存儲(chǔ)空間服務(wù),旨在傳遞更多信息,不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任,不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)。如因作品內(nèi)容、版權(quán)和其它問(wèn)題需要同本網(wǎng)聯(lián)系的,請(qǐng)發(fā)送郵件至 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。