Skip to content

Instantly share code, notes, and snippets.

@ScalaWilliam
Created June 26, 2017 00:28
Show Gist options
  • Save ScalaWilliam/bbfea790ce83fea6995ee252a835ccec to your computer and use it in GitHub Desktop.
Save ScalaWilliam/bbfea790ce83fea6995ee252a835ccec to your computer and use it in GitHub Desktop.

Using OSGI vs microservices: https://www.reddit.com/r/java/comments/4n3ztb/microservices_vs_osgi_i_was_thinking_to_start_a/d40nj67/

Great comment: Try to understand both technologies. Then choose neither. ... Because in 99% of cases you don't need any of them.

http://felix.apache.org/ Felix is an OSGI runtime

http://karaf.apache.org/ Karaf builds on an OSGI runtime to provide administration features, eg SSH and file uploads Hot deploy...

http://servicemix.apache.org/ ServiceMix combines Karaf, ActiveMQ, Camel, CXF. So you get something more complete. "Enterprise Service Bus"

RedHat JBOSS Fuse Builds on ServiceMix to be more commercial friendly or so Has quite a bit of docs...

Karaf is the key thing --- has LOTS of docs! http://karaf.apache.org/documentation.html

Handbook for osgi - http://enroute.osgi.org/book/100-introduction.html

osgi enroute examples - https://github.com/osgi/osgi.enroute.examples

scala akka osgi - https://github.com/akka/akka-samples/tree/2.5/akka-sample-osgi-dining-hakkers

sbt-osgi - https://github.com/sbt/sbt-osgi create osgi bundles but I'm not sure if this is multiple JARs or just one JAR.

Wikipedia - https://en.wikipedia.org/wiki/OSGi Clear intro

modularity in java 9 & osgi - https://speakerdeck.com/alblue/modularity-in-java-with-osgi good explanation. jigsaw isn't really competing versus osgi

you might not be ready for osgi - http://www.adam-bien.com/roller/abien/entry/how_to_kill_an_osgi Very good article, points out problems that are already there So osgi won't even help you. Especially important is the point of deploying everything at once.

"For most enterprise applications you will get only one variant of your business logic, or even UI - so you will end up with modules, which will probably never be replaced."

Don't need modules if your deployments are tightly coupled. How brilliant! Beats all the microservices bullshit.

Whenever you have to synchronise two deployments, you're already ruined. You should be able to deploy independently, at all times. Else it's not microservices It's megaturds.

Very interesting - Eclipse-RCP - https://wiki.eclipse.org/Rich_Client_Platform

Wonder if it's possible to combine Play with JRuby templates - https://gist.github.com/krisleech/1329264

...

Twirl plain sucks. Then my HTML-JSoup layer can be made better. But still I'd like something nicer... and argh, we must stick with Scala. JRuby sucks actually This could do - https://github.com/henix/ssoup

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment