<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Where i could find some performance info about Activiti5 in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55840#M33636</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am interested in the performance, too. Since we have very big workflows to realize, I want to find out if there is a limit of the size of the workflow definitions. I wrote this programm to generate big workflows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt; /**&lt;BR /&gt;&amp;nbsp; * @param args&lt;BR /&gt;&amp;nbsp; */&lt;BR /&gt; public static void main(String[] args) {&lt;BR /&gt;&amp;nbsp; try {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; // Create file&lt;BR /&gt;&amp;nbsp;&amp;nbsp; FileWriter fstream = new FileWriter("out.txt");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; BufferedWriter out = new BufferedWriter(fstream);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; // Close the output stream&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; out.write("&amp;lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "&amp;lt;definitions id=\"definitions\""&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " xmlns=\"&lt;A href="http://www.omg.org/spec/BPMN/20100524/MODEL\" rel="nofollow noopener noreferrer"&gt;http://www.omg.org/spec/BPMN/20100524/MODEL\&lt;/A&gt;""&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " xmlns:activiti=\"&lt;A href="http://activiti.org/bpmn\" rel="nofollow noopener noreferrer"&gt;http://activiti.org/bpmn\&lt;/A&gt;""&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " targetNamespace=\"Examples\"&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " \n&amp;lt;process id=\"bigProcessBigFile\""&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "&amp;nbsp; name=\"Big process in big file\"&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " \n &amp;lt;startEvent id=\"startEvent\" name=\"StartProcess\" /&amp;gt;");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; int numOfServiceCalls = 1000;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; for (int i = 1; i &amp;lt; numOfServiceCalls; i++) {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; out.write(" \n &amp;lt;serviceTask id=\"javaServiceDoNothingLotOfTimes"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + i&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\" name=\"Read voltage\""&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " activiti:class=\"com.bigcompany.wfe.activiti.delegate.ServiceDelegate\"&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\n"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " \t&amp;lt;extensionElements&amp;gt; "&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\n"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " \t\t&amp;lt;activiti:field name=\"serviceName\"&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\n"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " \t\t&amp;lt;activiti:string&amp;gt;DO_NOTHING_LOT_OF_TIMES&amp;lt;/activiti:string&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\n" + "\t\t &amp;lt;/activiti:field&amp;gt; " + "\n"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\t&amp;lt;/extensionElements&amp;gt; " + "\n\n" + "\t&amp;lt;/serviceTask&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; String sourceRef = "javaServiceDoNothingLotOfTimes" + i;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; String targetRef = "javaServiceDoNothingLotOfTimes" + (i + 1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (i == 1) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out.write("\t&amp;lt;sequenceFlow targetRef=\"" + sourceRef&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\" sourceRef=\"startEvent\"/&amp;gt;" + "\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (i == numOfServiceCalls - 1) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; targetRef = "endEvent";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; out.write("\t&amp;lt;sequenceFlow targetRef=\"" + targetRef&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\" sourceRef=\"" + sourceRef + "\"/&amp;gt;" + "\n");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; out.write("&amp;lt;endEvent id=\"endEvent\"/&amp;gt;&amp;lt;/process&amp;gt;&amp;lt;/definitions&amp;gt;");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; out.close();&lt;BR /&gt;&amp;nbsp; } catch (Exception e) {// Catch exception if any&lt;BR /&gt;&amp;nbsp;&amp;nbsp; System.err.println("Error: " + e.getMessage());&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt; }&lt;BR /&gt;&lt;/CODE&gt;&lt;SPAN&gt;With 1000 nodes I get an java.util.EmptyStackException at org.activiti.engine.impl.context.Context.removeExecutionContext(Context.java:73)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; at org.activiti.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:79)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Is there a way to configure the memory consumption of activiti?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Michael&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 27 Sep 2011 13:28:07 GMT</pubDate>
    <dc:creator>mhw</dc:creator>
    <dc:date>2011-09-27T13:28:07Z</dc:date>
    <item>
      <title>Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55834#M33630</link>
      <description>Dear All,We are ready to use Activiti5 replacing our existing workflow engine, so i have a question that where i could find some performance information about it.Our system's expected scale:10000+ process instances per daymax 100 concurrent processes request per secondThanks a lot.</description>
      <pubDate>Thu, 05 May 2011 10:44:58 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55834#M33630</guid>
      <dc:creator>totyumengr</dc:creator>
      <dc:date>2011-05-05T10:44:58Z</dc:date>
    </item>
    <item>
      <title>Re: Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55835#M33631</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Nobody have similar question?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Who can share some best-practice about it.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 May 2011 15:41:51 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55835#M33631</guid>
      <dc:creator>totyumengr</dc:creator>
      <dc:date>2011-05-06T15:41:51Z</dc:date>
    </item>
    <item>
      <title>Re: Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55836#M33632</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Besides some informal tests, nothing has been conducted yet.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;So feel free to try and share your findings &lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 09 May 2011 09:29:09 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55836#M33632</guid>
      <dc:creator>jbarrez</dc:creator>
      <dc:date>2011-05-09T09:29:09Z</dc:date>
    </item>
    <item>
      <title>Re: Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55837#M33633</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have the same question as I am currently evaluating a possible use of Activity (with Spring Integration) for my company product services needs. Can someone share any benchmarks? Thanks.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Sep 2011 16:59:20 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55837#M33633</guid>
      <dc:creator>krassib1</dc:creator>
      <dc:date>2011-09-16T16:59:20Z</dc:date>
    </item>
    <item>
      <title>Re: Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55838#M33634</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;There are some performance numbers on the following page. But I think these values belong to jBPM3.&lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://processdevelopments.blogspot.com/2008/04/awsome-jbpm-performance-numbers.html" rel="nofollow noopener noreferrer"&gt;http://processdevelopments.blogspot.com/2008/04/awsome-jbpm-performance-numbers.html&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I also need performance information about Activiti 5.x. My main question is "Activiti can handle millions of process instances per mount?"&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 25 Sep 2011 11:03:28 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55838#M33634</guid>
      <dc:creator>leocode</dc:creator>
      <dc:date>2011-09-25T11:03:28Z</dc:date>
    </item>
    <item>
      <title>Re: Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55839#M33635</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The basic architecture of Activiti is not that different from jBPM 3/4, so tese numbers are still kind of valid. The number of active but dormant (just being in the db) is limited to your db size, millons can be easily achieved. Just make sure you have the correct indeces when doing actual work.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 25 Sep 2011 21:53:23 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55839#M33635</guid>
      <dc:creator>ronald_van_kuij</dc:creator>
      <dc:date>2011-09-25T21:53:23Z</dc:date>
    </item>
    <item>
      <title>Re: Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55840#M33636</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am interested in the performance, too. Since we have very big workflows to realize, I want to find out if there is a limit of the size of the workflow definitions. I wrote this programm to generate big workflows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt; /**&lt;BR /&gt;&amp;nbsp; * @param args&lt;BR /&gt;&amp;nbsp; */&lt;BR /&gt; public static void main(String[] args) {&lt;BR /&gt;&amp;nbsp; try {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; // Create file&lt;BR /&gt;&amp;nbsp;&amp;nbsp; FileWriter fstream = new FileWriter("out.txt");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; BufferedWriter out = new BufferedWriter(fstream);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; // Close the output stream&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; out.write("&amp;lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "&amp;lt;definitions id=\"definitions\""&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " xmlns=\"&lt;A href="http://www.omg.org/spec/BPMN/20100524/MODEL\" rel="nofollow noopener noreferrer"&gt;http://www.omg.org/spec/BPMN/20100524/MODEL\&lt;/A&gt;""&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " xmlns:activiti=\"&lt;A href="http://activiti.org/bpmn\" rel="nofollow noopener noreferrer"&gt;http://activiti.org/bpmn\&lt;/A&gt;""&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " targetNamespace=\"Examples\"&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " \n&amp;lt;process id=\"bigProcessBigFile\""&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "&amp;nbsp; name=\"Big process in big file\"&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " \n &amp;lt;startEvent id=\"startEvent\" name=\"StartProcess\" /&amp;gt;");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; int numOfServiceCalls = 1000;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; for (int i = 1; i &amp;lt; numOfServiceCalls; i++) {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; out.write(" \n &amp;lt;serviceTask id=\"javaServiceDoNothingLotOfTimes"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + i&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\" name=\"Read voltage\""&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " activiti:class=\"com.bigcompany.wfe.activiti.delegate.ServiceDelegate\"&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\n"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " \t&amp;lt;extensionElements&amp;gt; "&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\n"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " \t\t&amp;lt;activiti:field name=\"serviceName\"&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\n"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + " \t\t&amp;lt;activiti:string&amp;gt;DO_NOTHING_LOT_OF_TIMES&amp;lt;/activiti:string&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\n" + "\t\t &amp;lt;/activiti:field&amp;gt; " + "\n"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\t&amp;lt;/extensionElements&amp;gt; " + "\n\n" + "\t&amp;lt;/serviceTask&amp;gt;"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; String sourceRef = "javaServiceDoNothingLotOfTimes" + i;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; String targetRef = "javaServiceDoNothingLotOfTimes" + (i + 1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (i == 1) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out.write("\t&amp;lt;sequenceFlow targetRef=\"" + sourceRef&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\" sourceRef=\"startEvent\"/&amp;gt;" + "\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (i == numOfServiceCalls - 1) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; targetRef = "endEvent";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; out.write("\t&amp;lt;sequenceFlow targetRef=\"" + targetRef&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + "\" sourceRef=\"" + sourceRef + "\"/&amp;gt;" + "\n");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; out.write("&amp;lt;endEvent id=\"endEvent\"/&amp;gt;&amp;lt;/process&amp;gt;&amp;lt;/definitions&amp;gt;");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; out.close();&lt;BR /&gt;&amp;nbsp; } catch (Exception e) {// Catch exception if any&lt;BR /&gt;&amp;nbsp;&amp;nbsp; System.err.println("Error: " + e.getMessage());&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt; }&lt;BR /&gt;&lt;/CODE&gt;&lt;SPAN&gt;With 1000 nodes I get an java.util.EmptyStackException at org.activiti.engine.impl.context.Context.removeExecutionContext(Context.java:73)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; at org.activiti.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:79)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Is there a way to configure the memory consumption of activiti?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Michael&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Sep 2011 13:28:07 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55840#M33636</guid>
      <dc:creator>mhw</dc:creator>
      <dc:date>2011-09-27T13:28:07Z</dc:date>
    </item>
    <item>
      <title>Re: Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55841#M33637</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;great, but what is your actual test? just looping a service call or having hundreds of service calls after one another without any waitstate is not realistic. It's like doing a while loop in java and adding a single char to a string. You'll get an OOM exception then as well…&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Sep 2011 15:50:13 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55841#M33637</guid>
      <dc:creator>ronald_van_kuij</dc:creator>
      <dc:date>2011-09-27T15:50:13Z</dc:date>
    </item>
    <item>
      <title>Re: Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55842#M33638</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Ronald,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;my intention was to test how much nodes are possible. We have indeed workflows here with hundreds of service calls. We want to do mesurements reading values from a bus in automotive area.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;One service needs a value from the service called before.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;That scenario is not like looping in java. By the way: with 1000 chars you get a OOM? Must be a very old PC&amp;nbsp; :lol: &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;What I have to understand is why it is not possible to run more than about 80 service calls one after another. Will continue to investigate….&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Michael&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Sep 2011 13:21:50 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55842#M33638</guid>
      <dc:creator>mhw</dc:creator>
      <dc:date>2011-09-28T13:21:50Z</dc:date>
    </item>
    <item>
      <title>Re: Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55843#M33639</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;It is possible to run more than 80 one after another, but that requires tuning of your vm and or Activiti. If you search the forum about loops and memory, you'll get an impression on how Activiti works, what needs to be kept in memory and why etc.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Turning of history helps, storing only small variables and not huge documents, or store them in a different transaction. Or use async functionality if you do not need rollbacks etc, it all helps.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Sep 2011 13:42:12 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55843#M33639</guid>
      <dc:creator>ronald_van_kuij</dc:creator>
      <dc:date>2011-09-28T13:42:12Z</dc:date>
    </item>
    <item>
      <title>Re: Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55844#M33640</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Ronald,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;thank you for the tipps. Searching for looping is a good idea. I am continuing to learn.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Another interesting result:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Calling the same service node 1000 times works very fast and without notable memory increase:&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;int numOfExecutions = 1000;&lt;BR /&gt;&amp;nbsp; for (int i = 0; i &amp;lt; numOfExecutions; i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; Map&amp;lt;String, Object&amp;gt; variables = new HashMap&amp;lt;String, Object&amp;gt;();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; variables.put("continue", false);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; ProcessInstance pi = runtimeService.startProcessInstanceByKey(&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "loopProcess", variables);&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &lt;/CODE&gt;&lt;SPAN&gt;The process:&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;&amp;lt;serviceTask id="javaServiceDoNothingLotOfTimes" name="Read voltage"&lt;BR /&gt;&amp;nbsp;&amp;nbsp; activiti:class="com.bigcompany.wfe.activiti.delegate.ServiceDelegate"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;extensionElements&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;activiti:field name="serviceName"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;activiti:string&amp;gt;DO_NOTHING_LOT_OF_TIMES&amp;lt;/activiti:string&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/activiti:field&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/extensionElements&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;/serviceTask&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;sequenceFlow sourceRef="javaServiceDoNothingLotOfTimes"&lt;BR /&gt;&amp;nbsp;&amp;nbsp; targetRef="javaServiceDoNothingLotOfTimes"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;conditionExpression&amp;gt;${!continue}&amp;lt;/conditionExpression&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;/sequenceFlow&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;sequenceFlow sourceRef="javaServiceDoNothingLotOfTimes"&lt;BR /&gt;&amp;nbsp;&amp;nbsp; targetRef="endEvent"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;conditionExpression&amp;gt;${continue}&amp;lt;/conditionExpression&amp;gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;/sequenceFlow&amp;gt;&lt;/CODE&gt;&lt;CODE&gt;&lt;BR /&gt; public void execute(DelegateExecution execution) throws Exception {&lt;BR /&gt;&amp;nbsp; String serviceNameString = "";&lt;BR /&gt;…&lt;BR /&gt;&amp;nbsp; } else if (serviceNameString.equals("DO_NOTHING_LOT_OF_TIMES")){&lt;BR /&gt;&amp;nbsp;&amp;nbsp; if(counter &amp;lt; 100){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; counter++;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; } else {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; execution.setVariable("continue", true);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;…&lt;BR /&gt;&lt;/CODE&gt;&lt;SPAN&gt;At my PC it took 10s to execute, thats 10ms per loop (with each has 100 calls/decisions). I think this is very impressive and a hint to a very lean implementation.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;@LeoCode, @krassib:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;What have you found out? Any other results from your scenario?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Michael&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Sep 2011 14:04:45 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55844#M33640</guid>
      <dc:creator>mhw</dc:creator>
      <dc:date>2011-09-28T14:04:45Z</dc:date>
    </item>
    <item>
      <title>Re: Where i could find some performance info about Activiti5</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55845#M33641</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;At my PC it took 10s to execute, thats 10ms per loop (with each has 100 calls/decisions). I think this is very impressive and a hint to a very lean implementation.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;It is, as can be read in the 'jBPM3/4' performance article. Would be nice though if some memory profiling would take place on more that a few service nodes after one another. To see what takes so relatively much memory&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Sep 2011 15:38:16 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/where-i-could-find-some-performance-info-about-activiti5/m-p/55845#M33641</guid>
      <dc:creator>ronald_van_kuij</dc:creator>
      <dc:date>2011-09-28T15:38:16Z</dc:date>
    </item>
  </channel>
</rss>

