Cloud

Episode 101. Allright, let’s talk about Kafka

Whew! So we took a big break over summer (like Bob said, we were just swamped with work.. oof), but we are BACK! and like always we are ready to explore even deeper Java topics for the professional developer.

This time we set our sights in Apache Kafka, one of the (if not THE) dominant distributed messaging framework / broker. If you have been integrating webservices, you might have been running into message brokers (and applying Enterprise Integration Patterns), well if so, you most likely have run into Kafka.

We dive into “What does Kafka Solve”, into what it is (and isn’t), and why you should use it (or not use it), and how it differs from traditionalling Messaging systems.

In all, this is another episode of “Cloud stuff”, and, like you know, that’s where everything interesting is at! So have a listen!

http://www.javapubhouse.com/datadog
We thank DataDogHQ for sponsoring this podcast episode

Don’t forget to SUBSCRIBE to our cool NewsCast OffHeap!
http://www.javaoffheap.com/

Apache Kafka
https://kafka.apache.org/

Kafka Quick Start
https://developer.confluent.io/quickstart/kafka-on-confluent-cloud/

What IS Apache Kafka
https://developer.confluent.io/what-is-apache-kafka/

Apache Kafka Quickstart (With Tim Berglund, Hi!!!)
https://kafka.apache.org/quickstart

Do you like the episodes? Want more? Help us out! Buy us a beer!
https://www.javapubhouse.com/beer

And Follow us!
https://www.twitter.com/javapubhouse

Episode 100. To the CLOUD… Which one? All of them!

Yeah! so we have been working with the cloud for a while, terms like K8s, EC2, Route53, BlobData, CLI has been swinged around… and is a little mysterious, and sometimes looks like a black box where you just click buttons, add things, type commands, until it finally something good happens. But if something bad happens, we tend not to have the slightest idea on why!

Never fear, on this episode of PubHouse we start from the very beginning on describing (And dismantling) what the “Cloud” really is… Starting on how we got there, what are the different “components” of most clouds, and how to reason about them.

This way, the next time something unpredictable happens, you will know exactly where to start troubleshooting and how to navigate this space! This is the first episode of a series (probably a series of 2) on Cloud technologies. So if you never been exposed to the cloud and you’re curious, or even if you’ve been working on it but everything sounds mysterious, then dive in!


We thank DataDogHQ for sponsoring this podcast episode

Don’t forget to SUBSCRIBE to our cool NewsCast OffHeap!
http://www.javaoffheap.com/

Intro to AWS
https://docs.aws.amazon.com/whitepapers/latest/aws-overview/introduction.html

What is Elastic Load Balancing
https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/what-is-load-balancing.html

What is Amazon Route 53
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html

EC2 vs ECS vs Lambda
https://www.cloudzero.com/blog/ecs-vs-ec2

Intro to Azure Fundamentals
https://docs.microsoft.com/en-us/learn/modules/intro-to-azure-fundamentals/

Azure Containter Registry
https://azure.microsoft.com/en-us/services/container-registry/#features

Azure Compute
https://azure.microsoft.com/en-us/services/virtual-machines/#overview

Do you like the episodes? Want more? Help us out! Buy us a beer!
https://www.javapubhouse.com/beer

And Follow us!
https://www.twitter.com/javapubhouse

Episode 99. SHHH! It’s a secret! (Storing API Keys / Passwords / tokens!)

Ok, so is time to talk about something secretive! Like API Passwords, Auth tokens, or keys… these are things that we want to have as a Secret within our microservice. And yeah, adding them into your source code is a big no-no

Here we cover the dos (and dont’s) of secret management, what are the benefits and drawbacks of the different solutions and we explore some of our favorite open source (and Cloud tools) for keeping secrets. We answer some important questions on how to effectively store and manage these secrets (the short answer is don’t try to do it yourself!), and end up with the list of best practices for it.

If you are building a non-trivial (or interesting) web service, this is a must-listen episode!

http://www.javapubhouse.com/datadog
We thank DataDogHQ for sponsoring this podcast episode

Don’t forget to SUBSCRIBE to our cool NewsCast OffHeap!
http://www.javaoffheap.com/

Language Features

Using AWS Secrets Manager to manage secrets in Spring Boot
https://raymondhlee.wordpress.com/2019/10/11/using-aws-secrets-manager-to-manage-secrets-in-spring-boot-applications/

AWS Secrets Manager
https://aws.amazon.com/secrets-manager/

Spring Cloud AWS
https://cloud.spring.io/spring-cloud-aws/reference/html/

Hashicorp Vault
https://www.vaultproject.io/

