You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by to...@apache.org on 2014/11/08 01:58:05 UTC

incubator-usergrid git commit: Updates properties and ramp logic

Repository: incubator-usergrid
Updated Branches:
  refs/heads/toddtest 4436ead4a -> cc44ae0a5


Updates properties and ramp logic


Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/cc44ae0a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/cc44ae0a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/cc44ae0a

Branch: refs/heads/toddtest
Commit: cc44ae0a567a31d71af647cd25ba819380c3a4db
Parents: 4436ead
Author: Todd Nine <tn...@apigee.com>
Authored: Fri Nov 7 17:57:55 2014 -0700
Committer: Todd Nine <tn...@apigee.com>
Committed: Fri Nov 7 17:57:55 2014 -0700

----------------------------------------------------------------------
 .../scala/org/apache/usergrid/scenarios/GeoScenarios.scala    | 2 +-
 .../main/scala/org/apache/usergrid/settings/Settings.scala    | 7 +++----
 .../scala/org/apache/usergrid/simulations/AppSimulation.scala | 6 ++++--
 .../apache/usergrid/simulations/ConnectionsSimulation.scala   | 2 +-
 .../org/apache/usergrid/simulations/GetEntitySimulation.scala | 2 +-
 .../org/apache/usergrid/simulations/PostUsersSimulation.scala | 2 +-
 .../simulations/PushNotificationTargetUserSimulation.scala    | 2 +-
 stack/loadtests/src/test/scala/Engine.scala                   | 4 ++--
 8 files changed, 14 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/cc44ae0a/stack/loadtests/src/main/scala/org/apache/usergrid/scenarios/GeoScenarios.scala
