簡體   English   中英

關於Weblogic服務器上的集群環境的問題

[英]A question on clustered environment on Weblogic server

我正在使用Weblogic 10g集群環境來部署我的應用程序。 在我的應用程序中,我使用了一個類Cache.java來懶惰地從數據庫加載一些屬性。 這是它的工作原理。 Cache.java是一個單例類,實例變量作為緩存對象。 例如,其中一個實例變量是List<String> STORES_IN_CITY 群集啟動時,此緩存為空。 實際值在數據庫中。 該課程的實施如下:

public class Cache
{
    private List<String> STORES_IN_CITY;

    private static final Cache cache=new Cache();

    public static Cache getCache()
    {
        return cache;
    {

    private Cache()
    {
        // private constructor to have singleton class
    }

    public List<String> getStoresInCity()
    {
        if(null==STORES_IN_CITY || STORES_IN_CITY.size()==0){
             STORES_IN_CITY=getStoresFromDatabase();
        }
        return STORES_IN_CITY;
    }
}

我的問題是,有多個數據庫調用來獲取緩存STORES_IN_CITY。 我相信這是因為集群環境,對於每個服務器,都有一個不同的JVM實例和一個緩存副本。 因此,根據在運行時針對請求命中的服務器,將進行數據庫調用。 我希望跨服務器有一個緩存。 這可能嗎?

我希望我已經詳細闡述了我的問題。 如果需要進一步說明,請告訴我。

謝謝,Siddharth

(...)我認為這是因為集群環境,對於每個服務器,都有一個不同的JVM實例和一個緩存副本。

這是對的。

我希望跨服務器有一個緩存。 這可能嗎?

您可以實現weblogic.cluster.singleton.SingletonService單件服務是在受管服務器上運行的服務,一次只能在集群的一個成員上使用 )。

資源

相關問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM