How can we plan similation to find applications bottleneck please help i am new and i need to do it asap

package com.threesixtytraining.lms

import scala.concurrent.duration._

import io.gatling.core.Predef._
import io.gatling.http.Predef._
import io.gatling.jdbc.Predef._

class LoginTest extends Simulation {
val rampRateInj = atOnceUsers(50)
val rampRateInj2 = atOnceUsers(100)
val rampRateInj4 = atOnceUsers(150)

object HomePage {
val random = new scala.util.Random
val feeder = csv(“LearnerLogins.csv”).random
val uri1 = “https://qa-lms.com
val uri2 = “qa-lms.com

val headers_accept = Map(“Accept” → “text/css,/;q=0.1”)

val home = exec(
http(“initial_open_request”).get("/lms/login.do")
).pause(401 milliseconds)
.exec(
http(“Initial_open”).get(“http://” + uri2 + “/lms/login.do”).headers(headers_accept)
.check(css("#j_username").find(0).exists)
).pause(4)
.feed(feeder).pause(3)

}

object LoginPage {
val uri2 = "qa-lms.com

val login =
exec(http(“Login_request”).post("/lms/j_spring_security_check")
.formParam(“spring-security-redirect”, “/interceptor.do”)
.formParam(“j_username”, “${username}”)
.formParam(“j_password”, “*********”)
).pause(2)
}
object MainPage {
val uri1 = “https://qa-lms.com

val verifyMainPage =
exec(http(“HomePage_request_view”).get("/lms/lrn_widgetDashboard.do")
.check(css("#introText").find(0).exists)
).pause(2)
}

object MyCourses {
val uri1 = “https://qa-lms.com

val verifyMyCoursePage =
exec (http(“MyCourses_request_View”).get("/lms/lrn_myCourses.do")
.check(css("#page-heading").find(0).exists)
).pause(6)
}

object MyProfile {
val uri1 = “https://qa-lms.com

val verifyMyProfilePage =
exec (http(“MyProfile_request_View”).get("/qa-lms.com")
.check(css("#page-heading").find(0).exists)
).pause(4)
}

object LogOut {
val uri2 = “qa-lms.com
val headers_accept = Map(“Accept” → “text/css,/;q=0.1”)

val Logout = exec(
http(“Logout_request”).get("/lms/login.do")
).pause(910 milliseconds)
.exec(
http(“Log_out”).get(“http://” + uri2 + “/lms/login.do”).headers(headers_accept)
.check(css("#j_username").find(0).exists)
).pause(4)

}

val httpProtocol = http
.baseURL(“https://qa-lms.com”)
.inferHtmlResources(BlackList( “”"..js""", “”"..css""", “”"..gif""", “”"..jpeg""", “”"..jpg""", “”"..ico""", “”"..woff""", “”"..(t|o)tf""", “”"..png"""), WhiteList())
.acceptHeader("text/html,application/xhtml+xml,application/xml;q=0.9,
/*;q=0.8")
.disableAutoReferer
.acceptEncodingHeader(“gzip, deflate”)
.acceptLanguageHeader(“en-US,en;q=0.5”)
.connection(“keep-alive”)
.contentTypeHeader(“application/x-www-form-urlencoded”)
.userAgentHeader(“Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:33.0) Gecko/20100101 Firefox/33.0”)

// val loginUsers = scenario(“LearnerLogin”).exec(HomePage.home, LoginPage.login,MainPage.verifyMainPage
// ,MyCourses.verifyMyCoursePage,MyProfile.verifyMyProfilePage,LogOut.Logout)

val loginUsers50 = scenario(“loginUsers50”).exec(HomePage.home, LoginPage.login,MainPage.verifyMainPage)
val loginUsers100 = scenario(“loginUsers100”).exec(HomePage.home, LoginPage.login,MainPage.verifyMainPage)
val loginUsers150 = scenario(“loginUsers150”).exec(HomePage.home, LoginPage.login,MainPage.verifyMainPage)

val UsersAccessCourse100 = scenario(“UsersAccessCourse100”).exec(HomePage.home, LoginPage.login,MainPage.verifyMainPage,
MyCourses.verifyMyCoursePage)
val UsersAccessCourse200 = scenario(“UsersAccessCourse200”).exec(HomePage.home, LoginPage.login,MainPage.verifyMainPage,
MyCourses.verifyMyCoursePage)

val UsersAccessProfile100 = scenario(“UsersAccessProfile100”).exec(HomePage.home, LoginPage.login,MainPage.verifyMainPage
,MyProfile.verifyMyProfilePage)
val UsersAccessProfile200 = scenario(“UsersAccessProfile200”).exec(HomePage.home, LoginPage.login,MainPage.verifyMainPage
,MyProfile.verifyMyProfilePage)

setUp(
loginUsers50.inject(rampRateInj),
loginUsers100.inject(rampRateInj2),
loginUsers150.inject(rampRateInj4)

).protocols(httpProtocol)

}

If you’re new with the tool, the first thing to do is to read the documentation.
Then, if you want people to help you on their good will, you have to show some effort: what you’ve been doing so far, what results you got, how you analyzed them, what conclusions you came to, and how you’re now stuck.
Now, if you’re looking for someone to perform load tests for you and investigate the results, we do provide professional services: http://gatling.io/#/services

Regards,

I have just added the script i have created in order to perform load test, i just dont want any one to do the load test for me but just a little help or a guide

i am just looking for the work around to get the bottle neck of application what i am doing in this script is first hitting server with 50 users at once then hitting with 100 and my application start showing KO

Gatling can only help you find at what point (in terms of number of concurrent users) your application starts breaking.
To find your bottleneck, you’ll need to monitor/profile your application (and your database, your network, etc…) while your simulation runs, to pinpoint what goes haywire and breaks your app.
If your app runs on JVM or .NET, you may be interested by YourKit (https://www.yourkit.com/home/) to profile it.

Cheers,

Pierre