----------------------------------------------------------------------
diff --git a/stack/loadtests/src/main/scala/org/apache/usergrid/scenarios/GeoScenarios.scala b/stack/loadtests/src/main/scala/org/apache/usergrid/scenarios/GeoScenarios.scala
index d5ce7c7..a57f06c 100755
--- a/stack/loadtests/src/main/scala/org/apache/usergrid/scenarios/GeoScenarios.scala
+++ b/stack/loadtests/src/main/scala/org/apache/usergrid/scenarios/GeoScenarios.scala
@@ -39,7 +39,7 @@ import io.gatling.http.Predef._
 
   val updateGeolocation = exec(
     http("PUT user location")
-      .put("/users/user" + Utils.generateRandomInt(1, Settings.numUsers))
+      .put("/users/user" + Utils.generateRandomInt(1, Settings.maxPossibleUsers))
       .body(StringBody("{\"location\":{\"latitude\":\"${latitude}\",\"longitude\":\"${longitude}\"}}"))
       .headers(Headers.jsonAuthorized)
       .check(status.is(200))

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/cc44ae0a/stack/loadtests/src/main/scala/org/apache/usergrid/settings/Settings.scala
----------------------------------------------------------------------
diff --git a/stack/loadtests/src/main/scala/org/apache/usergrid/settings/Settings.scala b/stack/loadtests/src/main/scala/org/apache/usergrid/settings/Settings.scala
index 67faccd..8ccb7db 100755
--- a/stack/loadtests/src/main/scala/org/apache/usergrid/settings/Settings.scala
+++ b/stack/loadtests/src/main/scala/org/apache/usergrid/settings/Settings.scala
@@ -36,9 +36,8 @@ object Settings {
   val duration:Int = Integer.getInteger("duration", 300).toInt // in seconds
 
   // Simulation settings
-  val constantUsers:Int = Integer.getInteger("rampUsers", 10).toInt
+  val maxPossibleUsers:Int = Integer.getInteger("maxPossibleUsers", 10).toInt
 
-  var numUsers:Int = constantUsers * duration
 
   val numEntities:Int = Integer.getInteger("numEntities", 5000).toInt
   val numDevices:Int = Integer.getInteger("numDevices", 4000).toInt
@@ -56,10 +55,10 @@ object Settings {
   val pushNotifier = if (System.getProperty("pushNotifier") != null)  System.getProperty("pushNotifier") else "loadNotifier"
   val pushProvider =  if (System.getProperty("pushProvider") != null)  System.getProperty("pushProvider")  else "noop"
 
-  println(s"Will inject $constantUsers users per sec")
+  println(s"Will inject $maxPossibleUsers over $rampTime seconds at $maxPossibleUsers/$rampTime users per sec")
 
   def getUserFeeder():Array[Map[String, String]]= {
-    val userFeeder = FeederGenerator.generateUserWithGeolocationFeeder(numUsers, userLocationRadius, centerLatitude, centerLongitude)
+    val userFeeder = FeederGenerator.generateUserWithGeolocationFeeder(maxPossibleUsers, userLocationRadius, centerLatitude, centerLongitude)
     return userFeeder
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/cc44ae0a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/AppSimulation.scala
----------------------------------------------------------------------
diff --git a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/AppSimulation.scala b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/AppSimulation.scala
index 48fff1c..4bd91dc 100644
--- a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/AppSimulation.scala
+++ b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/AppSimulation.scala
@@ -41,8 +41,10 @@ class AppSimulation extends Simulation {
 
   setUp(
     NotificationScenarios.createScenario
-      .inject(constantUsersPerSec(Settings.constantUsers) during (Settings.duration)) // wait for 15 seconds so create org can finish, need to figure out coordination
-      .throttle(reachRps(Settings.throttle) in (Settings.rampTime.seconds))
+      //inject all our users over the ramp time
+      .inject(constantUsersPerSec(Settings.maxPossibleUsers) during (Settings.rampTime))
+      //during the ramp time, try to hit our max TPS.  Then hold it for the duration of the test
+      .throttle(reachRps(Settings.throttle) in (Settings.rampTime.seconds), holdFor(Settings.duration))
       .protocols(Settings.httpConf.acceptHeader("application/json"))
   )
 }

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/cc44ae0a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/ConnectionsSimulation.scala
----------------------------------------------------------------------
diff --git a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/ConnectionsSimulation.scala b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/ConnectionsSimulation.scala
index efc3c69..3756f84 100644
--- a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/ConnectionsSimulation.scala
+++ b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/ConnectionsSimulation.scala
@@ -45,7 +45,7 @@ class ConnectionsSimulation extends Simulation{
 
   setUp(
     ConnectionScenarios.createScenario
-      .inject(constantUsersPerSec(Settings.constantUsers) during (Settings.duration)) // wait for 15 seconds so create org can finish, need to figure out coordination
+      .inject(constantUsersPerSec(Settings.maxPossibleUsers) during (Settings.duration)) // wait for 15 seconds so create org can finish, need to figure out coordination
       .throttle(reachRps(Settings.throttle) in ( Settings.rampTime.seconds))
       .protocols( Settings.httpConf.acceptHeader("application/json"))
   )

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/cc44ae0a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/GetEntitySimulation.scala
----------------------------------------------------------------------
diff --git a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/GetEntitySimulation.scala b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/GetEntitySimulation.scala
index 7b9df21..370e5fa 100644
--- a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/GetEntitySimulation.scala
+++ b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/GetEntitySimulation.scala
@@ -29,7 +29,7 @@ class GetEntitySimulation extends Simulation {
   val httpConf = Settings.httpConf
 
   // Simulation settings
-  val numUsers:Int = Settings.numUsers
+  val numUsers:Int = Settings.maxPossibleUsers
   val numEntities:Int = Settings.numEntities
   val rampTime:Int = Settings.rampTime
   val throttle:Int = Settings.throttle

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/cc44ae0a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/PostUsersSimulation.scala
----------------------------------------------------------------------
diff --git a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/PostUsersSimulation.scala b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/PostUsersSimulation.scala
index cbac041..8f43f8a 100755
--- a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/PostUsersSimulation.scala
+++ b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/PostUsersSimulation.scala
@@ -29,7 +29,7 @@ class PostUsersSimulation extends Simulation {
   val httpConf = Settings.httpConf
 
   // Simulation settings
-  val numUsers:Int = Settings.numUsers
+  val numUsers:Int = Settings.maxPossibleUsers
   val rampTime:Int = Settings.rampTime
   val throttle:Int = Settings.throttle
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/cc44ae0a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/PushNotificationTargetUserSimulation.scala
----------------------------------------------------------------------
diff --git a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/PushNotificationTargetUserSimulation.scala b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/PushNotificationTargetUserSimulation.scala
index 510cee1..232c5bf 100644
--- a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/PushNotificationTargetUserSimulation.scala
+++ b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/PushNotificationTargetUserSimulation.scala
@@ -35,7 +35,7 @@ class PushNotificationTargetUserSimulation extends Simulation {
   }
   setUp(
     NotificationScenarios.createScenario
-      .inject(constantUsersPerSec(Settings.constantUsers) during (Settings.duration)) // wait for 15 seconds so create org can finish, need to figure out coordination
+      .inject(constantUsersPerSec(Settings.maxPossibleUsers) during (Settings.duration)) // wait for 15 seconds so create org can finish, need to figure out coordination
       .throttle(reachRps(Settings.throttle) in ( Settings.rampTime.seconds))
       .protocols( Settings.httpConf.acceptHeader("application/json"))
   )

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/cc44ae0a/stack/loadtests/src/test/scala/Engine.scala
----------------------------------------------------------------------
diff --git a/stack/loadtests/src/test/scala/Engine.scala b/stack/loadtests/src/test/scala/Engine.scala
index 48c93f8..0914589 100644
--- a/stack/loadtests/src/test/scala/Engine.scala
+++ b/stack/loadtests/src/test/scala/Engine.scala
@@ -25,8 +25,8 @@ object Engine extends App {
 	props.resultsDirectory(IDEPathHelper.resultsDirectory.toString)
 	props.requestBodiesDirectory(IDEPathHelper.requestBodiesDirectory.toString)
 	props.binariesDirectory(IDEPathHelper.mavenBinariesDirectory.toString)
-  val simName = if(System.getProperty("simulationClass")!=null) System.getProperty("simulationClass") else "AppSimulation";
-  props.simulationClass("org.apache.usergrid.simulations."+simName)
+  val simName = if(System.getProperty("gatling.simulationClass")!=null) System.getProperty("gatling.simulationClass") else "org.apache.usergrid.simulations.AppSimulation";
+  props.simulationClass(simName)
 
 	Gatling.fromMap(props.build)
 }