當前位置:首頁 » 雲伺服器 » 幾台伺服器如何同步深度學習訓練

幾台伺服器如何同步深度學習訓練

發布時間: 2022-07-15 08:11:58

『壹』 兩台伺服器如何數據同步

用同步軟體不就搞定了,省的瞎折騰了啊
我現在用的Bestsync2011同步軟體,我覺得還蠻好用的,速度比較快,日誌功能很強大,反正如果同步有任何錯誤,你能查看到每個文件的同步狀態。
for example: 你可以把軟體安裝在伺服器上,建立1個任務,來將這兩台伺服器進行實時同步。
1. 在主菜單裡面點 編輯-->追加任務

文件夾1選擇 伺服器A需要同步的文件夾位置
文件夾2選擇 伺服器B需要同步的文件夾位置
方向為由文件夾2到文件夾1
然後選擇 完成 按鈕

在主菜單上,點選 開始 按鈕, 這樣, A與B上的文件就完全一致了。

2. 在任務列表中,雙擊你剛剛建立的這個任務,然後會彈出屬性對話框

翻到 「日程」 那頁
勾選上 「文件一旦變化,立即同步」這個選項
最後點擊 確定 按鈕

這樣,只要伺服器A的指定文件夾一旦變化,就實時同步到伺服器B了以此類推
他們新浪微博上要好多教程,你不清楚可以去看那上的手冊。。。

『貳』 如何讓多台伺服器實現數據同步

如何讓所有伺服器之間數據同步

1、採用高可用sureHA軟體鏡像型,一台主伺服器,一台備伺服器,通過網線實時將數據備份,實現伺服器雙機互備的功能,此方式保證多台伺服器之間數據的一致性。

2、採用高可用sureHA雙機熱備共享型。一台主伺服器,一台備伺服器,鏈接一台存儲,將數據放到存儲裡面,實現數據的共享。此方式保證多台伺服器之間數據的一致性。

3、可實現伺服器虛擬化,把所有的伺服器物理資源都整理成一個大的資源池,數據都存放在磁碟陣列上面,所有應用系統都通過調用磁碟陣列裡面的數據,此方式保證多台伺服器之間數據的一致性。

不管技術怎麼實現,在伺服器方面還是需要人為的進行操作和監督,伺服器同步也成為不可缺少的一部分。所以海騰數據的伺服器的硬體要求和機房的線路穩定是保障以上實現的關鍵。參考海騰數據伺服器租用

伺服器數據同步

『叄』 兩台資料庫伺服器 如何進行數據同步操作

這個要根據不同情況具體分析,有幾種方案參考:

  1. 資料庫A和資料庫B是建立在兩台獨立的資料庫伺服器上,那麼採用dblink方式是一種可行的方式,存在兩個數據同步過程:

    一、資料庫A正常運行的時候需要將數據同步到備用庫即資料庫B;

    二、資料庫A不正常的時候啟用資料庫B,在資料庫A恢復正常之前的數據更新都發生在資料庫B,那麼需要將資料庫B的數據同步給資料庫A。

  2. 第一種方式:前提是資料庫A和資料庫B本地網是24小時互通的同時對數據同步實時性有比較高的要求,那麼可以建立DBLINK,在兩個庫都建觸發器,不管當前在哪個庫發生數據更新的時候實時同步數據到目標資料庫;

  3. 第二種方式:如果數據同步的實時性要求不高,則可以通過定製存儲過程的方式(給兩個庫的數據表加時間戳或者更新標志,)定時同步數據;

  4. 第三種方式:通過給兩個資料庫的數據表加更新標志欄位,以第一種方式為主以滿足實時性的要求,以第二種方式為輔彌補可能存在的觸發器執行更新未成功的情況。

  5. 以上的方案都是從數據層面所做的處理,對於數據實時同步還是會存在一定的風險,那麼雙機熱備應該說是最好的選擇了。

『肆』 網站有多台伺服器,怎麼實現同步

1.首先域名並非直接解析到一個IP上,你可以網路下DNSPOD,就會明白,域名可以根據地域不通解析到不同的伺服器IP上。
2.非常多的集群並不是你直接可以訪問到的,你所訪問到的只是前面一台入口伺服器。這台伺服器負責轉發請求。它可以根據目前後端幾台專業伺服器的運行狀態,將當前你所訪問的用戶的請求轉發到一個比較健康的伺服器上面去。這方面的軟體有很多,比如Nginx,還有淘寶的Tengine,還有個專業叫LVS。
3.在後端的伺服器上每台都放上我們的代碼,然後坐等前面的入口轉發給我們請求。如果接到請求,我們就進行響應,然後返回給入口,入口再返回給用戶,最終呈現在你面前。
4.另外,用戶上傳的圖片之類的動態文件,要麼就專門放在文件伺服器上,一般需要獨立的域名,如http://img1.xxx.com等等,要麼就使用Rsync進行實時同步。

