[
https://issues.apache.org/jira/browse/SYNCOPE-1199?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16130343#comment-16130343
]
Francesco Chicchiriccò commented on SYNCOPE-1199:
-------------------------------------------------
All the github links above return 404 to me
> Syncope performance: AnyObjetcTO's creation time grows with it's quantity
> -------------------------------------------------------------------------
>
> Key: SYNCOPE-1199
> URL: https://issues.apache.org/jira/browse/SYNCOPE-1199
> Project: Syncope
> Issue Type: Bug
> Affects Versions: 2.0.2, 2.0.4
> Environment: Syncope 2.0.2 and 2.0.4 + PostgreSQL 9; Jmeter;
> https://github.com/Talend/platform-services/tree/master/iam/idp
> Reporter: Iurii Smyrnov
> Attachments: Latency for 1000 create roles (directly syncope 2.0.4)
> no SCIM.csv, Latency for 1000 create roles (directly syncope 2.0.4).png,
> Latency for 1037 create roles (directly syncope 2.0.2) no SCIM.csv, Latency
> for 1037 create roles (directly syncope 2.0.2).png, Latency for 3000 create
> roles (directly syncope 2.0.2).csv, Latency for 3000 create roles (directly
> syncope 2.0.2).png
>
>
> *AnyObjetcTO's creation time (latency) grows with it's quantity.*
> We create AnyObjetcTO entities (our custom RoleAT type).
> Testing results are attached (Latency in milliseconds).
> Note: We've tested PostgreSQL DB directly (without Syncope) and we've got
> stable AnyObjetcTO's creation time (not increasing).
> To reproduce the issue please do next :
> User Syncope 2.0.4 or 2.0.4 and + PostgreSQL 9 - you could test our
> environment IDP project .
> To install it you should have docker.
> To build IDP project:
> 1. build https://github.com/Talend/platform-services/tree/master/btools
> 1.1 cd ../platform-services/btools
> 1.2 call: gradle clean build publish
>
> 2. build
> https://github.com/Talend/platform-services/tree/master/microservices
> 2.1 cd ../platform-services/microservices
> 2.2 call: gradle clean buildDocker - it will create microservices docker
> image
>
> 3. build https://github.com/Talend/platform-services/tree/master/iam/idp
> 3.1 cd ../platform-services/iam/idp
> 3.2 call: gradle clean buildDocker - it will create idp docker image
> 3.3 cd ../platform-services/iam/idp/build
> 3.4 call: docker-compose up - start containers
> 3.5 call: docker-compose ps - you will see containers list like:
>
> Name Command State
> Ports
> ------------------------------------------------------------------------------------------------------------------------
> build_db_1 docker-entrypoint.sh postgres Up 0.0.0.0:5432->5432/tcp
> build_idp_1 sh bin/start_tomcat.sh jpda Up 0.0.0.0:8000->8000/tcp,
> 8080/tcp, 8443/tcp, 0.0.0.0:9080->9080/tcp
>
> 4. wait for IDP is started: ←[33midp_1 |←[0m 16-Aug-2017 15:33:57.506 INFO
> [main] org.apache.catalina.startup.Catalina.start Server startup in 95832 ms
>
> 5. To test syncope performance you could use our test with jmeter:
> 5.1 install jmeter
> 5.2 our test
> https://github.com/Talend/platform-services/blob/master/performance-tests/src/main/resources/CreateRoleTestSyncope.jmx
> open by jmeter
> 5.3 update test:
> 5.3.1 quntity to create in jmeter here: CreateRoleTestSyncope ->
> ${__P(nbOfAccountsToCreate, 3000)} to set ${__P(nbOfAccountsToCreate, 1000)}
> for example
> 5.3.2 if you use UNIX - updated CreateRoleTestSyncope -> from
> ${__P(host, 192.168.99.100)} to ${__P(host, localhost)} - 192.168.99.100
> host for Windows
> 5.4 results are saved in ../<jmeter_path>/bin/CreateRoleSyncopeResults.csv
> (you could update) in CreateRoleTestSyncope -> View Results Tree Report ->
> Filename
> 5.5 request is here: CreateRoleTestSyncope -> CreateRoleThread -> Loop
> Controller -> Create Role Request
> 5.6 run it
> 5.7 responses list you will see : CreateRoleTestSyncope -> View Results
> Tree Report
>
> 6. if you want use some other way to test here are options to create
> requests:
> 6.1 URI: http://192.168.99.100:9080/syncope/rest/anyObjects -for WIndows,
> for Unix http://localhost:9080/syncope/rest/anyObjects
> 6.2 http headers:
> 6.2.1 Content-Type / application/json
> 6.2.2 Accept / application/json
> 6.2.3 Authorization / Basic YWRtaW46cGFzc3dvcmQ=
> 6.3 verb: POST
> 6.4 body:
> {
> "plainAttrs":[
> {
> "values":[
> "TDP_DATASET_CERTIFY"
> ],
> "schema":"roleEntitlements"
> }
> ],
> "type":"RoleAT",
> "realm":"/",
> "@class":"org.apache.syncope.common.lib.to.AnyObjectTO",
> "auxClasses":["RoleATClass"],
> "name":"Role_Account_1"
> }
>
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)