Pragmatica Aether:让Java回归托管环境
核心观点
当前Java微服务实践(胖JAR、Docker、Kubernetes)违背了Java的设计初衷——应用应运行在托管环境中,由运行时管理基础设施,而业务逻辑只需关注自身。
解决方案
Pragmatica Aether是一个分布式运行时,通过以下设计实现分离:
@Slice接口:应用只定义业务逻辑接口和实现,无需关注HTTP、服务发现、重试等基础设施。
内置共识KV存储:基于Rabia协议,无需外部配置服务。
内置构件库:DHT分布式存储,无需Nexus/Artifactory。
类加载隔离:每个Slice独立ClassLoader,避免依赖冲突。
声明式部署:TOML文件定义期望状态,一键部署。
容错与扩展
50%规则:少于半数节点故障时系统仍正常。
自动恢复:节点故障后自动替换,无需人工干预。
两级扩展:Slice实例扩展(毫秒级)与节点扩展;三层次决策系统(决策树、TTM预测、LLM规划),其中Tier 1保证核心生存。
开发体验
三种环境(Ember单进程、Forge集群模拟、Aether生产)使用相同代码,无需修改。CLI、Web仪表盘、Prometheus指标集成完善。
迁移路径
可逐步将遗留系统包装为@Slice,采用绞杀者模式,无需重写。新项目可直接创建细粒度Slice,实现按需扩展。
结论:让Java回归其设计本质——托管运行时管理一切,应用只负责业务逻辑。