Urgent.News

What's breaking now, across thousands of outlets.

Tech

Fat jar vs layered jar; DevTools

Why your Spring Boot app is one runnable file You finish a Spring Boot service, run a single command, and a full web server starts up: java -jar app.jar No Tomcat to install first. No classpath to spell out by hand. No WEB-INF folder dropped into a separate application server. One file, one command, a running app that answers HTTP on a port. That single file is what this article is about. We will…

When you create a Spring Boot service, a single command compiles it into a runnable file, such as "java -jar app.jar". This file contains the web server, classpath, and application server all in one. The rest of this report will examine the contents of this file, why it is structured this way, and the two packaging options that determine how the app runs and ships: the fat jar and the layered jar. At the end, we'll discuss DevTools, which speeds up the development process.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

How to Add Offline Support to Your Web App (without hand-writing a service worker)

The full walkthrough: one config file, an auditable vanilla-JS service worker + client runtime generated for you, zero runtime dependencies — and a live demo you can test offline right now.

  • Swoff is a config-driven generator for service workers and client runtime
  • Run npx @swoff/cli init && npx @swoff/cli generate to set up offline support
  • Verify offline functionality in browser developer tools

WebSocket Telemetry at Scale: When One Process Isn't Enough

[ EXECUTIVE TEARDOWN // TL;DR ] In-memory broadcast only reaches the local process — multi-instance real-time needs a shared backplane (Redis pub/sub).

  • WebSocket telemetry scales using shared backplane like Redis pub/sub
  • Subscriptions narrowed into rooms reduce bandwidth and CPU
  • Trinity Architecture separates orchestration from payload-lean adapter

MongoDB Aggregation Pipelines: Stage Order Is the Win

[ EXECUTIVE TEARDOWN // TL;DR ] Put $match first and on indexed fields — every document eliminated early is one the rest of the pipeline never touches.

  • Order of stages in MongoDB aggregation pipelines significantly impacts performance.
  • $match stage first and indexed fields improve efficiency.
  • $lookup stage often most expensive; run after $match and $limit.

The 94% Decision: One Architecture Call That Made IntegrateX Feel Instant

[ EXECUTIVE TEARDOWN // TL;DR ] The near-fatal trap: JSON.stringify-ing React Flow nodes persists the view — 90%+ renderer state the client can reconstruct for free.

  • IntegrateX's architecture relied on JSON.stringify-ing React Flow nodes, causing large payloads.
  • Lossless, schema-aware Serialization Adapter reduced payloads by 94% round-trip.
  • Architectural decision led to instant saves, stable versioning, and UI redesigns.

More from Saturday 12 September →