Do you like the episodes? Want more? Help us out! Buy us a beer!
https://www.javapubhouse.com/beer

And Follow us!
https://www.twitter.com/javapubhouse

Episode 86. Move Over Slow Startup times, GraalVM…IS…HERE. (and cross-language support, and less memory footprint…)

Oh my! This episode is going to be one of our favorites. There are times where the Java ecosystem delivers something incredibly interesting (InvokeDynamic, Lambdas, Streams, Kotlin), and this episode is one of those! You may have heard it mentioned around the interwebs or conferences (this new GraalVM thing)… well, it’s here to stay and is propelling JVM languages to a whole new level of interoperatibility and performance!

So GraalVM at the very high-level view is a “Java Virtual Machine” (in reality there’s much more to it, but we can at least start there). It provides tons of interesting features, like the ability to not only compile Java/JVM languages, but also Javascript, LLVM Languages (like C++), Python, R (and is expanding to others), and more importantly, interoperatibility between all these languages.

But the bee’s knees (or the most interesting fact) is that GraalVM also have the “Native Image”, which allows you to completely bake in a Linux (more platforms coming) binary straight up from your source code. The Native Image doesn’t require Java to be installed, and you can start your application as you would any other Linux executable. The most impressive part? Startup times are incredibly fast!

So we have usually addressed tons of misinformed myths of the Java language like “It’s slow:” (No, not really), or “You can code more performant code in C++” (possibly, but you have to be an expert to squeeze more performance than the JVM’s JIT compiler). But one area that the claim has held true is that “Java has slow startup times”. And (it used to be) true! Because of the dynamic classloading that Java supports, it’s very hard for the JVM to startup fast. For long running applications this is usually not a problem, even so, for the new Cloud folks (and Lambdas, and AutoScaling Groups), fast startup time is a “thing”. And so, with GraalVM (with some caveats) we are conquering one of the last arguments against the JVM languages.

In all, THIS is the episode to listen this year. It’s exciting, new technology that we could really spin up and use. Let’s have fun programming again with GraalVM.

FOLLOW US JavaPubHouse on twitter! Where we will be sharing new tech news, and tutorials!



We thank DataDogHQ for sponsoring this podcast episode

DataDog Logo
Don’t forget to SUBSCRIBE to our cool NewsCast! Java Off Heap



Do you like the episodes? Want more? Help us out! Buy us a beer!


And Follow us! @javapubhouse and @fguime and @bobpaulin

Episode 77. Sql or NoSql, To Normalize or to Not Normalize… that (STILL) is the question

Episode 77. Sql or NoSql, To Normalize or to Not Normalize… that (STILL) is the question

So you may have thought about using NoSQL or a Document Database for taking care of you needs. But do you know why that might be not be a good (or a pretty bad idea?). Or you may have a Database that have been running fine, but it seems that you can’t work with it anymore? (Is it time to move to NoSql? Would it help?).

We dive into the “Why” would you choose Databases vs NoSQL Data Stores, or when to ditch your MongoDB and actually come back to MySQL. In our current time of “WebScale” and “CloudReady” we get bombarded by choices! (Mongo, Dynamo, MariaDB, ElasticSearch) and while some of the offerings are great, it might not mean that is the Right choice for what we need to store.

So take a listen as we explore normalization and the strength and weaknesses of relational data vs unstructured data.

We thank DataDogHQ for sponsoring this podcast episode

Don’t forget to SUBSCRIBE to our cool NewsCast!
Java Off Heap

 

Do you like the episodes? Want more? Help us out! Buy us a beer!

And Follow us! @javapubhouse
and @fguime and @bobpaulin

 

Episode 68. Clouding it up with Microsoft Service Fabric

Clouds are everywhere and are puffy! In this Sponsored Episode, we dive into one of the main prominent cloud providers out there (Microsoft), who is outreaching to us Java Developers! (gasp!). In this episode, the Microsoft Service Fabric team (with @mani_ramaswamy, @HuruliS and Raunak Pandya) takes us in a soup-to-nuts tour on how to get started with Azure’s service cloud, including what makes it different from others. Bob and I dive and explore how well would this work for us Java folk (and the answer is “very well”) taking questions from how to build and deploy cloud, to what native support is there is for us Java Folk .

 

We thank Microsoft’s Service Fabric team for sponsoring this podcast!

Don’t forget to SUBSCRIBE to our cool new NewsCast!
Java Off Heap

Do you like the episodes? Want more? Help us out! Buy us a beer!

And Follow us! @javapubhouse
and @fguime and @bobpaulin