Java Web Weekly, Issue 154 – Java网络周刊,第154期

最后修改: 2016年 12月 8日


1. Spring and Java


>> Feeding Spring Boot metrics to Elasticsearch []

After low level system data, the next family of metrics you want to start tracking and monitoring are JVM level metrics. Here’s a good way to go it with the ELK stack.


>> Reflection vs Encapsulation – Stand Off in the Java Module System []

A quick and practical intro to the various mechanism that are going to power the module system in Java 9.

快速而实用地介绍了将为Java 9中的模块系统提供动力的各种机制。

>> Creating Maps With Named Lambdas []

Interesting way to create a Map.


>> Spring Boot and Thymeleaf: Reload templates and static resources without restarting the application []

Years back, we always had to restart the server/redeploy the app for minor changes. Of course that’s no longer the case now – which has a significant impact on our speed of rolling work out.


If you’re working with Thymeleaf in a Boot app – here are a couple of ways to do exactly that – changes with no restarts.


>> Hibernate Envers – Getting started []

There are a few different ways to slice implementing audit logic with Hibernate – and Envers is definitely an interesting solution to the problem.


>> Making Spring Boot application run serverless with AWS []

Very interesting writeup showing how to transition a Boot application to run servlerless on AWS. I definitely need to give that a try to get a better understanding of what it can do.


Also worth reading:

Webinars and presentations:


Time to upgrade:


2. Technical


>> Time in distributed systems []

As I started to split my own implementations and very carefully joined the microservices bandwagon (or train) – I very quickly found that I need to relax my definition of time for each service.


That is if I wanted to be able to trace a single request through the system and still make sense of it.


This is a quick writeup all about that.


>> Data Science up and down the Ladder of Abstraction []

A long piece worth reading if you’re passionate about data science, Clojure – or both.


>> Sharing Experiences from a Microservices Journey []

I’ve been doing a lot of CQRS, Event Sourcing and microservices in the past couple of years, so naturally this article was quite an interesting read – well worthy if you’re doing any of these.


>> How Chrome’s buggy content security policy implementation cost me money []

Beyond the “money” thing, there’s a lot to glean from this piece about Content Security Policies and the way browsers chose to implement CSPs.

除了 “钱 “的问题,从这篇关于内容安全策略和浏览器选择实施CSP的方式的文章中,我们可以得到很多信息。

Worth understanding if you’re building stuff for the web.


Also worth reading:

3. Musings


>> One year as a Developer Advocate []

Hibernate should have obviously done this a long time ago 🙂

Hibernate显然早就应该这样做了 🙂

>> Reactive Streams and the Weird Case of Back Pressure []

If you’re working with and ingesting a large volume of data, back-pressured async stream processing is a godsend.


This is a good intro to how the standard came to be – and a very interesting read.


>> The Journeyman Idealist: Architect of Programmer Paycuts []

This writeup is definitely good for some perspective on the way we all work and creating value. Some solid podcasts recommended in here as well 🙂

这篇文章对我们所有人的工作方式和创造价值的看法绝对是好的观点。这里也推荐了一些可靠的播客 🙂

>> Rewrite or Refactor? []

To be or not to be? That was THE question for a long time, but no longer 🙂

To be or not to be?这是很长一段时间内的问题,但不再是🙂。

Now, it’s to refactor or rewrite – mainly because that decision has the potential to literally put a business under.


>> Clean Code: what is it? []

I always find that, no matter how much I think I understand a concept, I don’t fully grok it until I have to sit down and actually define it. It always turns out to be more difficult than I expect it to be.


Also worth reading:


4. Comics


And my favorite Dilberts of the week:


>> The Ugly Truth []

>> You don’t know how low my ambitions are []

>> Are we polite now? []

5. Pick of the Week

5 本周精选

>> Worrying is self-fulfilling; what to do instead []