當前位置:首頁 » 雲伺服器 » 網站伺服器集群搭建

網站伺服器集群搭建

發布時間: 2024-02-02 14:25:35

㈠ hadoop集群搭建在阿里雲伺服器上 雲伺服器配置要求是多少

如果是集群的話,我考慮需要流暢運行的話,2核4G配置是可以滿足的。因為這個集群形式,用於適用於物聯網、車聯網、監控、安全風控、即時通訊、消息存儲等行業場景,所以數據量是比較大的,所以配置太低了跑不動,會卡死的。
因為hadoop是海量數據的處理能力,所以伺服器一定不能太小配置了,跑不動了就沒實際用途了。最好使用4核8G內存及以上配置。
因為這方面內容較多,這里也寫不開那麼多內容,所以你可以留言或到我的博客上搜索相關內容,老魏有寫過教程,還不止一篇,都挺詳細的內容,可以幫助你入門。

㈡ 如何搭建大型網站系統

程序員們都希望能通過自己的努力學習,技術提升,拿到更好的收入,技術提升和高收入雖然不是輕易就能實現的,但總是有章可循。

一個成熟的大型網站(如淘寶、京東等)的系統架構並不是開始設計就具備完整的高性能、高可用、安全等特性,它總是隨著用戶量的增加,業務功能的擴展逐漸演變完善的,在這個過程中,開發模式、技術架構、設計思想也發生了很大的變化,就連技術人員也從幾個人發展到一個部門甚至一條產品線。所以成熟的系統架構是隨業務擴展而完善出來的,並不是一蹴而就;不同業務特徵的系統,會有各自的側重點,例如淘寶,要解決海量的商品信息的搜索、下單、支付,例如騰訊,要解決數億的用戶實時消息傳輸,網路它要處理海量的搜索請求,他們都有各自的業務特性,系統架構也有所不同。盡管如此我們也可以從這些不同的網站背景下,找出其中共用的技術,這些技術和手段可以廣泛運行在大型網站系統的架構中,下面就通過介紹大型網站系統的演化過程,來認識這些技術和手段。

一、最開始的網站架構

最初的架構,應散基用程序、資料庫、文件都部署在一台伺服器上,如圖:

二、應用、數據、文件分離

隨著業務的擴展,一台伺服器已經不能滿足性能需求,故將應用程序、資料庫、文件各自部署在獨立的伺服器上,並且根據伺服器的用途配置不同的硬體,達到最佳的性能效果。

三、利用緩存改善網站性能

在硬體優化性能的同時,同時也通過軟體進行性能優化,在大部分的網站系統中,都會利用緩存技術改善系統的性能,使用緩存主要源於熱點數據的存在,大部分網站訪問都遵循28原則(即80%的訪問請求,最終落在20%的數據上),所以我們可以對熱點數據進行緩存,減少這些數據的訪問路徑,提高用戶體驗。

緩存實現常見的方式是本地緩存、分布式緩存。當然還有CDN、反向代理等,這個後面再講。本地緩存,顧名思義是將數據緩存在應用伺服器本地,可以存在內存中,也可以存在文件,OSCache就是常用的本地緩存組件。本地緩存的特點是速度快,但沖薯謹因為本地空間有限所以緩存數據量也有限。分布式緩存的特點是,可以緩存海量的數據,並且擴展非常容易,在門戶類網站中常常被使用,速度按理沒有本地緩存快,常用的分布式緩存是Memcached、Redis。

四、使用集群改善應用伺服器性能

應用伺服器作為網站的入口,會承擔大量的請求,我們往往通過應用伺服器集群來分擔請求數。應用伺服器前面部署負載均衡伺服器調度用戶請求,根據分發策略將請求分發到多個應用伺服器節點。

常用的負載均衡技術硬體的有F5,價格比較貴,軟體的有LVS、Nginx、HAProxy。LVS是四層負載均衡,根據目標地址和埠選擇內部伺服器,Nginx是七層負載均衡和HAProxy支持四層、七層負載均衡,可以根據報文內容選擇內部伺服器,因此LVS分發路徑優於Nginx和HAProxy,性能要高些,而Nginx和HAProxy則更具配置性,如可以用來做動靜分離(根據請求報文特徵,選擇靜態資源伺服器還是應用伺服器)。

