• Home
  • Site Aliases
    • www.cloud-native.info
    • oracle.cloud-native.info
    • Phil-Wilkins.uk
  • About
    • Background
    • Presenting Activities
    • Internet Profile
      • LinkedIn
    • About
  • Books & Publications
    • Logging in Action with Fluentd, Kubernetes and More
      • Logging in Action with Fluentd – Book
      • Fluentd Book Resources
      • Log Generator
    • API & API Platform
      • API Useful Resources
    • Oracle Integration
      • Book Website
      • Useful Reading Sources
    • Publication Contributions
  • Resources
    • GitHub
    • Oracle Integration Site
    • Oracle Resources
    • Mindmaps Index
    • Useful Tech Resources
    • Python Setup & related stuff
  • Music
    • Music Reading

Phil (aka MP3Monster)'s Blog

~ from Technology to Music

Phil (aka MP3Monster)'s Blog

Tag Archives: camel

Microservices

07 Sunday Jun 2015

Posted by mp3monster in General, Technology

≈ 1 Comment

Tags

AMQ, Apache, camel, karaf, Microservices, Oracle, OSB, Redhat, SOA Suite

Microservices are a hot topic at present. But microservices is neither a standard or a specific technology. Like REST it is more a set of ideas. So what constitutes a microservices. The best description I have come across yet has been by Martin Fowler ( http://martinfowler.com/articles/microservices.html ).

We can focus down on a number of specific points that are central to the idea of Microservices:

  • the creation of small pieces of functionality that can be discretely deployed,
  • are connected typically by web APIs often using REST (but also seen using other abstracting protocols)
  • can be replaced with minimal dependency issues
  • microservices are typically built by small discrete teams usually in the range of 2-12 people (the so called 2 pizza rule)
  • services are usually orchestrated by dumb pipes (so publication/subscription strategies are often used, so the intelligence about how and what to do about each event is within the service not the orchestration).
  • design approach changes orientation from n-tier (presentation, orchestration/business logic, persistence) which could be described as horizontal separation to vertical separation where partitioning is functional/service centric (which internally may embody the horizontal partitioning but this is secondary and down to how the service delivery team wish to work).
  • Search service us running as their own CPU process – typically using container technologies such as Docker, Rocket, Spoon and Drawbridge
  • Any orchestration is dumb, the decisions of what to do and when to participate are taken by the service

The small container footprint (making the enforcement of the decoupling with minimal governance) means density of processes can remain high as the overhead compared to full VMs is a lot smaller but also means instantiating clean environments for fresh deployments and testing is very fast. This does not fit so well within many ESB environments such as Oracle’s SOA Suite as the pre-requisites create a substantial footprint that would need to reside within the container for the ESB (RedHat’s JBoss Fuse is one of the few exceptions if you consider the required footprint for Apache Camel for example).

However, some of the microcontainer principles can  be pursued within the larger ESB environments utilising capabilities such as :

  • Service Component Architecture (SCA) provides a means to create isolated versions of solutions that can run concurrently. By exploiting proper versioning and version dependency controls you can start pushing out different solution pieces with great ease.
  • Exposing composites via we services REST or WSDL based and adopt a more SOI approach to artefacts so don’t tap into DVMs directly use web services to perform the lookups
  • Microservice implementations have a number of NFRs characteristics that are not (atleast in my exerpience) often utilised when rich ESB frameworks such as
    • service compensation http://soapatterns.org/design_patterns/compensating_service_transaction
    • standard implementation of Tolerant Reader patterns –   http://servicedesignpatterns.com/WebServiceEvolution/TolerantReader (in conjunction with versioning patterns such as canonical versioning – http://soapatterns.org/design_patterns/canonical_versioning)

These approaches allow you adopt the dumb pipe approach (you don’t want services directly invoking each other except in case of utility services otherwise a lot of inter service dependency will build up). Using a publish & scribe framework or simple service sequencing we should be able to exploit OSB, Weblogic MQ in an Oracle Context and Weblogic as an OSGI container (for discovering technical services). In line with the Microservices ethos it would more than legitimate to build Microservices with other tools and then use an ESB like SOA Suite to provide the technology for weaving the services together.

In a Redhat product set there are more options as the solution footprints are smaller. But you would consider Karaf (OSGi container), Active MQ,and simple uses of Camel to weave microservices together.

With cloud middleware, adopting the goals of microservices will become easier as instantiating fresh environments and deployment approaches will become more akin to those of containers – for example Oracle Integration Cloud Service (ICS) deployment is simply an import of a whole set of configuration and integration process information.

It should be noted that Microservices does fit better with a number of organisational and management approaches, such as:

  • dev ops – the build team carry the role of operational support
  • product centric rather than project centric life cycles i.e. the team exists as long as the product, rather than existing until all the current funded features are complete
  • works for build rather than buy delivery (buy is likely to introduce artefacts too large for a Microservice model).

Each microservice is likely to contain its own copy of data – potentially leading to greater data duplication – therefore data reconciliation checks and management thinking maybe be needed.

Share this:

  • Twitter
  • Facebook
  • LinkedIn
  • Print
  • Pocket
  • Email
  • Tumblr
  • Reddit
  • Pinterest
  • WhatsApp
  • Skype

Like this:

Like Loading...

Books Away

10 Friday Apr 2015

Posted by mp3monster in Books, General, Packt

≈ Leave a comment

Tags

Apache Camel, Apache Camel Developer's Cookbook, book, camel, mastering, Packt, Packt Publishing, review, SEDA

So aside from a horrible couple of weeks with everyone being ill and manic work loads.  Its been busy time with the books.

The final chapter review for a new Packt book on Apache Camel (Mastering Apache Camel) went back. So I’d expect the book to coming out soon.  I’d suggest this is a companion text to the exceedingly good Apache Camel Developer’s Cookbook (which I’ve blogged about previously here). The new book approaches Apache Camel more from a pure development platform mentality rather than from the integrator approach. If you’re familiar with Camel basics or want to focus on realising good pattern based integration then start with the Cookbook.  If you’re new to Camel and/or being asked to write custom Components or End Points then start with Mastering Apache Camel but go on to the  Cookbook as it should show best practise Camel integration will be applied. The Mastering Apache Camel doesn’t address advanced things such as SEDA which the Cookbook definitely does.  The Mastering book does an excellent job of covering things like Unit testing (in part because the Camel capability has developed).

 

 

As one book wraps up, another starts, with a 2nd Edition of Java EE Development with Eclipse which I expect will bring the book upto date with the latest capabilities of Eclipse and take in the JEE updates upto JEE v7; we’ll see where this takes us.

Share this:

  • Twitter
  • Facebook
  • LinkedIn
  • Print
  • Pocket
  • Email
  • Tumblr
  • Reddit
  • Pinterest
  • WhatsApp
  • Skype

Like this:

Like Loading...

Packt has sent another Camel along

08 Monday Dec 2014

Posted by mp3monster in Books, Packt, Technology

≈ 1 Comment

Tags

Apache, Apache Camel, book, camel, cookbook, Packt, review

 Having been a little inactive on the book reviewing front with Packt in the last couple of months.  They have been working on a new Camel book – in addition to the excellent Apache Camel Developer’s Cookbook and several smaller Instant books (Instant Apache Camel Message Routing, Instant Apache Camel Messaging System) and asked me to again prepublication review.

Does Packt need another Camel book?  Maybe, this new volume from what I have reviewed so far is focusing on custom development and certainly starts with the real Camel development basics.  So feels like it is more targeted to a complete newbie to Camel. Several chapters in and the book hasn’t faced into how Camel supports Enterprise Integration Patterns in a deep manner – although that may yet come.  Watch this space as I’ll  post on how the book is likely to shape up.

Share this:

  • Twitter
  • Facebook
  • LinkedIn
  • Print
  • Pocket
  • Email
  • Tumblr
  • Reddit
  • Pinterest
  • WhatsApp
  • Skype

Like this:

Like Loading...

To Author or Not to Author that is the question

12 Monday May 2014

Posted by mp3monster in Books, General

≈ Leave a comment

Tags

Apache, Apache Camel, Apache Camel Developer, camel, Fuse, JBoss, OUG, Packt, Packt Publishing, zookeeper

It has been an interesting week. Packt Publishing out of the blue asked if I would be interested in authoring a book on Apache Camel targeted towards more tech manager and architect types. I have admit to having declined the opportunity in part because I’ve promised to put some presentations together of the UKOUG Middleware Special Interest Group (SIG), but also there are a number of Apache Camel books already out there including the one I technically reviewed for Packt (Apache Camel Developer’s Cookbook) co-authored by someone I have worked with in the past.

It did promote some thoughts about book authoring, and currently Packt have a gap in their coverage of the technologies that underpin JBoss Fuse, namely Apache ZooKeeper (which also underpins aspects of Hadoop and many others) which would make for an interesting project. Once we’ve got the SIG activities done perhaps something worth coming back to.

Share this:

  • Twitter
  • Facebook
  • LinkedIn
  • Print
  • Pocket
  • Email
  • Tumblr
  • Reddit
  • Pinterest
  • WhatsApp
  • Skype

Like this:

Like Loading...

Books, Books & More Books

15 Tuesday Oct 2013

Posted by mp3monster in Books, Technology

≈ 1 Comment

Tags

Apache Camel, Apache Camel Developer's Cookbook, book, camel, Camel Enterprise Cookbook, COL50, Jakub Korab, Packt, Packt Publishing, review, Scott Cranton

The blog posts have been a bit slow of late as I’ve been deep into reviewing books for Packt Publishing.  But thought I’d share the fact that Packt are running a big promotion at the moment, offering 50% off all their books if you use the discount code COL50 as part of the celebration of Columbus Day.  The offer currently runs until the Thursday 17th October.

As for books, well I’ve just finished reviewing the Apache Camel Developer’s Cookbook by Jakub Korab and Scott Cranton (Amazon have it currently listed as Camel Enterprise Cookbook.

The version of the book I’ve reviewed was very, very good. I have to admit I went into reviewing this book with high expectations given the fact I’ve worked with Jakub and know the calibre of his output whilst he was consulting for FuseSource (now part of RedHat JBoss) and I’ve not been disappointed.

You can read the book as either a guide to Apache Camel as each recipe builds upon the preceding recipe; or as a dive in as you need a solution to a problem as each recipe pretty much stands up in its own right (cross referencing other supporting recipes or key preceding recipes).  The book explains not only how to do something – from simple routing & filtering through to XA transactions with one of the leading orchestration technology frameworks.

From Jakub & Scott’s fine technical guide, I’ve started to look at a book on Applied SOA Patterns on the Oracle Platform part of Packt’s Enterprise series of books.  I cant say too much on this book yet – it is going to be a fairly chunky book at around 500 pages.  Will post more once we’ve got well into the book I’m sure.

Share this:

  • Twitter
  • Facebook
  • LinkedIn
  • Print
  • Pocket
  • Email
  • Tumblr
  • Reddit
  • Pinterest
  • WhatsApp
  • Skype

Like this:

Like Loading...

Aliases

  • phil-wilkins.uk
  • cloud-native.info
  • oracle.cloud-native.info

I work for Oracle, all opinions here are my own & do not necessarily reflect the views of Oracle

Oracle Ace Director Alumni

TOGAF 9

Logging in Action

Oracle Cloud Integration Book

API Platform Book


Oracle Dev Meetup London

Categories

  • App Ideas
  • Books
    • Book Reviews
    • manning
    • Oracle Press
    • Packt
  • Enterprise architecture
  • General
    • economy
    • LinkedIn
    • Website
  • Music
    • Music Resources
    • Music Reviews
  • Photography
  • Podcasts
  • Technology
    • APIs & microservices
    • chatbots
    • Cloud
    • Cloud Native
    • Dev Meetup
    • development
      • languages
        • node.js
    • drone
    • Fluentd
    • logsimulator
    • mindmap
    • OMESA
    • Oracle
      • API Platform CS
        • tools
      • Helidon
      • ITSO & OEAF
      • Java Cloud
      • NodeJS Cloud
      • OIC – ICS
      • Oracle Cloud Native
      • OUG
    • railroad diagrams
    • TOGAF
  • xxRetired

My Other Web Content & Contributions

  • Amazon Author entry
  • API Platform
  • Dev Meetup (co-managed)
  • Fluentd Book
  • ICS Book Website
  • OMESA
  • Ora World
  • Oracle Community Directory
  • Packt Author Bio
  • Phil on Blogs.Oracle.com
  • Sessionize Profile

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 2,574 other subscribers

RSS

RSS Feed RSS - Posts

RSS Feed RSS - Comments

March 2023
M T W T F S S
 12345
6789101112
13141516171819
20212223242526
2728293031  
« Feb    

Twitter

  • Get all the details about the new enhancements to @Oracle Container Engine for Kubernetes, including Serverless… twitter.com/i/web/status/1…Next Tweet: 6 hours ago
  • RT @TechWeekRO: With over 25 years of experience in the software industry, Phil Wilkins, Cloud Developer Evangelist at @Oracle, is coming t…Next Tweet: 9 hours ago
  • SSH Key File Permissions blog.mp3monster.org/2023/03/28/ssh…Next Tweet: 1 day ago
  • Oracle's Assurance Service gives customers the proactive guidance they need to move their organization forward whil… twitter.com/i/web/status/1…Next Tweet: 1 day ago
  • Fraud affects many businesses and can be costly. But there’s a way to fight it. Scalable Machine Learning algorithm… twitter.com/i/web/status/1…Next Tweet: 1 day ago
Follow @mp3monster

History

Speaker Recognition

Open Source Summit Speaker

Flickr Pics

Pembroke CastleSeven Bridge Crossing
More Photos

    Social

    • View @mp3monster’s profile on Twitter
    • View philwilkins’s profile on LinkedIn
    • View mp3monster’s profile on GitHub
    • View mp3monster’s profile on Flickr
    • View philmp3monster’s profile on Twitch
    Follow Phil (aka MP3Monster)'s Blog on WordPress.com

    Blog at WordPress.com.

    • Follow Following
      • Phil (aka MP3Monster)'s Blog
      • Join 218 other followers
      • Already have a WordPress.com account? Log in now.
      • Phil (aka MP3Monster)'s Blog
      • Customize
      • Follow Following
      • Sign up
      • Log in
      • Report this content
      • View site in Reader
      • Manage subscriptions
      • Collapse this bar
    Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
    To find out more, including how to control cookies, see here: Our Cookie Policy
    %d bloggers like this: