Dear Ivy Team

My test setup is as follows : 4 CPU (i7, 3GHz), Xms128m, Xmx2048m

2 Browsers, every 3 seconds a click on the UI during 60 seconds

1 With visualvm it shows that Ivy spent approx 16s with reading, the issue is I can not quantify how much data it is (since your performance / rest client logging is not working). But my guess is, it can only be a few hundred KB in total.

=> 16s seem to me a lot, can you confirm my results ?

alt text

2 Rest Client - java > Ivy.rest() : is Ivy.rest() client pooled ? (since the Rest Clients are pretty heavy weight they should be pooled otherwise memory consumption skyrockets and also performance will degrade if they are used like in a micro services architecture)

=> Ivy.rest() did you do any performance analysis ? Is this the "required" way of using Rest Client in Ivy ?

asked 07.02 at 04:14

John%20Moser's gravatar image

John Moser
61272833
accept rate: 0%

closed 12.03 at 10:34

Reguel%20Wermelinger's gravatar image

Reguel Werme... ♦♦
9.4k21858

  1. what is in ch.xperline.luz.components.RestClient ? Is it relying upon platform APi or something homebrew? If it's not platform code, we can not support it.
  2. We are not aware of any performance/memory issues with the way we create Restclient instances. There are several caching mechanisms in charge though. If there are performance issues anyway (caused by the way we manage rest clients) we'd gladly improve it.
(07.02 at 05:13) Reguel Werme... ♦♦ Reguel%20Wermelinger's gravatar image

something homebrew

When has Ivy.rest() been introduced to the public ?

(07.02 at 08:59) John Moser John%20Moser's gravatar image

Well it is around since quite a while: the first public release was here https://developer.axonivy.com/releases/ivy/6.2.0/documents/doc/newAndNoteworthy/NewAndNoteworthyDesigner.html ... so around 3 years + ... therefore it is included in all supported platform versions today

(07.02 at 09:32) Reguel Werme... ♦♦ Reguel%20Wermelinger's gravatar image
1

Just had another look on client connection pooling in our rest stack. It's true that Jersey (our used JAX-RS impl) supports connection pooling when using Apache Http Client as connection provider. Apache is our default provider. But we do not explicitly define a HttpClientconnectionPool as shown here: https://github.com/jersey/jersey/commit/80c8c7013c52ddf9012932676d1048c79133d0f2#diff-2d8626e00eee8ac6a1e5aaa6ab815086R165

So no, we do not have this kind of pooling. If this is a real world issue, when using ivy api, and you need more flexibility to enable a pooling. Let us know.

(10.02 at 02:58) Reguel Werme... ♦♦ Reguel%20Wermelinger's gravatar image

The question has been closed for the following reason "joined effort initiated" by Reguel Wermelinger 12.03 at 10:34


joined analysis of the issues initiated. public discussion of this specific issues which only arise with an unsupport rest clients scenario are of no value for a broader audience - so we freeze the thread for now.

link

answered 04.03 at 10:28

SupportIvyTeam's gravatar image

SupportIvyTeam ♦♦
1.4k101117122
accept rate: 77%

edited 12.03 at 10:29

Reguel%20Wermelinger's gravatar image

Reguel Werme... ♦♦
9.4k21858

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "Title")
  • image?![alt text](/path/img.jpg "Title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Tags:

×147
×33

Asked: 07.02 at 04:14

Seen: 432 times

Last updated: 12.03 at 10:34