How Caffeine Cache Happened

How Caffeine Cache Happened

A conversation with Ben Manes about Java, Self-made Stacks and Caffeine Cache
1 Stunde 20 Minuten
Podcast
Podcaster
Java, Serverless, Clouds, Architecture and Web conversations with Adam Bien

Beschreibung

vor 4 Jahren
An airhacks.fm conversation with Ben Manes (@benmanes) about: TRS
80, Tandy RadioShack 80 computer, never push the red button,
playing Reader Rabbit on 287, the fascination with hardware, the
experimentation with water cooling and thermopads, learning C++ and
Java at the University in Chicago, starting with Java 1.4 at
school, building corporate travel systems with Java 5, the six hour
interview at Google with a binary search tree, working on CRM tool
at Google, building an enterprise version of iGoogle in Java and
GWT, using Guice and GWT GIN to implement iGoogle.next, using a
perforce monorepo, perforce was replaced by internal system called
"paper", using blaze and bezel build system, bezel is more
distributed, one build file per package, starting at a logistics
company with Java 15, the jetty, JAX-RS, keycloak,RESTEasy, jooq
and google's guice, starting to write a cache in 2008, using
memcached and Java Message System (JMS) for synchronization, Java 5
and the Concurrent Linked HashMap / LRU, building Google Guava
cache, Concurrent HashMap was used by Apache Cassandra, Google's
MapMaker is predecessor to Guava Cache, Caffeine work started in
2008, EHCache was not concurrent back then, Java 5 concurrent
HashMap didn't scale well, Java 5 regions in HashMap were too big,
there were too many entries per segment, Java 8 uses small hash
bins and scales better, Caffeine builds on top of Java 8
ConcurrentHashMap, LRU and every reads is a write, cache policy can
be lossy, using dynamically growing data structures, Caffeine uses
Java Collections, Caffeine looks like a HashMap, Caffeine adapts
automatically to the read-, write-, or mixed workload, Caffeine's
configuration is descriptive, refresh policies, cache loader,
expiration, asynchronous behavior, listeners, soft- and weak
references were supposed to be the solution to everything, hit
rates monitoring, micrometer, dropwizard, prometheus monitoring
adapters are available, reasearch papers tend to lie, working with
cockroachDB committers, Infinispan uses Caffeine, the bias against
pre-made stack

Ben Manes on twitter: @benmanes, Ben's GitHub account:
github.com/ben-manes

Weitere Episoden

Not Your Java Package Handler
1 Stunde 12 Minuten
vor 7 Monaten
From Punch Cards (and Tapes) to Java
1 Stunde 6 Minuten
vor 7 Monaten
Injection Without Reflection
57 Minuten
vor 8 Monaten
About Amazon Corretto
1 Stunde 5 Minuten
vor 8 Monaten

Kommentare (0)

Lade Inhalte...

Abonnenten

15
15