B S架構的幾種形式

2022-07-15 01:12:12 字數 2161 閱讀 1669

b/s架構的全稱為browser/server,即瀏覽器/伺服器結構。browser指的是web瀏覽器,極少數事務邏輯在前端實現,但主要事務邏輯在伺服器端實現。b/s架構的系統無須特別安裝,只有web瀏覽器即可。其實就是我們前端現在做的一些事情,大部分的邏輯交給後台來實現,我們前端大部分是做一些資料渲染,請求等比較少的邏輯。

b/s 架構分層。

第一層表現層:主要完成使用者和後台的互動及最終查詢結果的輸出功能。

第二層邏輯層:主要是利用伺服器完成客戶端的應用邏輯功能。

第三層資料層:主要是接受客戶端請求後獨立進行各種運算。

b/s架構的優點

1、客戶端無需安裝,有web瀏覽器即可。

2、bs架構可以直接放在廣域網上,通過一定的許可權控制實現多客戶訪問的目的,互動性較強。

b/s架構的缺點

1、在跨瀏覽器上,bs架構不盡如人意。

2、表現要達到cs程式的程度需要花費不少精力。

3、在速度和安全性上需要花費巨大的設計成本,這是bs架構的最大問題。

4、客戶端伺服器端的互動是請求-響應模式,通常需要重新整理頁面,這並不是客戶樂意看到的。(在ajax風行後此問題得到了一定程度的緩解)

第一種 客戶端 伺服器 資料庫

1、客戶端向伺服器發起http請求

2、伺服器中的web服務層能夠處理http請求

3、伺服器中的應用層部分呼叫業務邏輯,呼叫業務邏輯上的方法

4、如果有必要,伺服器會和資料庫進行資料交換. 然後將模版+資料渲染成最終的html, 返送給客戶端

第二種:客戶端-web伺服器-應用伺服器-資料庫

客戶端向web伺服器發起http請求

web服務能夠處理http請求,並且呼叫應用伺服器暴露在外的restful介面

應用伺服器的restful介面被呼叫,會執行對應的暴露方法.如果有必要和資料庫進行資料互動,應用伺服器會和資料庫進行互動後,將json資料返回給web伺服器

web伺服器將模版+資料組合渲染成html返回給客戶端

第三種方法:客戶端-負載均衡器(nginx)-中間伺服器(node)-應用伺服器-資料庫

這種模式一般用在有大量的使用者,高併發的應用中

1、整正暴露在外的不是真正web伺服器的位址,而是負載均衡器器的位址

2、客戶向負載均衡器發起http請求

3、負載均衡器能夠將客戶端的http請求均勻的**給node伺服器集群

4、node伺服器接收到http請求之後,能夠對其進行解析,並且能夠呼叫應用伺服器暴露在外的restful介面

5、應用伺服器的restful介面被呼叫,會執行對應的暴露方法.如果有必要和資料庫進行資料互動,應用伺服器會和資料庫進行互動後,將json資料返回給node

6、node層將模版+資料組合渲染成html返回反向**伺服器

7、反向**伺服器將對應html返回給客戶端

nginx的優點有:  

1、它能夠承受、高併發的大量的請求,然後將這些請求均勻的**給內部的伺服器,分攤壓力.

2、反向**能夠解決跨域引起的問題,因為nginx,node,應用伺服器,資料庫都處於內網段中。

3、nginx非常擅長處理靜態資源(img,css,js,video),所以也經常作為靜態資源伺服器,也就是我們平時所說的cdn

比如:前乙個使用者訪問index.html, 經過nginx-node-應用伺服器-資料庫鏈路之後,nginx會把index.html返回給使用者,並且會把index.html快取在nginx上,

下乙個使用者再想請求index.html的時候,請求nginx伺服器,nginx發現有index.html的快取,於是就不用去請求node層了,會直接將快取的頁面(如果沒過期的話)返回給使用者。

bs架構的系統能連線mysql嗎 bs架構是什麼

bs brouser server 架構,是一種瀏覽器和伺服器架構模式。它隨著internet技術的興起,是對二層c s架構的一種變化或者改進的架構。它把二層c s結構的事務處理邏輯模組從客戶機的任務中分離出來,由web伺服器單獨組成一層來負擔其任務,從而減輕了客戶機的壓力。bs架構是乙個三層框架,...

B S網路架構

b s基於統一的應用層協議http來互動資料,目前的b s網路架構大多採用如圖所示的架構設計,既要滿足海量使用者訪問請求,又要保持使用者請求的快速響應。當乙個使用者在瀏覽器輸入www.taobao.com這個url時,將會發生很多操作。首先它會請求dns把這個網域名稱解析成對應的ip位址,然後根據這...

CS架構與BS架構

cs架構 c s client server 基於客戶端 伺服器 cs架構的優點就是基於客戶機和伺服器模式,大部分的運算是在客戶機上執行,從而提高一定的效率,但是也因為他在客戶機上執行,所以要安裝客戶端,也導致了軟體維護和公升級時的不方便,需要程式設計師親自進行公升級配置。舉例 qq聊天軟體。以及眾...