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
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
1 Stunde 12 Minuten
vor 7 Monaten
1 Stunde 6 Minuten
vor 7 Monaten
57 Minuten
vor 8 Monaten
1 Stunde 5 Minuten
vor 8 Monaten
1 Stunde 13 Minuten
vor 8 Monaten
In Podcasts werben
Kommentare (0)