五、資料庫讀寫分離和分庫分表

隨著用戶量的增加,資料庫成為最大的瓶頸,改善資料庫性能常用的手段是進行讀寫分離以及分表,讀寫分離顧名思義就是將資料庫分為讀庫和寫庫,通過主備功能實現數據同步。分庫分表則分為水平切分和垂直切分,水平切換則是對一個資料庫特大的表進行拆分,例如用戶表。垂直切分則是根據業務不同來切換,如用戶業務、商品業務相關的表放在不同的資料庫中。

六、使用CDN和反向代理提高網站性能

假如我們的伺服器都部署在成都的機房,對於四川的用戶來說訪問是較快的,而對於北京的用戶訪問是較慢的,這是由於四川和北京分別屬於電信和聯通的不同發達地區,北京用戶訪問需要通過互聯路由器經過較長的路徑才能訪問到成都的伺服器,返迴路徑也一樣,所以數據傳輸時間比較長。對於這種情況,常常使用CDN解決,CDN將數據內容緩存到運營商的機房,用戶訪問時先從最近的運營商獲取數據,這樣大大減少了網路訪問的路徑。比較專業的CDN運營商有藍汛、網宿。

而反向代理,則是部署在網站的機房,當用戶請求達到時首先訪問反向代理伺服器,反向代理伺服器將緩存的數據返回給用戶,如果沒有沒有緩手冊存數據才會繼續走應用伺服器獲取,也減少了獲取數據的成本。反向代理有Squid,Nginx。

七、使用分布式文件系統

用戶一天天增加,業務量越來越大,產生的文件越來越多,單台的文件伺服器已經不能滿足需求。需要分布式的文件系統支撐。常用的分布式文件系統有NFS。

八、使用Nosql和搜索引擎

對於海量數據的查詢,我們使用nosql資料庫加上搜索引擎可以達到更好的性能。並不是所有的數據都要放在關系型數據中。常用的NOSQL有mongodb和redis,搜索引擎有lucene。

九、將應用伺服器進行業務拆分

隨著業務進一步擴展,應用程序變得非常臃腫,這時我們需要將應用程序進行業務拆分,如網路分為新聞、網頁、圖片等業務。每個業務應用負責相對獨立的業務運作。業務之間通過消息進行通信或者同享資料庫來實現。

十、搭建分布式服務

這時我們發現各個業務應用都會使用到一些基本的業務服務,例如用戶服務、訂單服務、支付服務、安全服務,這些服務是支撐各業務應用的基本要素。我們將這些服務抽取出來利用分部式服務框架搭建分布式服務。淘寶的Dubbo是一個不錯的選擇。

大型網站的架構是根據業務需求不斷完善的,根據不同的業務特徵會做特定的設計和考慮,本文只是講述一個常規大型網站會涉及的一些技術和手段。

如果你還有這些疑問,成熟的網站架構師需要學什麼核心技能?java程序員如何晉升為互聯網架構師?Java語言在架構搭建中扮演什麼角色?怎樣成為年收入幾十萬的架構師?歡迎來電來訪昌平北大青鳥java培訓。

㈢ 伺服器集群是怎麼做的

隨著單台伺服器優勢的減弱,相信越來越多的人開始逐漸耳聞「集群」這個概念,很大站長學會香港站群盯含伺服器,終於把網站搞上去了,對於熱備份伺服器系統凱虧笑來說同樣有空改優勢,伺服器集群技術

㈣ SQLSERVER怎麼搭建伺服器集群實現負載均衡

很多組織機構慢慢的在不同的伺服器和地點部署SQL Server資料庫——為各種應用和目的——開始考慮通過SQL Server集群的方式來合並。

將SQL Server實例和資料庫合並到一個中心的地點可以減低成本,尤其是維護和軟硬體許可證。此外,在合並之後,可以減低所需機器的數量,這些機器就可以用於備用。

當尋找一個備用,比如高可用性的環境,企業常常決定部署Microsoft的集群架構。我常常被問到小的集群(由較少的節點組成)SQL Server實例和作為中心解決方案的大的集群哪一種更好。在我們比較了這兩個集群架構之後,我讓你們自己做決定。

