2

As BDB JE runs in he application's process I'd like to find the best way to build a system where I can BDB running and reload my ever changing application logic and dependencies.

Ideally I would run BDB in a separate process but then I would need to use shared memory to perform the IPC to keep the bandwidth up.

Another thought I had was using OSGi to refresh the application bundle.

Anyone have any clever techniques for doing this. I appreciate BDB JE's embedded nature, but I want to have my cake and eat it.

Ben Smith
  • 1,554
  • 1
  • 15
  • 26
  • The OSGI approach sounds more appealing to me, I feel uncomfortable with the thought of using an embedded database in a non-embedded way. – biziclop Jul 01 '13 at 16:10

1 Answers1

1

Did you try to run the Berkeley db in a separate bundle and link it to the other bundles through µservices? Since µservices are dynamically bound you change your application logic while keeping the BDB bundle running.

In bnd(tools) I have a similar situation with mongo db. I now have a setup where sometimes my framework does not gets restarted for days even though I make hundreds of updates to the bundles (In bndtools every time you save your code, it automatically gets deployed to your running framework). Since the db implementation rarely needs to be updated, the db keeps running all the time.

Peter Kriens
  • 15,196
  • 1
  • 37
  • 55