日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

集群应用服务器环境中会话管理(复制)的Oracle Coherence最佳实践

發布時間:2023/12/3 编程问答 62 豆豆
生活随笔 收集整理的這篇文章主要介紹了 集群应用服务器环境中会话管理(复制)的Oracle Coherence最佳实践 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Oracle Coherence是一種內存中數據網格產品,也廣泛用于跨應用程序服務器節點集群的會話復制。 它支持各種應用程序服務器,例如WebLogic,WebSphere,Tomcat,JBoss等。Coherence * Web是會話管理模塊(基于Coherence構建),用于在集群環境中管理會話信息。

我將建議遵循Coherence * Web和Coherence用法的最佳實踐,尤其是對于會話管理(也可以在其他Coherence方案中應用):

相干部署拓撲

Coherence支持三種部署模式:

  • 進程內–運行Coherence * Web的應用程序服務器已啟用存儲功能,因此HTTP會話存儲與應用程序服務器位于同一位置。 沒有單獨的緩存服務器用于HTTP會話存儲。
  • 進程外–運行Coherence * Web的應用程序服務器是Coherence群集中禁用存儲的成員。 單獨的緩存服務器用于HTTP會話存儲。
  • 帶有Coherence * Extend的進程外–運行Coherence * Web的應用程序服務器不屬于Coherence群集; 應用服務器使用Coherence * Extend附加到Coherence群集,該群集包含用于HTTP會話存儲的緩存服務器。
  • 建議:

    如果需要Coherence將其邊界擴展到核心Coherence TCMP(Coherence使用的內部協議)之外,請使用Coherence * Extend,它支持Java,.Net和C ++客戶端。

    在大多數情況下, 建議使用進程外拓撲,因為它具有獨立運行的專用緩存服務器節點,從而促進了松耦合的物理體系結構 。

    對于會話復制,使用進程內部署通過Coherence共享關聯的應用程序服務器內存(堆)可創建可靠性。 如果應用服務器內存使用量增加,也會影響Coherence性能,反之亦然。

    請確保對進程外配置執行以下操作:應用程序服務器節點以禁用存儲的模式運行。 您需要將這兩個命令行參數(或通過使用Coherence替代文件)傳遞給應用程序服務器JVM:

    Dtangosol.coherence.session.localstorage=false Dtangosol.coherence.distributed.localstorage=false

    請注意,明確需要設置會話存儲屬性,因為默認情況下在“ session-cache-config.xml”中為“ true”:

    ………………….<local-storage system-property="tangosol.coherence.session.localstorage"………………….

    一致性專用節點需要啟用存儲 (否則,沒有人可以存儲會話屬性),并且應該使用“ session-cache-config.xml”或在其中配置了會話緩存的自定義緩存配置文件:

    java –Xms512m -Xmx512m -cp /usr/local/coherence_3_6/lib/coherence.jar:/usr/local/coherence_3_6/lib/coherence-web-spi.war:/usr/local/coherence_3_6/lib/commons-logging-api.jar:/usr/local/coherence_3_6/lib/log4j-1.2.8.jar-Dtangosol.coherence.cacheconfig=../../../webapps/example/WEB-INF/classes/session-cache-config.xml -Dtangosol.coherence.log.level=6 -Dtangosol.coherence.ttl=2 -Dtangosol.coherence.log=log4j -Dtangosol.coherence.edition=EE -Dtangosol.coherence.session.localstorage=true com.tangosol.net.DefaultCacheServer

    相干緩存拓撲

    Coherence支持基于四種緩存拓撲的五種不同類型的緩存:

  • 本地緩存拓撲: 本地緩存
  • 分區緩存拓撲: 分布式(或分區緩存)
  • 復制緩存拓撲: 復制緩存,樂觀緩存
  • 混合拓撲(本地+分區): 近緩存
  • 您可以使用以下簡單準則來選擇適當的緩存類型:

    情境 推薦的緩存類型
    ·您需要更快的讀寫速度
    ·您不需要容錯(警告:無容錯)
    本地緩存
    ·您需要更快的閱讀速度和最佳的容錯能力
    ·寫比較好,但是在復制更新數據之間會有延遲
    ·通常用于存儲元數據或配置數據

    注意:橫向擴展(水平可伸縮性)不能是線性的。

    復制緩存
    ·您需要更快的寫入速度但最好的容錯能力
    ·讀取速度相對較快,但取決于它是從本地節點還是從遠程節點讀取
    分區或分布式緩存
    ·您需要更快的寫入速度但最好的容錯能力
    ·讀取速度相對較快,但取決于它是從本地節點還是從遠程節點讀取
    ·適度寫入,提高了重讀應用程序的親和力性能
    近緩存(由分區緩存備份)

    執行生產清單

    Coherence建議在生產環境中執行清單清單,以確保環境和基礎結構具有推薦的設置/配置,尤其是在以下方面:

    • 網絡:
      • 組播測試:如果您使用的是組播集群,則必須執行此測試以確保組播配置正確且工作正常。
      • 數據報測試–部署應用程序之前,必須運行它以確保網絡中沒有數據包丟失。 請注意,在1GbE網絡中,您應該使用100MB數據包進行測試,并且最小(非平均)成功率應接近100%(?98-99%)
      • TTL –這對于多播網絡非常重要,在生產環境中通常建議使用2-5的值
    • 硬件,操作系統和JVM設置
    • 一致性版本和模式:
      • 毋庸置疑,在生產環境中,一致性模式應該是PROD。 它需要在命令行上指定,因為替代配置文件不能用于Edition&Mode。

        -Dtangosol.coherence.mode = PROD

      • 默認情況下,Coherence在GE(網格版)中運行,并且使用適當的版本(根據您的許可證和需求)來指定正確的版本非常重要。

        -Dtangosol.coherence.edition = EE

        請注意,群集中的所有節點應使用相同的版本。

    執行性能調整準則

    Coherence建議進行以下調整: OS,Network,JVM和Coherence Network。 有關更多詳細信息,請參考Coherence性能調整準則(參考部分)。

    啟用JMX監視一致性

    Coherence為群集,節點,緩存和其他內容的基于JMX的監視提供了OOTB支持。 它至少需要一個節點充當管理者,集群中的其余節點可以使用JMX發布其統計信息。

    對于管理節點,

    -Dtangosol.coherence.management=all -Dtangosol.coherence.management.remote=true -Dtangosol.coherence.management.jvm.all=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port= -Dcom.sun.management.jmxremote

    對于其他節點,您只需刪除“ tangosol.coherence.management”命令行參數。 另外,請注意,在上述情況下,未啟用JMX身份驗證(需要保護),并且還需要指定JMX端口。

    使用Log4J進行一致性日志

    盡管Coherence有其自己的日志記錄機制,但Log4J在日志輪換和控制適當的日志級別方面更有利。

    請注意,您可以同時使用Coherence Log Level參數(-Dtangosol.coherence.log.level)和Log4J配置作為日志記錄級別。

    請按照以下步驟啟用Log4J for Coherence :

    • Coherence沒有log4j庫,因此您需要向類路徑添加以下jar:
      一個。 將“ commons-logging-api.jar”和“ log4j-1.2.8.jar”復制到/ lib文件夾
    • 創建/修改Log4J XML文件,并將其放在Coherence JVM的類路徑中。
    • 設置命令行參數(或使用替代文件)以將日志參數值指定為“ log4j ”。

    請注意,Coherence假定Log4J XML將Logger Name命名為“ Coherence”,否則您需要通過使用單獨的參數“ tangosol.coherence.log.logger”來指定記錄器名稱。

    例:

    緩存服務器啟動腳本

    JAVA_OPTS="-Xms$MEMORY -Xmx$MEMORY -Dtangosol.coherence.log.level=6 -Dtangosol.coherence.log=log4j -Dtangosol.coherence.log.logger=MyCoherence"$JAVAEXEC -server -showversion $JAVA_OPTS -cp "$COHERENCE_HOME/lib/coherence.jar:$ "$COHERENCE_HOME/lib/commons-logging-api.jar:$ COHERENCE_HOME/lib/log4j-1.2.8.jar" com.tangosol.net.DefaultCacheServer $1

    Log4J XML

    ......................<logger name="MyCoherence"><level value="3"/><appender-ref ref="CoherenceAppender"/>....................

    查看Coherence * Web上下文參數

    有幾個Coherence Web上下文參數,在Web應用程序中安裝Coherence * Web時需要調整這些參數,尤其是以下內容:

    • 連貫啟用會話上下文
    • 一致性會話ID長度
    • coherence-session-urlencode-enabled
    • 一致性會話線程鎖定
    • 粘性會話
    • 相干reaperdaemon假定位置
    • 連貫的可疑屬性

    注意:這些參數在web.xml中配置,并在調用Coherence * Web安裝實用程序時進行檢測。

    使用一致性作為L2緩存提供程序

    一致性也可以用作正在使用的ORM框架的二級緩存提供程序。 將Coherence作為L2緩存也可以為ORM L2緩存提供企業級緩存。

    要配置它們,您需要將Coherence指定為L2 Cache Provider(尤其是對于Hibernate L2 Cache ):

    • 在Hibernate Configuration文件中將Coherence指定為L2緩存提供程序: <prop key="hibernate.cache.provider_class"> com.tangosol.coherence.hibernate.CoherenceCacheProvider </prop>
    • 基于以下參數加載Hibernate L2緩存的配置。 已有默認的L2緩存配置文件。 -Dtangosol.coherence.hibernate.cacheconfig = /hibernate-cache-config.xml

    資源資源

    Coherence用戶指南: http : //download.oracle.com/docs/cd/E18686_01/coh.37/e18690/toc.htm

    參考:來自我們的JCG合作伙伴 Ankur Kumar在Ankur Kumar的Blog博客上的《 集群應用服務器環境中會話管理(復制)中的Oracle Coherence最佳實踐》 。

    翻譯自: https://www.javacodegeeks.com/2013/06/oracle-coherence-best-practices-for-session-management-replication-in-clustered-application-servers-environment.html

    總結

    以上是生活随笔為你收集整理的集群应用服务器环境中会话管理(复制)的Oracle Coherence最佳实践的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。