Java library for controlling process lifecycle [closed] - java

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Is there a good java library/framework that can help me in persisting the state of my process periodically?
Basically I have a long running process that stores many data structures and runtime configurations. Since the state of the code is not very stable, it often crashes or needs to be restarted. Also, occasionally we need to update the code base for a bugfix/optimisation and would like to resume the run from where it was when we last killed the process.
It would be nice if there is a library that can help us out with the plumbing of persisting data, managing the threads for persistency etc. I was thinking that for 99% of use cases, annotating the relevant fields themselves would be the cleanest solution (if I would write such a library), similar to POJO annotations when persisting to a database.

I don't know, how much EE is in your software, but implementing processes using the activiti framework helped us a lot. It allows bpm, custom code, restarting etc pp and even comes up with a web based process monitor.
It leverages relational databases to hold process state.
http://activiti.org/

Related

Extendable Java Database [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I'm looking for an open source, Java-based database that ...
can be easily extended, e.g. by implementing various forms of trees (R-tree, etc.), various indexing techniques (BitMatrix, etc.), new operations and fields
does a good (fast) job at reading data, e.g. for reading time series
is well documented
I looked at (in other threads suggested) Apache Derby and BerkleyDB already; at the moment I'm in favor of BerkleyDB since it seems to be faster than Derby. Do you have any further preferences or any arguments for or against a database.
I never tried to extend it but H2 database seems to be one of the most flexible and vibrant projects at this time.
It uses interfaces in many places which makes it simple to drop in your own implementation, for example for custom tables.

State machine workflow framework [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
I'm about to implement a state machine based workflow in my app and I've encountered an interesting framework that could make this task easier - http://code.google.com/p/stateless/
Sadly, it's for C# only.
Does anyone know about a similar workflow framework for Java? I'm afraid integrating Drools would take a lot more time than I can afford, I need something lightweight like the Stateless framework.
You can try
http://unimod.sourceforge.net/fsm-framework.html
http://today.java.net/pub/a/today/2006/01/04/business-processes-with-osworkflow.html
http://jakarta.apache.org/site/downloads/downloads_commons-scxml.cgi
http://springframework.org/webflow
http://www.jboss.org/jbpm
http://www.complang.org/ragel/
http://today.java.net/article/2009/09/06/finite-state-machine-supporting-concurrent-states
Or instead of using a framework, you can use an enum to do it (which is what I do)
http://vanillajava.blogspot.com/2011/06/java-secret-using-enum-as-state-machine.html
We have been using Stateless in our .NET which now needs to go Java for prod servers. This is what we are going with (note W3 and apache commons):
http://www.w3.org/TR/scxml/
http://commons.apache.org/proper/commons-scxml/
http://www.javacodegeeks.com/2012/06/apache-commons-scxml-finite-state.html
Have you checked the Java Finite State Machine Framework? looks simple enough. And agreed, Drools would be overkill -. and besides, it's more of an inference engine (although it can be used as a workflow component).

Is there any good known solution for a fast persistent cache? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I need really fast and persistent cache for my web crawler. It doesnt need to be as fast as ConcurrentSkipListSet in Java, but definitely it cannot be MySQL with hash-index based table, which i tried. After 1m+ of records it takes like 80% of processor time.
Does any one know or heard of something useful for this case?
Thanks for any hint.
Try EhCache. It's a primarily in-memory cache with options for overflow and persistence to disk backing store. Been around for years, still actively developed, and very mature.
I am working on cache2k, and researching recent cache eviction policies to make it the fastest java cache around, see cache2k benchmarks.
Persistence is added right now and will be available for preview and testing in two weeks. I expect it to be very stable in five weeks. The cache2k implementation is, of course, not as mature as EHCache, however, everything released, is used in within our own applications and proves itself in production environments.
Update: The "two weeks" was very optimistic, since the whole locking concept needed finally a rewrite and careful inspection... You can track the persistence support currently emerging on github

Are there any simple and effective Open Source Java database-backed queue libraries? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
I have a few different apps which need robust database-backed job/task queues, and so far I've had trouble identifying any promising candidates. I'd love some suggestions!
BTW, by database-backed I intend something which persists job data and status to a JDBC DB for reliability purposes.
Oh, I'm specifically looking for a library. I'm aware of systems such as ActiveMQ and JMS-based systems. But I need my apps to remain self-contained and not turn into entire platforms. (I've also always had some trouble making the conceptual leap to modeling jobs/tasks as messages.)
Thanks,
Avi
I recommend you take another look at ActiveMQ. While it is by default a standalone application, you can also embed it in your application, making it "self-contained". I've done this using ActiveMQ's Spring support but you can also do it programmatically by simply instantiating the correct classes in your app. ActiveMQ is lightweight and offers several persistence mechanisms.
Regarding whether there is a dissonance with thinking of "messages" as "jobs", I guess it depends on what you mean by "job". If I hand you a piece of paper that says "mow the lawn" and you think of that as a job, then messages can be jobs. If instead you don't have a job until you actually start mowing the lawn, then they are not.
Perhaps you may want to look at Spring Batch, which uses a job-based domain model. It too is embeddable and has persistence, retry, etc. built in.

Looking for a specific Java application for performance testing [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
For purely experimental reasons, and to learn about monitoring applications, looking for something with the following criteria:
written in Java
web application, runnable in a web container (tomcat). not using EJBs/JMS.
open-source
somewhat resource-intensive
using MySQL for DB
makes good use of logs (that is, writes to logs often and descriptively)
works fairly simple in EC2, i guess - what kinds of problem could be there? maybe usage of many ports?
The intention here is to be able to send it http query (or soap) requests and be able to significantly load it. Looking for some fresh ideas.
Thanks!
AppFuse is a Java web stack that meets all of these requirements (I don't know what you mean by resource-intensive, but you could always add your own functionality that is CPU-intensive, or I/O intensive, or whatever - or just put load on it).
Here is a link to the quick start guide.
Actually, since it supports multiple web frameworks (Spring MVC, Struts, Wicket, etc), one use case for your performance testing could involve testing with each one to compare different types of functionality.

Categories

Resources