【问题标题】:Oracle Coherence Caching and application server's CPU usageOracle Coherence 缓存和应用服务器的 CPU 使用率
【发布时间】:2012-03-11 19:12:20
【问题描述】:

我们开始在我们的应用程序中实施 Coherence,以提高性能并减少数据库服务器上的负载并减少 Web 服务调用。

我们通常会在高负载期间遇到高 CPU 使用率(weblogic App 服务器的 JVM),DB 服务器通常不是问题。

除了响应时间的改善,oracle Coherence 将如何在高负载期间改善应用服务器的 CPU 和堆使用率。

1) 减少 XML 处理,因为我们将开始从缓存中检索可供使用的 Java 对象,而不必解组 XML。

2) 减少 ORM 映射开销,因为我们不会将表行映射到缓存数据的对象...... 3) 还有什么?

非常感谢

【问题讨论】:

    标签: performance oracle caching jvm oracle-coherence


    【解决方案1】:

    免责声明 - 我在 Coherence 为 Oracle 工作。

    假设 CPU 负载用于 XML 封送处理,您应该会看到通过将生成的对象放入缓存中减少了 CPU 消耗。您仍然需要为序列化支付 CPU 费用,但对象序列化占用的 CPU 更少 - 如果您使用 POF 进行序列化,您会看到更好的性能。

    如果与使用对象的位置有任何关联,您可以利用近缓存来避免去网络检索缓存的对象。仅当您执行的读取操作多于写入操作时,这才会有所帮助。

    使用 Coherence,您无需丢弃 ORM - 您可以编写一个 CacheStore(或使用我们随 OOTB 提供的 JPA CacheStore),以便在缓存未命中时透明地从数据库读取,并在更新缓存时更新数据库.如果您通过主键检索 ORM 对象,则此方法效果最佳。

    如果没有详细说明究竟是什么占用了 CPU(线程转储是一种很好的低技术诊断方法),很难说缓存有多少帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-19
      • 2018-06-29
      • 1970-01-01
      • 2013-09-20
      • 2015-08-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多