Seize the deal!
Caching Best Practices
Imagine having a tool that can automatically detect if you are using JPA and Hibernate properly. Hypersistence Optimizer is that tool!
Welcome to a new issue of the High-Performance Java Persistence Newsletter in which we share articles, videos, workshops, and StackOverflow answers that are very relevant to any developer who interacts with a database system using Java.
The pick of this edition is this article, which talks about a hypothetical new database system that’s, as the author puts it, “embedded, immutable, syncable, and relational”, serving the purpose of building decentralized client-side applications that share data.
If you are using the MySQL JSON column type and need to encrypt some specific JSON attribute values, then this article explains how easily you can achieve this goal using JPA and Hibernate.
If you’re using MySQL 8, then this Percona article explains how you can tune the InnoDB checkpoint process using the
innodb_doublewrite_pages configuration properties.
Another great article is this one written by Kuba Łopuszański about locking in InnoDB. This is the first part of the series, so I’m looking forward to reading the second part as well.
If you’ve been using MySQL and now need to use PostgreSQL in a different project, then you should read this article which points out some differences between these two very popular relational database systems.
hbm2ddl.auto tool allows you to generate the database schema from the JPA and Hibernate entity mappings. While you’d normally use a tool like Flyway to manage the schema migrations, it doesn’t mean that the
hbm2ddl.auto tool is not useful. For more details about this topic, check out this article I wrote on my blog.
This week, I ran a Java version survey on Twitter, and over 4400 participants managed to cast their votes:
What @Java version are you using?— Vlad Mihalcea (@vlad_mihalcea) September 6, 2020
So, here are the conclusions:
I’m going to run three new online workshops in the upcoming two months.
The first one will be run on the 30th of September and is about Caching Best Practices and covers database caching, application-level cache systems, data synchronization, CDC (Change Data Capture), and the Hibernate second-level cache mechanism. If you’re interested in these topics, then you should definitely join in.
The next one is a 4-hour High-Performance SQL online workshop that will run on the 6th of October via Voxxed Days Ticino.
The last one is a 12-hour High-Performance SQL online workshop that is organized by Bouvet Norway and starts running on the 28th of October.
There are many social media platforms, but for me, Twitter is the one I like best. Here are the best tweets I posted since the last newsletter:
If I hadn't failed a job interview at Amazon in 2015, I wouldn't have started my own business, focused on helping others get the most out of their DBs.— Vlad Mihalcea (@vlad_mihalcea) September 3, 2020
Failing an interview is harsh, but it's not an end of the world. It can also be a turning point in your career.
Just because you are a back-end developer, it doesn't mean you cannot come up with a beautiful UI design. pic.twitter.com/cqcdu2eSrU— Vlad Mihalcea (@vlad_mihalcea) September 8, 2020
The DB is the inevitable destiny of an HTTP request.— Vlad Mihalcea (@vlad_mihalcea) September 7, 2020
Pro tip: If you want to become a better software developer, you should start answering questions on @StackOverflow.— Vlad Mihalcea (@vlad_mihalcea) August 31, 2020
Have you ever noticed that chefs always keep their kitchen clean while cooking?— Vlad Mihalcea (@vlad_mihalcea) September 5, 2020
That's what developers should do with their project code. Keep it clean while developing new features.
If you like this newsletter,
you are going to love the next episodes!
The following StackOverflow answers have been trending over the past two weeks: