[JBoss jBPM] - Re: beginner question for the jbpm evalutaion (performance a
by golubec
Thanks kukeltje,
I've read that blog about performance before as well as your jbpmplanet blog too.
As for "tuning-jbpm-in-cluster.html" the point there is demonstration of jBPM scalalability rather than performance i guess.
For me it's not clear whether workflow under the test is complex or a simple one (as one i'm using), because for 2000 "escalations" (is it jBPM terminology?) even the best time of 34 secs doesn't look great.
But "tuning-jbpm-in-cluster.html" also mentions that number of threads which execute process can be increased - may be that's the way i could achieve better performance in my case?
Another question is there only one way to run the same process multiple times:
Execution execution = executionService.startProcessInstanceByKey("NoOperation");
, or may be other approaches exist which would allow better performance, considering more constraints of course.
If you ask me - 3 millisecs per process isn't very good result - don't blame me, but i've tried Drools Flow with similar NoOperation flow where only start and end present. The results i got were - [0.5 ... 10,5] secs depending on the how the sessions are treated. I understand that the process state in jBPM is persisted and it will always have impact on the performance.
May be it's not a correct question but is it possible to disable process state persistency, so DB won't be involved at all??
As i said am just making evalution and try to choose the right technology for "workflow" engine which could face our near real-time requirements.
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4237248#4237248
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4237248
17 years, 1 month
[JBoss Portal] - Re: PortletStateHolder
by FelderR
Just implemented the filter and the clearing of the states LRUMap. As I can see all the normal Request/Responses work fine. The Problem occurs when using Ajax based Richfaces requests (eg ExtendedDataTable with filtering and sorting):
javax.faces.FacesException: No saved portlet window state for an id 4c4fd449-3557-426b-8cd5-f864c24692be:view:2cfaa740-1be3-46a4-bef4-28ece52dcd46
at org.jboss.portletbridge.context.ServletExternalContextImpl.(ServletExternalContextImpl.java:101)
So now that I know why the states are cached I have a better solution solving the Memory Leak! The PortletStateHolder needs to hold the state as long as one page is doing Ajax based requests. So if the next page is requested PortletStateHolder does not need the old state any more so it can clearly remove it! So when adding a new WindowState we remove the old WindowStates for this session id:
| private void clearExpiredSessionStates(String sessionId) {
| if (states != null && sessionId != null) {
| for (StateId stateid : states.keySet()) {
| if (sessionId.equals(stateid.getScopeId())) {
| states.remove(stateid);
| }
| }
| }
| }
| public void addWindowState(StateId stateId, PortletWindowState state) {
| clearExpiredSessionStates(stateId.getScopeId());
| states.put(stateId, state);
| }
|
There's one drawback with this solution if there is more than one window open one of the windows get an error when doing Ajax based requests as we only store one state per session.
Working on a solution to this. Any ideas?
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4237238#4237238
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4237238
17 years, 1 month
[EJB/JBoss] - Re: EJB tutorial
by samwan808
"jaikiran" wrote : anonymous wrote : BUILD FAILED
| | /usr/java-source/ejb3-tutorial/source/stateless/build.xml:33: /usr/java-source/ejb3-tutorial/source/stateless/${env.JBOSS_HOME}/client not found.
|
| See this http://www.jboss.org/file-access/default/members/jbossejb3/freezone/docs/...
Thanks for the help.
I have it compiled with ant, but failed when it is trying to do the binding:
twp1:stateless # ant
Buildfile: build.xml
prepare:
[mkdir] Created dir: /usr/java-source/ejb3-tutorial/source/stateless/build
[mkdir] Created dir: /usr/java-source/ejb3-tutorial/source/stateless/build/classes
compile:
[javac] Compiling 5 source files to /usr/java-source/ejb3-tutorial/source/stateless/build/classes
ejbjar:
[jar] Building jar: /usr/java-source/ejb3-tutorial/source/stateless/build/jboss-ejb3-tutorial-stateless.jar
[copy] Copying 1 file to /usr/local/jboss5/server/default/deploy
BUILD SUCCESSFUL
Total time: 3 seconds
twp1:stateless # ant run
Buildfile: build.xml
prepare:
compile:
ejbjar:
run:
[java] Exception in thread "main" javax.naming.CommunicationException: Could not obtain connection to any of these urls: localhost and discovery failed with error: javax.naming.Communication
Exception: Receive timed out [Root exception is java.net.SocketTimeoutException: Receive timed out] [Root exception is javax.naming.CommunicationException: Failed to connect to server localhost:1
099 [Root exception is javax.naming.ServiceUnavailableException: Failed to connect to server localhost:1099 [Root exception is java.net.ConnectException: Connection refused]]]
[java] at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1727)
[java] at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:680)
[java] at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:673)
[java] at javax.naming.InitialContext.lookup(InitialContext.java:392)
[java] at org.jboss.tutorial.stateless.client.Client.main(Client.java:34)
[java] Caused by: javax.naming.CommunicationException: Failed to connect to server localhost:1099 [Root exception is javax.naming.ServiceUnavailableException: Failed to connect to server loc
alhost:1099 [Root exception is java.net.ConnectException: Connection refused]]
[java] at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:311)
[java] at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1698)
[java] ... 4 more
[java] Caused by: javax.naming.ServiceUnavailableException: Failed to connect to server localhost:1099 [Root exception is java.net.ConnectException: Connection refused]
[java] at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:281)
[java] ... 5 more
[java] Caused by: java.net.ConnectException: Connection refused
[java] at java.net.PlainSocketImpl.socketConnect(Native Method)
[java] at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
[java] at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
[java] at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
[java] at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
[java] at java.net.Socket.connect(Socket.java:519)
[java] at org.jnp.interfaces.TimedSocketFactory.createSocket(TimedSocketFactory.java:97)
[java] at org.jnp.interfaces.TimedSocketFactory.createSocket(TimedSocketFactory.java:82)
[java] at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:277)
[java] ... 5 more
[java] Java Result: 1
BUILD SUCCESSFUL
Total time: 6 seconds
JBOSS is with version 5.0 GA and listening on port 8080.
Thanks heaps
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4237234#4237234
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4237234
17 years, 1 month