什麼是Microsoft集群伺服器

MSCS是一個Windows Server企業版中的內建功能。這個軟體支持兩個或者更多伺服器節點連接起來形成一個「集群」,來獲得更高的可用性和對數據和應用更簡便的管理。MSCS可以自動的檢查到伺服器或者應用的失效,並從中恢復。你也可以使用它來(手動)移動伺服器之間的負載來平衡利用率以及無需停機時間來調度計劃中的維護任務。

這種集群設計使用軟體「心跳」來檢測應用或者伺服器的失效。在伺服器失效的事件中,它會自動將資源(比如磁碟和IP地址)的所有權從失效的伺服器轉移到活動的伺服器。注意還有方法可以保持心跳連接的更高的可用性,比如站點全面失效的情況下。

MSCS不要求在客戶計算機上安裝任何特殊軟體,因此用戶在災難恢復的經歷依賴於客戶-伺服器應用中客戶一方的本質。客戶的重新連接常常是透明的,因為MSCS在相同的IP地址上重啟應用、文件共享等等。進一步,為了災難恢復,集群的節點可以處於分離的、遙遠的地點。

在集群伺服器上的SQL Server

SQL Server 2000可以配置為最多4個節點的集群,而SQL Server 2005可以配置為最多8個節點的集群。當一個SQL Server實例被配置為集群之後,它的磁碟資源、IP地址和服務就形成了集群組來實現災難恢復。

SQL Server 2000允許在一個集群上安裝16個實例。根據在線幫助,「SQL Server 2005在一個伺服器或者處理器上可以支持最多50個SQL Server實例,」但是,「只能使用25個硬碟驅動器符,因此如果你需要更多的實例,那麼需要預先規劃。」

注意SQL Server實例的災難恢復階段是指SQL Server服務開始所需要的時間,這可能從幾秒鍾到幾分鍾。如果你需要更高的可用性,考慮使用其他的方法,比如log shipping和資料庫鏡像。

單個的大的SQL Server集群還是小的集群

下面是大的、由更多的節點組成的集群的優點:

◆更高的可用新(更多的節點來災難恢復)。

◆更多的負載均衡選擇(更多的節點)。

◆更低廉的維護成本。

◆增長的敏捷性。多達4個或者8個節點,依賴於SQL版本。

◆增強的管理性和簡化環境(需要管理的少了)。

◆更少的停機時間(災難恢復更多的選擇)。

◆災難恢復性能不受集群中的節點數目影響。

下面是單個大的集群的缺點:

◆集群節點數目有限(如果需要第9個節點怎麼辦)。

◆在集群中SQL實例數目有限。

◆沒有對失效的防護——如果磁碟陣列失效了,就不會發生災難恢復。

◆使用災難恢復集群,無法在資料庫級別或者資料庫對象級別,比如表,創建災難恢復集群。

虛擬化和集群

虛擬機也可以參與到集群中,虛擬和物理機器可以集群在一起,不會發生問題。SQL Server實例可以在虛擬機上,但是性能可能會受用影響,這依賴於實例所消耗的資源。在虛擬機上安裝SQL Server實例之前,你需要進行壓力測試來驗證它是否可以承受必要的負載。

在這種靈活的架構中,如果虛擬機和物理機器集群在一起,你可以在虛擬機和物理機器之間對SQL Server進行負載均衡。比如,使用虛擬機上的SQL Server實例開發應用。然後在你需要對開發實例進行壓力測試的時候,將它災難恢復到集群中更強的物理機器上。

集群伺服器可以用於SQL Server的高可用性、災難恢復、可擴展性和負載均衡。單個更大的、由更多的節點組成的集群往往比小的、只有少數節點的集群更好。大個集群允許更靈活環境,為了負載均衡和維護,實例可以從一個節點移動到另外的節點。

㈤ 高性能高並發網站架構,教你搭建Redis5緩存集群

一、Redis集群介紹

