<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ## 18.1 水平擴展實現 當系統想提升處理能力的時候,通常用倆種選擇,一種是重置擴展架構,即提升現有系統硬件的處理能能力,比如提高CPU頻率,使用更好的存儲器。另外一種選擇是水平擴展架構,即部署系統到更多的服務器上同時提供服務。這倆種方式各有利弊,現在通常都優先采用水平擴展架構,這是因為 * 重置擴展架構 缺點:架構中,硬件提升能力有限,而且,硬件能力提升往往需要更多的花費 優點:應用系統不需要做任何改變。 * 水平擴展 優點:成本便宜 缺點:更多的應用導致管理更加復雜。對于Spring Boot 應用,會話管理是個難點 Spring Boot 應用水平擴展有倆個問題需要解決,一個是將用戶的請求派發到水平部署的任意一臺Spring Boot應用,這通常用一個反向代理服務器來實現,本書將使用nginx作為反向代理服務器 > 反向代理(Reverse Proxy)方式是指來接受internet上的連接請求,然后將請求轉發給內部網絡上的服務器,并將從服務器上得到的結果返回給internet上請求連接的客戶端,此時代理服務器對外就表現為一個反向代理服務器。 > > 正向代理服務器:是指局域網內,訪問外網,通過一個正向代理服務器訪問外網。 另外一個需要解決的是會話管理, 單個Spring Boot應用,會話管理是Tomcat 來管理,會話信息跟Tomcat存放在一起.如果部署多個Spring Boot應用,對于同一個用戶請求,即使被請求通過Nginx派發到不同的Web服務器上,也能共享會話信息。有倆種方式可以實現。 * 復制會話:Web服務器通常都支持Session復制,一臺應用的會話信息改變將立刻復制到到其他集群的web服務器上 * 集中式會話:所有Web服務器都共享一個會話,會話信息通常是存放在一臺服務器來實現,本章講使用Redis服務器來存放會話 復制會話的缺點是每次會話改變需要復制到多臺Web服務器上,效率較低。因此Spring Boot 應用是采用第二種方式集中式會話方式,結構如下: ![](https://img.kancloud.cn/5a/f1/5af17fdfa951d76582893251aa657c51_1502x866.png) 上圖是一個大型分布式系統架構,包含了三個獨立的子系統。業務子系統一和業務子系統二各部署在一臺Tomcat服務器上,業務子系統三部署在倆臺Tomcat服務器上,采用水平擴展。 架構采用Nginx作為反向代理,其后的各個子系統都采用Spring Session,將會話存放在Redis里,因此,這些子系統雖然是分開部署,支持水平擴展,但能整合成一個大的系統。Nginx提供統一的入口,對于用戶訪問,將按照某種策略,比如根據訪問路徑派發到后面的對應的Spring Boot應用,Spring Boot取得調用Spring Session取得會話信息,Spring Session并沒有從本地存取會話,會話信息是存放在Redis服務器上。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看