『伍』 把資料庫放在兩台伺服器上面,請問如何才能實現兩台伺服器的數據同步

  1. SQL Server 復制:事務發布

  2. 配置發布伺服器,

  3. 快照發布:隔一段時間會覆蓋訂閱伺服器的資料庫,在訂閱伺服器上做的修改同樣被覆蓋;

  4. 事務發布:是一種接近實時地從源到目標分發數據的方法;

  5. 具有可更新訂閱的事務發布:訂閱伺服器可更新發布伺服器的數據;

  6. 合並發布:發布伺服器和訂閱伺服器的更新都會同步到對方,注意ID在合並發布上的沖突

  7. 1. 在SQL SERVER下實現發布伺服器和訂閱伺服器的通信正常(即可以互訪),打開1433埠,在防火牆中設置入站規則;

  8. 2. 發布伺服器與訂閱伺服器的SQL Server Agent代理帳號必須設置的一樣,否則不能互訪;

  9. 3. 如果你希望在復制的過程中一並復制非聚集索引,可以對發布屬性-項目進行如下設置,修改完之後需要重新生成快照;

『陸』 如何實現二台伺服器內容的同步!

雙線智能解析是針對目前電信與網通互聯互通的問題推出的一種DNS解決方案。具體實現的效果是:把同樣的域名如
http://www.winiis.com
,網通的客戶訪問會返回一個指向網通伺服器的IP地址,
電信的客戶訪問會指向一個電信伺服器的IP地址。通過這種方式,盡量避免網通的客戶去訪問電信的網路,
以及電信的客戶去訪問網通的網路。
雙線智能DNS解析的用途:
1、雙線路機房:
服務本身有兩個IP,一個電信IP,一個網通IP。
2、鏡象網站;
在網通及電信的機房放置多個相同的鏡象站點,
讓不同的地方客戶訪問不同的站點。
3、負載均衡:
對於流量比較大的網站,可以通過該功能把流量分配到幾台不同的伺服器上,以提高網站的運行速度。
4、個性化站點服務:
比如通過IP表的重新定義,
讓國外的客戶自動訪問英文版的網站;
讓國內的客戶自動訪問中文版的網站。
我們公司現有推出這種系統,網址是http;//
www.winiis.com

http;//
www.winiis.com/winmydns.asp

參考資料:http;//
www.winiis.com/winmydns.asp

『柒』 兩台伺服器的數據同步如何實現

1.安裝CentOS7.0yum install ssh 安裝SSH協議yum install rsync (rsync是一個遠程數據同步工具,可通過LAN/WAN快速同步多台主機間的文件)service sshd restart 啟動服務任務

『捌』 我在買兩台伺服器怎麼做到兩台伺服器網站數據同步

不管是否是微服務架構,應用的各個模塊之間都需要頻繁的通信、協作、共享數據,實現系統的整體價值。區別點在於單體應用是通過本地方法調用來完成;在微服務中是通過遠程API調用完成。
而共享數據最賤的方式就是採用共享資料庫模式,也就是單體應用中最常用的方式,一般只有一個資料庫,如圖一庫多服和一庫一服的方式:

一庫多服的架構模式通常會被認為是微服務架構下的反範式,它的問題在於:

穩定性:單點故障,一個資料庫掛掉,整批服務全部停止。服務獨立性被扼殺?

耦合性:數據在一起,會給貪圖方便的開發或者DBA工程師編寫很多數據間高度依賴的程序或者工具;

擴展性:無法針對某一個服務進行精準優化或擴展,服務會大體分為兩個讀多寫少、寫多讀少,資料庫優化是根據服務而來的,不是一篇而論。

所以隨行付內部一般推薦的做法:是為每一個微服務准備一個單獨的資料庫,即一庫一服模式。這種模式更加適合微服務架構,它滿足每一個服務是獨立開發、獨立部署、獨立擴展的特性。當需要對一個服務進行升級或者數據架構改動的時候,無須影響到其他的服務。需要對某個服務進行擴展的時候,也可以手術式的對某一個服務進行局部擴容。

那麼問題來了,在改造中我們發現,以下問題,誕生了該項目:

報表中心和前端詳細頁都存在SQL Join方式,經歷我們一庫一服的拆分後,無法在繼續使用SQL Join方式了...
數據中心,做得是數據聚合,數據拆分後,給數據中心帶來了很大的麻煩...
微服務之後,各個應用模塊對資料庫的要求出現了分歧,資料庫類型多元化自主選擇還是統一...
等等...

『玖』 如何在後台部署深度學習模型

搭建深度學習後台伺服器

我們的Keras深度學習REST API將能夠批量處理圖像,擴展到多台機器(包括多台web伺服器和Redis實例),並在負載均衡器之後進行循環調度。

為此,我們將使用:

  • KerasRedis(內存數據結構存儲)

  • Flask (python的微web框架)

  • 消息隊列和消息代理編程範例

  • 本篇文章的整體思路如下:

    我們將首先簡要討論Redis數據存儲,以及如何使用它促進消息隊列和消息代理。然後,我們將通過安裝所需的Python包來配置Python開發環境,以構建我們的Keras深度學習REST API。一旦配置了開發環境,就可以使用Flask web框架實現實際的Keras深度學習REST API。在實現之後,我們將啟動Redis和Flask伺服器,然後使用cURL和Python向我們的深度學習API端點提交推理請求。最後,我們將以對構建自己的深度學習REST API時應該牢記的注意事項的簡短討論結束。

    第一部分:簡要介紹Redis如何作為REST API消息代理/消息隊列

    測試和原文的命令一致。


    第三部分:配置Python開發環境以構建Keras REST API

    文章中說需要創建新的虛擬環境來防止影響系統級別的python項目(但是我沒有創建),但是還是需要安裝rest api所需要依賴的包。以下為所需要的包。


    第四部分:實現可擴展的Keras REST API

    首先是Keras Redis Flask REST API數據流程圖

    讓我們開始構建我們的伺服器腳本。為了方便起見,我在一個文件中實現了伺服器,但是它可以按照您認為合適的方式模塊化。為了獲得最好的結果和避免復制/粘貼錯誤,我建議您使用本文的「下載」部分來獲取相關的腳本和圖像。

    為了簡單起見,我們將在ImageNet數據集上使用ResNet預訓練。我將指出在哪裡可以用你自己的模型交換ResNet。flask模塊包含flask庫(用於構建web API)。redis模塊將使我們能夠與redis數據存儲介面。從這里開始,讓我們初始化將在run_keras_server.py中使用的常量.


    我們將向伺服器傳遞float32圖像,尺寸為224 x 224,包含3個通道。我們的伺服器可以處理一個BATCH_SIZE = 32。如果您的生產系統上有GPU(s),那麼您需要調優BATCH_SIZE以獲得最佳性能。我發現將SERVER_SLEEP和CLIENT_SLEEP設置為0.25秒(伺服器和客戶端在再次輪詢Redis之前分別暫停的時間)在大多數系統上都可以很好地工作。如果您正在構建一個生產系統,那麼一定要調整這些常量。

    讓我們啟動我們的Flask app和Redis伺服器:


    在這里你可以看到啟動Flask是多麼容易。在運行這個伺服器腳本之前,我假設Redis伺服器正在運行(之前的redis-server)。我們的Python腳本連接到本地主機6379埠(Redis的默認主機和埠值)上的Redis存儲。不要忘記將全局Keras模型初始化為None。接下來我們來處理圖像的序列化:


    Redis將充當伺服器上的臨時數據存儲。圖像將通過諸如cURL、Python腳本甚至是移動應用程序等各種方法進入伺服器,而且,圖像只能每隔一段時間(幾個小時或幾天)或者以很高的速率(每秒幾次)進入伺服器。我們需要把圖像放在某個地方,因為它們在被處理前排隊。我們的Redis存儲將作為臨時存儲。

    為了將圖像存儲在Redis中,需要對它們進行序列化。由於圖像只是數字數組,我們可以使用base64編碼來序列化圖像。使用base64編碼還有一個額外的好處,即允許我們使用JSON存儲圖像的附加屬性。

    base64_encode_image函數處理序列化。類似地,在通過模型傳遞圖像之前,我們需要反序列化圖像。這由base64_decode_image函數處理。

    預處理圖片


    我已經定義了一個prepare_image函數,它使用Keras中的ResNet50實現對輸入圖像進行預處理,以便進行分類。在使用您自己的模型時,我建議修改此函數,以執行所需的預處理、縮放或規范化。

    從那裡我們將定義我們的分類方法


    classify_process函數將在它自己的線程中啟動,我們將在下面的__main__中看到這一點。該函數將從Redis伺服器輪詢圖像批次,對圖像進行分類,並將結果返回給客戶端。

    在model = ResNet50(weights="imagenet")這一行中,我將這個操作與終端列印消息連接起來——根據Keras模型的大小,載入是即時的,或者需要幾秒鍾。

    載入模型只在啟動這個線程時發生一次——如果每次我們想要處理一個映像時都必須載入模型,那麼速度會非常慢,而且由於內存耗盡可能導致伺服器崩潰。

    載入模型後,這個線程將不斷輪詢新的圖像,然後將它們分類(注意這部分代碼應該時尚一部分的繼續)


    在這里,我們首先使用Redis資料庫的lrange函數從隊列(第79行)中獲取最多的BATCH_SIZE圖像。

    從那裡我們初始化imageIDs和批處理(第80和81行),並開始在第84行開始循環隊列。

    在循環中,我們首先解碼對象並將其反序列化為一個NumPy數組image(第86-88行)。

    接下來,在第90-96行中,我們將向批處理添加圖像(或者如果批處理當前為None,我們將該批處理設置為當前圖像)。

    我們還將圖像的id附加到imageIDs(第99行)。

    讓我們完成循環和函數

    在這個代碼塊中,我們檢查批處理中是否有圖像(第102行)。如果我們有一批圖像,我們通過模型(第105行)對整個批進行預測。從那裡,我們循環一個圖像和相應的預測結果(110-122行)。這些行向輸出列表追加標簽和概率,然後使用imageID將輸出存儲在Redis資料庫中(第116-122行)。

    我們使用第125行上的ltrim從隊列中刪除了剛剛分類的圖像集。最後,我們將睡眠設置為SERVER_SLEEP時間並等待下一批圖像進行分類。下面我們來處理/predict我們的REST API端點


    稍後您將看到,當我們發布到REST API時,我們將使用/predict端點。當然,我們的伺服器可能有多個端點。我們使用@app。路由修飾符以第130行所示的格式在函數上方定義端點,以便Flask知道調用什麼函數。我們可以很容易地得到另一個使用AlexNet而不是ResNet的端點,我們可以用類似的方式定義具有關聯函數的端點。你懂的,但就我們今天的目的而言,我們只有一個端點叫做/predict。

    我們在第131行定義的predict方法將處理對伺服器的POST請求。這個函數的目標是構建JSON數據,並將其發送回客戶機。如果POST數據包含圖像(第137和138行),我們將圖像轉換為PIL/Pillow格式,並對其進行預處理(第141-143行)。

    在開發這個腳本時,我花了大量時間調試我的序列化和反序列化函數,結果發現我需要第147行將數組轉換為C-contiguous排序(您可以在這里了解更多)。老實說,這是一個相當大的麻煩事,但我希望它能幫助你站起來,快速跑。

    如果您想知道在第99行中提到的id,那麼實際上是使用uuid(通用唯一標識符)在第151行生成的。我們使用UUID來防止hash/key沖突。

    接下來,我們將圖像的id和base64編碼附加到d字典中。使用rpush(第153行)將這個JSON數據推送到Redis db非常簡單。

    讓我們輪詢伺服器以返回預測

    我們將持續循環,直到模型伺服器返回輸出預測。我們開始一個無限循環,試圖得到157-159條預測線。從這里,如果輸出包含預測,我們將對結果進行反序列化,並將結果添加到將返回給客戶機的數據中。我們還從db中刪除了結果(因為我們已經從資料庫中提取了結果,不再需要將它們存儲在資料庫中),並跳出了循環(第163-172行)。

    否則,我們沒有任何預測,我們需要睡覺,繼續投票(第176行)。如果我們到達第179行,我們已經成功地得到了我們的預測。在本例中,我們向客戶機數據添加True的成功值(第179行)。注意:對於這個示例腳本,我沒有在上面的循環中添加超時邏輯,這在理想情況下會為數據添加一個False的成功值。我將由您來處理和實現。最後我們稱燒瓶。jsonify對數據,並將其返回給客戶端(第182行)。這就完成了我們的預測函數。

    為了演示我們的Keras REST API,我們需要一個__main__函數來實際啟動伺服器

    第186-196行定義了__main__函數,它將啟動classify_process線程(第190-192行)並運行Flask應用程序(第196行)。

    第五部分:啟動可伸縮的Keras REST API

    要測試我們的Keras深度學習REST API,請確保使用本文的「下載」部分下載源代碼示例圖像。從這里,讓我們啟動Redis伺服器,如果它還沒有運行:

  • redis-server

  • 然後,在另一個終端中,讓我們啟動REST API Flask伺服器:

  • python run_keras_server.py

  • 另外,我建議在向伺服器提交請求之前,等待您的模型完全載入到內存中。現在我們可以繼續使用cURL和Python測試伺服器。

    第七部分:使用cURL訪問Keras REST API

    使用cURL來測試我們的Keras REST API伺服器。這是我的家庭小獵犬Jemma。根據我們的ResNet模型,她被歸類為一隻擁有94.6%自信的小獵犬。

  • curl -X POST -F [email protected] 'http://localhost:5000/predict'

  • 你會在你的終端收到JSON格式的預測:

  • {"predictions": [{"label": "beagle","probability": 0.9461546540260315},{"label": "bluetick","probability": 0.031958919018507004},{"label": "redbone","probability": 0.006617196369916201},{"label": "Walker_hound","probability": 0.0033879687543958426},{"label": "Greater_Swiss_Mountain_dog","probability": 0.0025766862090677023}],"success": true}

  • 第六部分:使用Python向Keras REST API提交請求

    如您所見,使用cURL驗證非常簡單。現在,讓我們構建一個Python腳本,該腳本將發布圖像並以編程方式解析返回的JSON。

    讓我們回顧一下simple_request.py

  • # import the necessary packagesimport requests# initialize the Keras REST API endpoint URL along with the input# image pathKERAS_REST_API_URL = "http://localhost:5000/predict"IMAGE_PATH = "jemma.png"

  • 我們在這個腳本中使用Python請求來處理向伺服器提交數據。我們的伺服器運行在本地主機上,可以通過埠5000訪問端點/predict,這是KERAS_REST_API_URL變數(第6行)指定的。

    我們還定義了IMAGE_PATH(第7行)。png與我們的腳本在同一個目錄中。如果您想測試其他圖像,請確保指定到您的輸入圖像的完整路徑。

    讓我們載入圖像並發送到伺服器:

  • # load the input image and construct the payload for the requestimage = open(IMAGE_PATH, "rb").read()payload = {"image": image}# submit the requestr = requests.post(KERAS_REST_API_URL, files=payload).json()# ensure the request was sucessfulif r["success"]: # loop over the predictions and display them for (i, result) in enumerate(r["predictions"]): print("{}. {}: {:.4f}".format(i + 1, result["label"], result["probability"]))# otherwise, the request failedelse: print("Request failed")

  • 我們在第10行以二進制模式讀取圖像並將其放入有效負載字典。負載通過請求發送到伺服器。在第14行發布。如果我們得到一個成功消息,我們可以循環預測並將它們列印到終端。我使這個腳本很簡單,但是如果你想變得更有趣,你也可以使用OpenCV在圖像上繪制最高的預測文本。

    第七部分:運行簡單的請求腳本

    編寫腳本很容易。打開終端並執行以下命令(當然,前提是我們的Flask伺服器和Redis伺服器都在運行)。

  • python simple_request.py

  • 使用Python以編程方式使用我們的Keras深度學習REST API的結果

    第八部分:擴展深度學習REST API時的注意事項

    如果您預期在深度學習REST API上有較長一段時間的高負載,那麼您可能需要考慮一種負載平衡演算法,例如循環調度,以幫助在多個GPU機器和Redis伺服器之間平均分配請求。

    記住,Redis是內存中的數據存儲,所以我們只能在隊列中存儲可用內存中的盡可能多的圖像。

    使用float32數據類型的單個224 x 224 x 3圖像將消耗602112位元組的內存。

『拾』 兩台伺服器間怎麼同步數據

用同步軟體
像騰訊雲,網路雲
都可以的
即時性的
希望可以幫上你

熱點內容
預編譯的作用是什麼 發布:2025-02-01 17:44:52 瀏覽:738
蘋果電腦打不開壓縮文件 發布:2025-02-01 17:39:47 瀏覽:967
無人機存儲櫃子 發布:2025-02-01 17:39:45 瀏覽:199
shell腳本編寫刪除修改 發布:2025-02-01 17:38:05 瀏覽:118
wifi連接伺服器678怎麼回事 發布:2025-02-01 17:29:10 瀏覽:261
自動編譯小說軟體 發布:2025-02-01 17:23:19 瀏覽:185
滑鼠側鍵編程 發布:2025-02-01 17:14:51 瀏覽:68
bs源碼 發布:2025-02-01 16:51:52 瀏覽:568
百度雲zip怎麼解壓 發布:2025-02-01 16:31:59 瀏覽:567
pmc密碼是什麼意思 發布:2025-02-01 16:28:49 瀏覽:784