Revision 2887b4b9ba506288f7968e4f7d30985359a8c888 authored by brharrington on 07 August 2020, 23:52:44 UTC, committed by GitHub on 07 August 2020, 23:52:44 UTC
Updates the `SmallHashMap.asJavaMap` implementation to
override `entrySet()`. The new implementation avoids
allocations for each item in the map.

**Throughput**

| Benchmark            |        Before |         After | % Delta |
|----------------------|---------------|---------------|---------|
| customEntrySet       |   8,400,934.3 |  13,480,190.3 |    60.5 |

**Allocations**

| Benchmark            |        Before |         After | % Delta |
|----------------------|---------------|---------------|---------|
| customEntrySet       |         296.0 |          24.0 |   -91.9 |
1 parent e5482ab
Raw File
memory.conf
include classpath("static.conf")

atlas {

  core {
    model {
      step = 10s
    }

    db {
      class = "com.netflix.atlas.core.db.MemoryDatabase"
      //class = "com.netflix.atlas.core.db.StaticDatabase"

      // How often to rebuild the index for the memory database
      rebuild-frequency = 8s

      // 1h with 10s step
      block-size = 360

      // 3h of data overall
      num-blocks = 3
    }
  }

  eval {
    graph {
      // Change default start time on graph to smaller range more typical for testing
      start-time = e-30m

      // Ensure default step time for rendering matches storage
      step = ${atlas.core.model.step}
    }
  }

  akka {
    // Main server port
    port = 7101

    actors = ${?atlas.akka.actors} [
      {
        name = "publish"
        class = "com.netflix.atlas.webapi.LocalPublishActor"
      }
    ]

    api-endpoints = ${?atlas.akka.api-endpoints} [
      "com.netflix.atlas.webapi.PublishApi"
    ]
  }
}

netflix.iep.atlas {
  enabled = true
  step = PT10S
}
back to top