Redis真的是一個優秀的技術,它是一仔圓種key-value形式的NoSQL內存資料庫,由ANSI C編寫,遵守BSD協議、支持網路、可基於內存亦可持久化的日誌型、Key-Value資料庫,並提供多種語言的API。 Redis最大的特性是它會將所有數據都放在內存中,所以讀寫速度性能非常好。Redis是基於內存進行操作的,性能較高,可以很好的在一定程度上解決網站一瞬間的並發量,例如商品搶購秒殺等活動。

網站承受高並發訪問壓力的同時,還需要從海量數據中查詢出滿足條件的數據,需要快速響應,前端發送請求、後端和mysql資料庫交互,進行sql查詢操作,讀寫比較慢,這時候引入Redis ,把從mysql 的數據緩存到Redis 中,下次讀取時候性能就會提高;當然,它也支持將內存中的數據以快照和日誌的形式持久化到硬碟,這樣即使在斷電、機器故障等異常情況發生時數據也不會丟失,Redis能從硬碟中恢復快照數據到內存中。

Redis 發布了穩定版本的 5.0 版本,放棄 Ruby的集群方式,改用 C語言編寫的 redis-cli的方式,是集群的構建方式復雜度大大降低。Redis-Cluster集群採用無中心結構,每個節點保存數據和整個集群狀態,每個節點都和其他所有節點連接。

為了保證數據的高可用性,加入了主從模式,一個主節點對應一個或多個從節點,主節點提供數據存取,從節點則是從主節點拉取數據備份,當這個主節點掛掉後,就會有這個從節點選取一個來充當主節點,從而保證集群不會掛掉。

redis-cluster投票:容錯,投票過程是集群中所有master參與,如果半數以上master節點與master節點通信超過(cluster-node-timeout),認為當前master節點掛掉。

集群中至少應該有奇數個節點,所以至少有三個節點,每個節點至少有一個備份節點,所以下面使用6節點枝辯(主節點、備份節點由redis-cluster集群確定)。6個節點分布在一台機器上,採用三主三從的模式。實際應用中,最好用多台機器,比如說6個節點分布到3台機器上,redis在建立集群時為自動的將主從節點進行不同機器的分配。

二、單機redis模式

下載源碼redis5.0並解壓編譯

wget http://download.redis.io/releases/redis-5.0.0.tar.gz

tar xzf redis-5.0.0.tar.gz

cd redis-5.0.0

make

redis前端啟動需要改成後台啟動.

修改redis.conf文件,將daemonize no -> daemonize yes

vim redis.conf

啟動redis

/www/server/redis/src/redis-server /www/server/redis/redis.conf

查看redis是否在運行

ps aux|grep redis

現在是單機redis模式完成。

三、redis集群模式:

1.創猛戚缺建6個Redis配置文件

cd /usr/local/

mkdir redis_cluster //創建集群目錄

cd redis_cluster

mkdir 7000 7001 7002 7003 7004 7005//分別代表6個節點

其對應埠 7000 7001 7002 70037004 7005

2.復制配置文件到各個目錄

cp /www/server/redis/redis.conf /usr/local/redis_cluster/7000/

cp /www/server/redis/redis.conf /usr/local/redis_cluster/7001/

cp /www/server/redis/redis.conf /usr/local/redis_cluster/7002/

cp /www/server/redis/redis.conf /usr/local/redis_cluster/7003/

cp /www/server/redis/redis.conf /usr/local/redis_cluster/7004/

cp /www/server/redis/redis.conf /usr/local/redis_cluster/7005/

3.分別修改配置文件

vim /usr/local/redis_cluster/7000/redis.conf

vim /usr/local/redis_cluster/7001/redis.conf

vim /usr/local/redis_cluster/7002/redis.conf

vim /usr/local/redis_cluster/7003/redis.conf

vim /usr/local/redis_cluster/7004/redis.conf

vim /usr/local/redis_cluster/7005/redis.conf

如下

port 7000 #埠

cluster-enabled yes #啟用集群模式

cluster-config-file nodes_7000.conf #集群的配置 配置文件首次啟動自動生成

cluster-node-timeout 5000 #超時時間 5秒

appendonly yes #aof日誌開啟 它會每次寫操作都記錄一條日誌

daemonize yes #後台運行

protected-mode no #非保護模式

pidfile /var/run/redis_7000.pid

