同样标 5% + 50¢,19 美元订阅卖给德国用户,Paddle、Lemon Squeezy、Polar 每单手续费差出 0.45 美元
按 2026 年 10 月 14 日的官方定价页,对比 Paddle、Lemon Squeezy、Polar 三家代收平台和自接 Stripe 的费率与附加费,用一个卖给德国客户的 19 美元月订阅算出每单实际成本。
从 Java 与 Spring,到 AI 与开源。分享经得起实践的知识,和认真做技术的人一起成长。
按 2026 年 10 月 14 日的官方定价页,对比 Paddle、Lemon Squeezy、Polar 三家代收平台和自接 Stripe 的费率与附加费,用一个卖给德国客户的 19 美元月订阅算出每单实际成本。
印度七人小团队 CodedThemes 2015 年上架第一款自有产品,2016 年彻底放弃外包,2017 年推出第一款买断制后台模板,创始人自述现在月收入约 1.2 万美元。拆它的三渠道定价、GitHub 免费版获客,以及三次差点倒下时各自的应对。
用 Spring Boot 4.1.1 自带的 Jackson 3.1.5 重走 Baeldung 的多参数构造器示例:带 -parameters 时单构造器免注解、record 非规范构造器会被使用;关掉 -parameters 后几乎全部失败、接口返回 500。
512M 的容器里不配 JVM 参数,Spring Boot 的最大堆只有 128M;把 -Xmx 设得比容器上限大,进程会被直接 OOMKilled。用 Spring Boot 4.1.1 和 JDK 21 在 Docker 里把三种情况实测了一遍。
JEP 543 进入 Proposed to Target,结构化并发将在 JDK 28 不做改动直接定稿。用 JDK 28 EA build 19 和 Spring Boot 4.1.1 实测失败取消、超时、Joiner 竞速和 JSON 线程转储。
同一个 Spring Boot 4.1.1 项目在 JDK 21 与 JDK 25 上实测:JEP 491 之后 synchronized 不再钉住载体线程,ThreadLocal 当缓存在虚拟线程下失效,ScopedValue 不会自动穿过普通执行器,连接池成为新的瓶颈。
Selenium 4.51 的 Java 绑定里,ExpectedCondition 不再实现 Guava 的 Function 接口,把它当 Guava Function 用的代码会编译失败。实测 4.51.0 仍会通过 selenium-remote-driver 传递引入 Guava 33.7.2-jre。
Spring Security 7 用 @EnableMultiFactorAuthentication 把密码和一次性令牌变成两个必须同时具备的因子。本文在 Spring Boot 4.1.1 上搭了一套两步登录,用 MockMvc 测试和 curl 验证了只过一步进不去、令牌只能用一次。
Spring Framework 7 内置了 @Retryable 和 @ConcurrencyLimit,但 Spring Boot 4.1.1 不会自动开启,不加 @EnableResilientMethods 注解就静默失效。本文在 JDK 21/25 上实测 maxRetries 的真实调用次数、异常排除、自调用绕过代理,以及 BLOCK 与 REJECT 两种并发策略。
在 JDK 28 EA build 19 上用 Spring Boot 4.1.1 实测 jdk.incubator.json:webhook 接口解析与生成,并和 Jackson 3.1.5 对照重复 key、超长小数、字符串型数字三处行为差异。