Product Manager
Bilgin Ibryam
Bilgin Ibryam is a former product manager and architect at Red Hat. He is a regular blogger, open source evangelist, speaker, and the author of Camel Design Patterns and co-author of Kubernetes Patterns books. He has over a decade of experience in designing and building scalable and resilient distributed systems. In his day-to-day job, Bilgin works with customers from all sizes and locations, helping them to be successful with adoption of emerging technologies through proven and repeatable patterns and practises. His current interests include event-driven systems, blockchains, cloud-native and serverless. Follow him @bibryam for regular updates on these topics.
Bilgin Ibryam's contributions
Fighting Service Latency in Microservices with Kubernetes
Bilgin Ibryam
CPU and network speed have increased significantly in the last decade, as well as memory and disk sizes. But still one of the possible side effects of moving from a monolithic architecture to Microservices is the increase in the service latency. Here are few quick ideas on how to fight it using Kubernetes. It is not the network In the recent years, networks transitioned to using protocols that are more efficient and moved from 1GBit to 10GBit and even to...
It takes more than a Circuit Breaker to create a resilient application
Bilgin Ibryam
Topics such as application resiliency, self-healing, antifragility are my area of interest. I've been trying to distinguish, define, and visualize these concepts, and create solutions with these characteristics. Software characteristics"> However, I notice repeatedly, that there are various conference talks about resiliency, self-healing, and antifragility and often they lazily conclude that Netflix OSS Hystrix is the answer to all of that. It is important to remember that conference speakers are overly optimistic, wishful thinkers, and it takes more than a...
New Distributed Primitives for Developers
Bilgin Ibryam
Object-Oriented Primitives (in-process primitives) As a Java developer, I'm well familiar with object-oriented concepts such as class, object, inheritance, encapsulation, polymorphism, etc. In addition to the object-oriented concepts, I'm also well familiar with the Java runtime, what features it provides, how it manages my applications, what would be the life cycle of my object and the application as a whole, etc. And for over a decade, I've used all the primary tools, primitives, and building blocks as a developer to...
Microservices Deployments Evolution
Bilgin Ibryam
Microservices Are Here, to Stay A few years back, most software systems had a monolithic architecture and slow release cycle. In the recent years, there is a clear move towards Microservices architecture, which is optimized for scalability, elasticity, failure, and speed of change. This trend has been further enforced by the adoption of cloud and containers, which also enabled practices such as DevOps. Trends in the IT Industry All these changes have resulted in a growing number of services to...
Spring Cloud for Microservices Compared to Kubernetes
Bilgin Ibryam
Spring Cloud and Kubernetes both claim to be the best environment for developing and running Microservices, but they are both very different in nature and address different concerns. In this article we will look at how each platform is helping in delivering Microservice based architectures (MSA), in which areas they are good at, and how to take best of both worlds in order to succeed in the Microservices journey. Background Story Recently I read a great article about building Microservice...
From Fragile to Antifragile Software
Bilgin Ibryam
One of my favourite books is Antifragile by Nassim Taleb where the author talks about things that gain from disorder. Nacim introduces the concept of antifragility which is similar to hormesis in biology or creative destruction in economics and analyses it charecteristics in great details. If you find this topic interesting, there are also other authors who have examined the same phenomenon in different industries such as Gary Hamel, C. S. Holling, Jan Husdal. The concept of antifragile is the...
Create Resilient Camel applications with Hystrix
Bilgin Ibryam
Apache Camel is a mature integration library (over 9 years old now) that implements all the patterns from Enterprise Integration Patterns book, but Camel is not only an EIP implementation library, it is a modern framework that constantly evolves, adds new patterns and adapts to the changes in the industry. Apart from tens of connectors added in each release, Camel goes hand-in-hand with the new features provided by the new versions of Java language itself and other Java frameworks. With...
Scalable Microservices through Messaging
Bilgin Ibryam
Microservices are everywhere nowadays, and so is the idea of using service choreography (instead of service orchestration) for microservices interactions. In this article I describe how to set up service choreography using ActiveMQ virtual topics, which also enables scalable event based service interactions. Service Interaction Styles There are two main types of service interaction: synchronous and asynchronous. With synchronous interactions, the service consumer makes a request and blocks until the operation completes and a response is received. The HTTP protocol...
Fighting Service Latency in Microservices with Kubernetes
Bilgin Ibryam
CPU and network speed have increased significantly in the last decade, as well as memory and disk sizes. But still one of the possible side effects of moving from a monolithic architecture to Microservices is the increase in the service latency. Here are few quick ideas on how to fight it using Kubernetes. It is not the network In the recent years, networks transitioned to using protocols that are more efficient and moved from 1GBit to 10GBit and even to...
It takes more than a Circuit Breaker to create a resilient application
Bilgin Ibryam
Topics such as application resiliency, self-healing, antifragility are my area of interest. I've been trying to distinguish, define, and visualize these concepts, and create solutions with these characteristics. Software characteristics"> However, I notice repeatedly, that there are various conference talks about resiliency, self-healing, and antifragility and often they lazily conclude that Netflix OSS Hystrix is the answer to all of that. It is important to remember that conference speakers are overly optimistic, wishful thinkers, and it takes more than a...
New Distributed Primitives for Developers
Bilgin Ibryam
Object-Oriented Primitives (in-process primitives) As a Java developer, I'm well familiar with object-oriented concepts such as class, object, inheritance, encapsulation, polymorphism, etc. In addition to the object-oriented concepts, I'm also well familiar with the Java runtime, what features it provides, how it manages my applications, what would be the life cycle of my object and the application as a whole, etc. And for over a decade, I've used all the primary tools, primitives, and building blocks as a developer to...
Microservices Deployments Evolution
Bilgin Ibryam
Microservices Are Here, to Stay A few years back, most software systems had a monolithic architecture and slow release cycle. In the recent years, there is a clear move towards Microservices architecture, which is optimized for scalability, elasticity, failure, and speed of change. This trend has been further enforced by the adoption of cloud and containers, which also enabled practices such as DevOps. Trends in the IT Industry All these changes have resulted in a growing number of services to...
Spring Cloud for Microservices Compared to Kubernetes
Bilgin Ibryam
Spring Cloud and Kubernetes both claim to be the best environment for developing and running Microservices, but they are both very different in nature and address different concerns. In this article we will look at how each platform is helping in delivering Microservice based architectures (MSA), in which areas they are good at, and how to take best of both worlds in order to succeed in the Microservices journey. Background Story Recently I read a great article about building Microservice...
From Fragile to Antifragile Software
Bilgin Ibryam
One of my favourite books is Antifragile by Nassim Taleb where the author talks about things that gain from disorder. Nacim introduces the concept of antifragility which is similar to hormesis in biology or creative destruction in economics and analyses it charecteristics in great details. If you find this topic interesting, there are also other authors who have examined the same phenomenon in different industries such as Gary Hamel, C. S. Holling, Jan Husdal. The concept of antifragile is the...
Create Resilient Camel applications with Hystrix
Bilgin Ibryam
Apache Camel is a mature integration library (over 9 years old now) that implements all the patterns from Enterprise Integration Patterns book, but Camel is not only an EIP implementation library, it is a modern framework that constantly evolves, adds new patterns and adapts to the changes in the industry. Apart from tens of connectors added in each release, Camel goes hand-in-hand with the new features provided by the new versions of Java language itself and other Java frameworks. With...
Scalable Microservices through Messaging
Bilgin Ibryam
Microservices are everywhere nowadays, and so is the idea of using service choreography (instead of service orchestration) for microservices interactions. In this article I describe how to set up service choreography using ActiveMQ virtual topics, which also enables scalable event based service interactions. Service Interaction Styles There are two main types of service interaction: synchronous and asynchronous. With synchronous interactions, the service consumer makes a request and blocks until the operation completes and a response is received. The HTTP protocol...