//下面可以不寫

#若設置密碼,master和slave需同時配置下面兩個參數:

masterauth "jijiji" #連接master的密碼

requirepass "jijiji" #自己的密碼

cluster-config-file,port,pidfile對應數字

4.啟動節點

cd /www/server/redis/src/

./redis-server /usr/local/redis_cluster/7000/redis.conf

./redis-server /usr/local/redis_cluster/7001/redis.conf

./redis-server /usr/local/redis_cluster/7002/redis.conf

./redis-server /usr/local/redis_cluster/7003/redis.conf

./redis-server /usr/local/redis_cluster/7004/redis.conf

./redis-server /usr/local/redis_cluster/7005/redis.conf

查看redis運行

ps aux|grep redis

5.啟動集群

/www/server/redis/src/redis-cli --cluster create 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 --cluster-replicas 1

這里使用的命令是create,因為我們要創建一個新的集群。 該選項--cluster-replicas 1意味著我們希望每個創建的主伺服器都有一個從服。

輸入yes

至此,Reids5 集群搭建完成。

6.檢查Reids5集群狀態

可以執行redis-cli --cluster check host:port檢查集群狀態slots詳細分配。

redis-cli --cluster info 127.0.0.1:7000

7.停止Reids5集群

(1).因為Redis可以妥善處理SIGTERM信號,所以直接kill -9也是可以的,可以同時kill多個,然後再依次啟動。

kill -9 PID PID PID

(2).redis5 提供了關閉集群的工具,修改文件: /www/server/redis/utils/create-cluster/create-cluster

埠PROT設置為6999,NODES為6,工具會生成 7000-7005 六個節點 用於操作。

修改後,執行如下命令關閉集群:

/www/server/redis/utils/create-cluster/create-cluster stop

重新啟動集群:

/www/server/redis/utils/create-cluster/create-cluster start

8.幫助信息

執行redis-cli --cluster help,查看更多幫助信息

redis-cli --cluster help

吉海波

㈥ 伺服器集群怎麼搭建linux平台的

linux伺服器集群平台的搭建比較簡單,有專門的均衡軟體,比如lvs,lvs是一個集群系統,由很多伺服器組成,可以根據需要,把它門分為三層,一層是前端機,用於均衡,相當於公平為系統分配工作,二層是伺服器群,比如web伺服器群,DNS,mail群等,這些就是接待員,把均衡器分配的工作進行處理,第三層是存儲設備,用於存儲數據,相當於檔案庫。

知道這些後,要搭建就非常容易,有現成的軟體,比如我有四台web伺服器,2台資料庫,1台前置機 ,安裝linux系統,安裝lvs軟體,比如
heartbeat-2.1.4-9.el5.i386.rpm
heartbeat-ldirectord-2.1.4-9.el5.i386.rpm
libnet-1.1.4-3.el5.i386.rpm
heartbeat-devel-2.1.4-9.el5.i386.rpm
heartbeat-pils-2.1.4-10.el5.i386.rpm
perl-MailTools-1.77-1.el5.noarch.rpm
heartbeat-gui-2.1.4-9.el5.i386.rpm
heartbeat-stonith-2.1.4-10.el5.i386.rpm
當然還需要配置,你可以自己網路有關lvs集群的詳細安裝說明。希望能幫助你。

熱點內容
linux查看ftp日誌 發布:2024-11-30 06:33:19 瀏覽:474
設置截屏存儲 發布:2024-11-30 06:29:00 瀏覽:393
jpg演算法 發布:2024-11-30 06:28:55 瀏覽:194
怎麼刪除u盤中的文件夾 發布:2024-11-30 06:28:20 瀏覽:215
iphone文件夾打開 發布:2024-11-30 06:13:43 瀏覽:297
如何配置Javaweb環境 發布:2024-11-30 06:09:24 瀏覽:120
怎麼使用Androidapi 發布:2024-11-30 06:08:43 瀏覽:60
包鋼伺服器地址 發布:2024-11-30 06:06:27 瀏覽:562
繁體壓縮 發布:2024-11-30 06:06:22 瀏覽:38
osql執行sql 發布:2024-11-30 06:01:37 瀏覽:12