Hi Camunda Team!
I’m looking for a Process Engine Delegation or similar goal to have different process engine with sharding datastores over a Java implemetation?
Thanks a lot!!!
Hi Camunda Team!
I’m looking for a Process Engine Delegation or similar goal to have different process engine with sharding datastores over a Java implemetation?
Thanks a lot!!!
Hi @devj87,
at the moment there is no out of the box support for sharding in the engine. DB is always assumed to be centralized.
Cheers,
Askar
Thanks for reply @aakhmerov,
so is not possibile to manage different process engines with different datastores?
I read about multy tenancy provided by camunda in this guide
https://docs.camunda.org/manual/7.4/user-guide/process-engine/multi-tenancy/
can I get a similar outcome?
best regards
you can have different engines working with different data sources. What you cannot have out of the box is data put into different tables or tablespaces based on some function predicate.
Cheers,
Askar
how can I implement this in Spring?
you would configure a shared engine like here https://docs.camunda.org/get-started/spring/shared-process-engine/ and then replace processes.xml
as described here https://docs.camunda.org/manual/7.4/user-guide/process-engine/multi-tenancy/#configuration.
Hope that helps,
Askar
I’m trying to set it following guide but it returns:
[ERROR] Caused by: java.lang.RuntimeException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘repositoryService’ defined in ServletContext resource [/WEB-INF/applicationContext.xml]: factory-bean ‘processEngine’ returned null
thanks for reply @aakhmerov!
{“WFLYCTL0080: Failed services” => {“jboss.undertow.deployment.default-server.default-host./camundaSample” => "org.jboss.msc.service.StartException in service jboss.undertow.deployment.default-server.default-host.camundaSample: java.lang.RuntimeException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘repositoryService’ defined in ServletContext resource [/WEB-INF/applicationContext.xml]: factory-bean ‘processEngine’ returned null
@aakhmerov can I manage process engine as awarness over Spring?
For example:
Having more than one process engine, I would dynamicaly invoke get service factory methods for a dynamic bean-factory process engine from specific stream
Is there a Spring management for this purpose?
Hey @devj87,
could you please check https://docs.camunda.org/manual/7.5/examples/tutorials/multi-tenancy/. If that’s helpful.
Cheers,
Askar
thanks for reply @aakhmerov
How can I add anoher process engine using spring?
I’m trying creating firstly a default process engine:
…
<bean id="transactionManager"
...
</bean>
<bean id="processEngineConfiguration"
...
</bean>
<bean id="processEngine" class="org.camunda.bpm.engine.spring.ProcessEngineFactoryBean">
<property name="processEngineConfiguration" ref="processEngineConfiguration" />
</bean>
So adding another creation as below:
…
<bean id="transactionManager2"
...
</bean>
<bean id="processEngineConfiguration2"
...
</bean>
<bean id="processEngine2" class="org.camunda.bpm.engine.spring.ProcessEngineFactoryBean">
<property name="processEngineConfiguration" ref="processEngineConfiguration2" />
</bean>
It doesn’t work creating only the first process engine
thanks a lot!
Hi @aakhmerov the bundled wildfly 10
ok, let’s start by downloading distribution here https://camunda.org/download/
and changing bpm-platform.xml
to contain 2 engines.
I can’t find it in that extracted zip, can you show me a sample configuration for 2 jndi process engine as Spring bean ?
right, on Jboss and Wildfly those resources are configured through standalone.xml``located on path
./standalone/configuration/standalone.xml` in distro.
you can read about it more here https://docs.camunda.org/manual/7.5/user-guide/runtime-container-integration/jboss/
usually shared engine is provided by application server or web container and not by spring context. I don’t think we have such an example ready at the moment.
Hope that helps,
Askar
ok done, thanks
How can I perform a junit test for processEngine build as JndiObjectFactoryBean?
you should use Arquillian, with managed container as I understand.
ok thanks a lot @aakhmerov !