Home » Archives for Biju Kunjummen

Author Archives: Biju Kunjummen

CloudEvent Basics

CloudEvent is a way of describing events in a common way. This specification is starting to be adopted across different event producers across Cloud Providers, which over time will provide these benefits: Consistency: The format of an event looks the same irrespective of the source producing the event, systems which transmit the event and systems consuming the event.  Tooling: Since ...

Read More »

Cloud Deploy with Cloud Run

Google Cloud Deploy is a service to continuously deploy to Google Cloud Application runtimes. It has supported Google Kubernetes Engine(GKE) so far, and now is starting to support Cloud Run. This post is about a quick trial of this new and exciting support in Cloud Deploy.  It may be simpler to explore the entire sample which is available in my github ...

Read More »

Skaffold for Local Java App Development

java-interview-questions-answers

Skaffold is a tool which handles the workflow of building, pushing and deploying container images and has the added benefit of facilitating an excellent local dev loop.  In this post I will be exploring using Skaffold for local development of a Java based application Installing Skaffold Installing Skaffold locally is straightforward, and explained well here. It works great with minikube as a local ...

Read More »

Google Cloud Function Gradle Plugin

java-interview-questions-answers

 It is easy to develop a Google Cloud Function using Java with Gradle as the build tool. It is however not so simple to test it locally. The current recommended approach to testing especially with gradle is very complicated. It requires pulling in Invoker libraries and adding a custom task to run the invoker function. I have now authored a ...

Read More »

Google Cloud Functions (2nd Gen) Java Sample

java-interview-questions-answers

Cloud Functions (2nd Gen) is Google’s Serverless Functions as a Service Platform. 2nd Generation is now built on top of the excellent Google Cloud Run as a base. Think of Google Cloud Run as a Serverless environment for running containers which respond to events(http being the most basic, all sorts of other events via eventarc). The blue area above shows ...

Read More »

Google Cloud Structured Logging for Java Applications

java-interview-questions-answers

 One advice for logging that I have seen when targeting applications to cloud platforms is to simply write to Standard Out and platform takes care of sending it to the appropriate log sinks. This mostly works except when it doesn’t – it especially doesn’t when analyzing failure scenarios. Typically for Java applications this means looking through a stack trace and ...

Read More »

Calling Google Cloud Services in Java

If you want to call Google Cloud Services using a Java based codebase, then broadly there are two approaches to incorporating the client libraries in your code — the first, let’s call it a “direct” approach is to use the Google Cloud Client libraries available here, the second approach is to use a “wrapper”, Spring Cloud GCP libraries available here. ...

Read More »

Google Cloud Java Client – ApiFuture to Reactive types

java-interview-questions-answers

 Google Cloud Java Client libraries use a ApiFuture type to represent the result of an API call. The calls are asynchronous and the ApiFuture type represents the result once the call is completed. If you have used Reactive stream based libraries like Project Reactor, a big benefit of using the Reactive types like Mono and Flux is that they provide ...

Read More »

Service to Service Call Pattern – Multi-Cluster Ingress

Multi-Cluster Ingress is a neat feature of Anthos and GKE (Google Kubernetes Engine), whereby a user accessing an application that is hosted on multiple GKE clusters, in different zones is directed to the right cluster that is nearest to the user! So for eg. consider two GKE clusters, one in us-west1, based out of Oregon, USA and another in europe-north1, ...

Read More »