Profile cover photo
Profile photo
Anton Kharenko
Anton's interests
View all
Anton's posts

Post has attachment
SWIM Distributed Group Membership Protocol
Overview Many distributed applications require reliable and scalable implementation of membership protocol. Membership protocol provides each process (“member”) of the group with a locally-maintained list of other non-faulty processes in the group. The prot...

Post has attachment
Time, Clocks and Ordering in a Distributed System
A distributed system consist of a collection of distinct processes which are spatially separated, and which communicate via messaging. Here considered the concept of events ordering in a distributed systems. First, discussed the partial ordering defined by...

Post has attachment
Monolithic vs. Microservices Architecture
Monolithic Architecture When developing a server-side application you can start it with a modular hexagonal or layered architecture which consists of different types of components: Presentation - responsible for handling HTTP requests and responding with ei...

Post has attachment
Netty Best Practices Distilled
Pipeline optimizations . Write do not make syscalls. Flush makes syscalls to flush out to the socket all previous writes. Limit flushes as much as possible, but also limit writes as well since it need to traverse pipeline. GS-Pressure . Use VoidChannelPromi...

Post has attachment
Scalable and Efficient Distributed Failure Detectors
Failure detectors are a central component in fault-tolerant distributed systems running over unreliable asynchronous networks e.g., group membership protocols, supercomputers, computer clusters etc. The ability of the failure detector to detect process fail...

Post has attachment
A Gossip-Style Failure Detector
Failure Detector is a valuable component for system management, replication, load balancing, group communication services, various consensus algorithms and many other distributed services which rely on reasonably accurate detection of failed members. Algori...

Post has attachment
Quality of Service of Failure Detectors
Basic Quality of Service (QoS) properties of Failure Detector are: How fast it detects failure How well it avoids false detection Assuming that process crash is permanent or in other words recovered processes will be the new identities. Primary QoS metrics ...

Post has attachment
Notes on the Twelve-Factor App
In the modern era, software is commonly delivered as a service: called web apps, or software-as-a-service. The twelve-factor app is a methodology for building software-as-a-service apps proposed by Heroku PaaS . 1. Codebase. One codebase tracked in revision...

Post has attachment
Notes on the Criteria for Decomposing Systems into Modules
Benefits from decomposing system into modules: Managerial - independent development Flexibility - easier to change product Comprehensibility - easier to understand product Criteria for splitting system into modules: BAD: Each module corresponds to separate ...

Post has attachment
Notes on Fallacies of Distributed Computing
Above described assumptions which architects and designers of distributed systems are likely to make and which prove to be wrong in the long run: The network is reliable . The network is unreliable and we need to address possible failure scenarios. Latency ...
Wait while more posts are being loaded