Retrying Requests With Spring Cloud Ribbon

Most applications today make HTTP requests to external services. When using Spring Cloud one way to make these requests is to use what we call a “load balanced RestTemplate”. Creating a load balanced RestTemplate is pretty strait forward.

Providing Hystrix Fallbacks For Routes In Zuul

If you are a user of Zuul from Spring Cloud Netflix, than you likely know that all the routes you configure that use Ribbon are also wrapped in Hystrix commands. This nice little feature provides a circuit breaker for all your proxied requests through Zuul. When the circuit is tripped it can save the proxied service from becoming too overloaded and perhaps also save your app from appearing to be “slow”.

Manual Creation Of Feign Clients In Spring Cloud

Saying

Tracing In Microservices With Spring Cloud Sleuth

One of the problems developers encounter as their microservice apps grow is tracing requests that propagate from one microservice to the next. It can quite daunting to try and figure out how a requests travels through the app, especially when you may not have any insight into the implementation of the microservice you are calling.
Spring Cloud Sleuth is meant to help with this exact problem. It introduces unique IDs to your logging which are consistent between microservice calls which makes it possible to find how a single request travels from one microservice to the next.

It Was Time For A Change

Change is good…well thats what they say anyways ;) After working for IBM for 8+ years, I have left the only company I have every worked for and have joined Pivotal. I owe a lot to IBM. I joined right out of college and I learnt so much during the 8 years I was there. I worked on a lot of great projects, and was presented with so many great opportunities that took my career in directions I would have never imagined. By far the part of IBM that has impacted me the most both personally and professionally were the people. There are SO many talented people at IBM, and I was lucky to work with many of them. They taught me how to be an engineer, how to survive in a company with 400k people, and what it takes to progress professionally.

Pivotal Spring Cloud

Recently however an opportunity came up for me to join Pivotal and work on the Spring Cloud team. If you are a regular reader of this blog, you have probably noticed that I have been a big fan of Spring and Spring Cloud, so when the opportunity to work on those technologies presented itself I could not pass it up.

I am truly thankful for my 8+ years at IBM, and I am very excited to now be starting a new chapter in my career with Pivotal.

Bluemix Cloud Connectors For IBM Graph DB and Object Storage Services

As I have blogged about in the past, the Bluemix Cloud Connectors project is a Java library you can use to easily access service credentials and obtain high-level Java objects to work with various services in Bluemix. Today I updated the project to add support for two new services in Bluemix, the IBM Graph DB service, and the Object Storage service.

Docker Compose and IBM Containers

Recently my colleague Chris Rosen published this blog post about some new functionality coming to the IBM Containers service in Bluemix. One of the new features that is now available is native Docker Compose support. Docker Compose is a great tool to use if your application is split up into multiple containers. It takes care of a lot of the orchestration and configuration needed to be done between the various containers so that they can work seamlessly together. You can read more about Docker Compose in the Docker documentation.

Running OpenWhisk Actions From Node-RED

At IBM InterConnect 2016, IBM announced a new experimental compute runtime for Bluemix called OpenWhisk. What is OpenWhisk?

Forget Email My Watch Can Control A Drone!

This year at DevNexus I gave a presentation showing how you can use the IBM IoT Foundation and an Apple Watch to control a drone. The presentation was very well received at the conference and I had a lot of good feedback from attendees. If you are interested in checking out the session the recording is on YouTube, or if you prefer, you can just watch the video below.

Getting Started With The Bluemix Graph DB Service

The IBM Graph DB service is one of the many data and analytics services available on Bluemix. If you are not familiar with graph databases, than you can read more about them on Wikipedia. The primary use case for graph databases is to describe relationships between different objects. Graph DBs are composed of two components, vertices and edges. A vertex represents some type of object and an edge represents a relationship between two vertices. The classic example is to represent your social network via a graph database. Each vertex represents a person and an edge between a person represents the fact that those two people know each other. Vertices and edges can have properties associated with them. For example, a person might have a name property associated with the vertex. An edge between two people might have a property representing the date the relationship was established.