91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

多臺服務器代碼怎么同步

發布時間:2022-01-15 16:27:15 來源:億速云 閱讀:232 作者:iii 欄目:大數據

本文小編為大家詳細介紹“多臺服務器代碼怎么同步”,內容詳細,步驟清晰,細節處理妥當,希望這篇“多臺服務器代碼怎么同步”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

集群

我們的項目如果跑在一臺機器上,如果這臺機器出現故障的話,或者用戶請求量比較高,一臺機器支撐不住的話。我們的網站可能就訪問不了。那怎么解決呢?就需要使用多臺機器,部署一樣的程序,讓幾個機器同時的運行我們的網站。那怎么怎么分發請求的我們的所有機器上。所以負載均衡的概念就出現了。

負載均衡

負載均衡是指基于反向代理能將現在所有的請求根據指定的策略算法,分發到不同的服務器上。常用實現負載均衡的可以用nginx,lvs。但是現在也有個問題,如果負載均衡服務器出現問題了怎么辦?所有冗余的概念就出現了。

冗余

冗余其實就是兩個或者多臺服務器 一個主服務器,一個從服務器。 假設一個主服務器的負載均衡服務器出現了問題,從服務器能夠替代主服務器來繼續負載均衡。實現的方式就是使用keepalive來搶占虛擬主機。

分布式

分布式其實就是將一個大項目的拆分出來,單獨運行。

舉個上面的例子。假設我們的訪問量特別大。我們就可以做成分布式,跟cdn一樣的機制。在北京,杭州,深圳三個地方都搭建一個一模一樣的集群。離北京近的用戶就訪問北京的集群,離深圳近的就訪問深圳這邊的集群。這樣就將我們網戰給拆分3個區域了,各自獨立。

再舉個例子比如我們redis分布式。redis分布式是將redis中的數據分布到不同的服務器上面,每臺服務器存儲不同的內容,而mysql集群是每臺服務器都放著一樣的數據。這也就理解了分布式和集群的概念。

MySQL 主從

mysql master服務器會把sql操作日志寫入到bin.log 日志里 slave服務器會去讀master的bin.log 日志,然后執行sql語句。

主從有以下幾個問題。

1.master服務器能寫又能讀,slave卻只能寫。

slave讀取的數據還沒有寫入,這樣該怎么解決呢?

  1. 假如緩存,從緩存中讀取。

  2. 強制從master讀取。

  3. 使用pxc集群,任何一個節點都是可讀可寫的,讀寫強一致性。

如何解決數據不一致

config/database.php mysql配置塊中將sticky設置為true

sticky 是一個 可選值,它可用于立即讀取在當前請求周期內已寫入數據庫的記錄。若 sticky 選項被啟用,并且當前請求周期內執行過 「寫」 操作,那么任何 「讀」 操作都將使用 「寫」 連接。這樣可確保同一個請求周期內寫入的數據可以被立即讀取到,從而避免主從延遲導致數據不一致的問題。不過是否啟用它,取決于應用程序的需求。

同步代碼到多臺服務器

Laravel為我們提供了擴展包laravel/envoy,它為定義遠程服務器的日常任務,提供了一套簡潔、輕量的語法。Blade 風格語法即可實現部署任務的配置、Artisan 命令的執行等。

composer global require laravel/envoy

Envoy 任務都應在項目根目錄下的 Envoy.blade.php 中定義。寫入一下內容

@servers(['web-1' => '192.168.1.1', 'web-2' => '192.168.1.2'])

@task('deploy', ['on' => ['web-1', 'web-2']])
    cd site
    git pull origin {{ $branch }}
    composer update
    php artisan migrate
@endtask

以上代碼意思就是在命令行envoy run deploy時候,我們會ssh到會web-1,web-2 執行

cd site
    git pull origin {{ $branch }}
    php artisan migrate

讀到這里,這篇“多臺服務器代碼怎么同步”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

甘德县| 荔浦县| 长海县| 阳朔县| 福贡县| 吴忠市| 图片| 天全县| 个旧市| 日喀则市| 襄城县| 云霄县| 榕江县| 农安县| 安乡县| 大关县| 凤翔县| 富蕴县| 朝阳县| 凤城市| 兰西县| 通辽市| 盐山县| 鄱阳县| 兴化市| 饶河县| 积石山| 疏勒县| 雅安市| 昆山市| 汾西县| 湟源县| 县级市| 镇平县| 奎屯市| 卢氏县| 治多县| 怀远县| 溆浦县| 嘉峪关市| 衢州市|