How (not) to impress a potential CTO

The other day I was at an event for start-ups and entrepreneurs – no, not the “Agile for Startups” event I’m speaking at in a couple of weeks, for once I was in the audience. Half way through the organisers decided to do a type of speed networking – so we could get to know each other, find employees, find ...

Read More »

How to Handle the Problem of Too Many Classes

During nearly every presentation in which I explain my view of object-oriented programming, there is someone who shares a comment like this: “If we follow your advice, we will have so many small classes.” And my answer is always the same: “Of course we will, and that’s great!” I honestly believe that even if you can’t consider having “a lot ...

Read More »

Using UAA OAuth2 authorization server – client and resource

java-interview-questions-answers

In a previous post I had gone over how to bring up an OAuth2 authorization server using Cloud Foundry UAA project and populating it with some of the actors involved in a OAuth2 Authorization Code flow. I have found this article at the Digital Ocean site does a great job of describing the OAuth2 Authorization code flow, so instead of rehashing what is ...

Read More »

Using sun.misc.Unsafe in Java 9

The Java 9 EA version is out and we can now see how to use sun.misc.Unsafe. I led the public campaign to retain access to it in Java 9 which was ultimately successful, leading to the amendments to JEP 260. So, how did things end up? Getting Set Up First you need to download Java 9 EA. For an IDE I ...

Read More »

Microservices in the Chronicle World – Part 5

In this part we look at putting a micro service together as a collection of services, and consider how we can evaluate the performance of these services. We introduce JLBH (Java Latency Benchmark Harness) to test these services. Building a Service Wrapper. For more complex services, we use an EventLoop in Chronicle Threads to manage multiple concurrent tasks. In this ...

Read More »

Microservices in the Chronicle world – Part 4

A common issue we cover in our workshops is, how to restart a queue reader after a failure. The answer is not a simple as you might think.               Tip We do an on-site one week workshop to help kick start a new project, with a look at ensuring the infrastructure has a good ...

Read More »

Microservices in the Chronicle World – Part 3

One of the problems with using microservices is performance. Latencies can be higher due to the cost of serialization, messaging and deserialization, and this reduces throughput. In particular, poor throughput is a problem because the reason we are designing a scalable system is to increase throughput. In Part 2 we saw how we can take a component and add a transport ...

Read More »

Microservices in the Chronicle world – Part 2

In this part we look at turning a component into a service. In Part 1, we looked at how we can easily create and test components which expect asynchronous messages in and produce asynchronous messages out. However, how do we turn this into a service? Turning our components into a service. The key thing which is missing from our components is ...

Read More »