下載吧 - 綠色安全的游戲和軟件下載中心

          軟件下載吧

          當(dāng)前位置:軟件下載吧 > 數(shù)據(jù)庫 > DB2 > MongoDB的PHP驅(qū)動(dòng)方法與技巧

          MongoDB的PHP驅(qū)動(dòng)方法與技巧

          時(shí)間:2024-02-28 13:28作者:下載吧人氣:20

          創(chuàng)建索引有時(shí)會(huì)阻塞新的連接

          當(dāng)與mongodb復(fù)制集建立連接時(shí),驅(qū)動(dòng)程序首先嘗試連接并驗(yàn)證集群中每個(gè)非 隱藏的節(jié)點(diǎn)。如果一個(gè)節(jié)點(diǎn)是“down”狀態(tài),將跳過。然而,如果一個(gè)節(jié)點(diǎn)是“UP”狀態(tài),但是持有寫鎖,那么驗(yàn)證將沒法執(zhí)行下去,因此該驅(qū)動(dòng)程序?qū)⒈粧炱鹆恕?/p>

          在mongodb 2.6版本前,在建立索引時(shí)的通病。所有的在前臺(tái)或后臺(tái)創(chuàng)建索引,在secondary端將在前臺(tái)創(chuàng)建。

          在PHP驅(qū)動(dòng)程序的1.5.3版本會(huì)有所改進(jìn),在創(chuàng)建索引時(shí),允許驗(yàn)證到second節(jié)點(diǎn)驗(yàn)證。

          減少is_master_interval值

          對于對可用性要求高的應(yīng)用程序來說,建議檢查默認(rèn)的驅(qū)動(dòng)程序運(yùn)行時(shí)的配置設(shè)置。

          mongo.is_master_interval選項(xiàng)控制著在復(fù)制集重新選舉時(shí)驅(qū)動(dòng)如何快速恢復(fù)。

          is_master_interval選項(xiàng)默認(rèn)值為15s,設(shè)置驅(qū)動(dòng)發(fā)送“isMaster”請求每個(gè)mongod實(shí)例的時(shí)間間隔。這些請求幫助驅(qū)動(dòng)程序判斷復(fù)制集的拓?fù)浣Y(jié)構(gòu),具體的來說,就是請求檢測哪個(gè)節(jié)點(diǎn)是primary并可以接收寫操作。

          建議將該值設(shè)置為1或2秒,以讓驅(qū)動(dòng)程序在集群選舉或故障轉(zhuǎn)移時(shí),能夠迅速的定位到primary節(jié)點(diǎn)。當(dāng)然啦,這也取決于有多少客戶端以及ping的頻率。

          注意,當(dāng)primary節(jié)點(diǎn)發(fā)生變化時(shí),如選舉或故障轉(zhuǎn)移,總是會(huì)有幾秒鐘驅(qū)動(dòng)程序會(huì)收到一個(gè)“MongoConnectionException” 信息 “No candidate servers found”。這些異常需要在你的代碼中進(jìn)行處理,否則會(huì)終止應(yīng)用程序。

          理解連接處理方式并配置連接TimeoutMS

          PHP驅(qū)動(dòng)程序不使用連接池。因此,建議你每個(gè)PHP進(jìn)程創(chuàng)建一個(gè)連接。但是,如果web應(yīng)用程序有許多PHP工作進(jìn)程,將會(huì)創(chuàng)建很多新的數(shù)據(jù)庫連接,PHP驅(qū)動(dòng)程序不能共享進(jìn)程之間的連接。因此,當(dāng)網(wǎng)絡(luò)節(jié)點(diǎn)慢,服務(wù)器繁忙時(shí),PHP應(yīng)用程序創(chuàng)建初始數(shù)據(jù)庫連接時(shí)特別容易受到阻礙。

          在這種情況下,建議你自定義 connectionTimeoutMS 選項(xiàng)和注意php.ini中的mongo.ping_interval選項(xiàng)。

          connectionTimeoutMS

          PHP驅(qū)動(dòng)程序不顯示的定義一個(gè)默認(rèn)的連接超時(shí)。相反,默認(rèn)值由php.ini文件中的default_socket_timeout選項(xiàng)決定,默認(rèn)是60秒。連接將等待60秒斷開,時(shí)間有些長,需要降低些。

          強(qiáng)烈建議通過連接字符串的URI選項(xiàng)中顯示設(shè)置connectionTimeoutMS選項(xiàng)。將其設(shè)置為5到30秒之間的值。

          mongo.ping_interval

          mongo.ping_interval默認(rèn)值為5秒。該選項(xiàng)設(shè)置驅(qū)動(dòng)程序發(fā)送ping請求到每個(gè)mongod實(shí)例發(fā)現(xiàn)“down”節(jié)點(diǎn)的時(shí)間間隔,用于跟蹤驅(qū)動(dòng)程序的服務(wù)器黑名單。告訴驅(qū)動(dòng)程序哪些節(jié)點(diǎn)忽略。

          標(biāo)簽MongoDB,PHP,驅(qū)動(dòng),方法,技巧

          相關(guān)下載

          查看所有評論+

          網(wǎng)友評論

          網(wǎng)友
          您的評論需要經(jīng)過審核才能顯示

          熱門閱覽

          最新排行

          公眾號

          主站蜘蛛池模板: 国产综合精品一区二区三区| 人妻无码一区二区三区四区| 海角国精产品一区一区三区糖心 | 国产精品久久无码一区二区三区网| AV无码精品一区二区三区| 制服丝袜一区在线| 午夜视频一区二区| 亚洲国产视频一区| 日韩高清一区二区三区不卡| 婷婷亚洲综合一区二区| 亚洲国产精品一区二区第四页| 国产高清在线精品一区二区三区 | 国产精品亚洲一区二区麻豆| 亲子乱av一区区三区40岁| 一区二区国产在线观看| 亚洲av午夜福利精品一区| 国产一区二区三区韩国女主播| 夜精品a一区二区三区| 国产精久久一区二区三区| 无码国产精品一区二区免费模式| 中日韩精品无码一区二区三区| 八戒久久精品一区二区三区| 一区二区三区无码视频免费福利 | 97久久精品无码一区二区天美| 加勒比精品久久一区二区三区| 高清国产精品人妻一区二区| 亚洲中文字幕乱码一区| 国产伦精品一区二区三区视频猫咪 | 东京热人妻无码一区二区av| 亚洲一区动漫卡通在线播放| 视频一区视频二区制服丝袜| 国产a∨精品一区二区三区不卡| 手机福利视频一区二区| 三上悠亚一区二区观看| 成人国产精品一区二区网站公司| 国产一区二区三精品久久久无广告| 亚洲欧美日韩一区二区三区在线 | 伊人色综合网一区二区三区 | 中文字幕一区一区三区| 鲁大师成人一区二区三区| 精品不卡一区二区|