Solon 是一个更现代感的应用开发框架,轻量、开放生态型的。支持 Web、Data、Job、Remoting、Cloud 等任何开发场景。
目前有近130个生态插件,含盖了日常开发的各种需求。
@Controller public class DemoController{ @Socket @Mapping("/hello") public String hello(Context ctx){ if(ctx.session("user") == null){ ctx.sessionSet("user", "noear"); } return ctx.session("user"); } }
public class DemoApp { public static void main(String[] args) { Solon.start(DemoApp.class, args, app -> { app.listenBefore(new ListenerEmpty() { @Override public void onOpen(Session session) { //修改ws的监听路径 if (session.path().startsWith("/xx/")) { session.pathNew(session.path().substring(4)); } } }); }); } }
@Slf4j public class CloudJobInterceptorImpl implements CloudJobInterceptor { @Override public void doIntercept(Job job, CloudJobHandler handler) throws Throwable { long start = System.currentTimeMillis(); try { handler.handle(job.getContext()); } catch (Throwable e) { //记录带标签的日志 TagsMDC.tag0("job"); TagsMDC.tag1(job.getName()); log.error("{}", e); throw e; //别吃掉 } finally { //记录一个内部处理的花费时间 long timespan = System.currentTimeMillis() - start; CloudClient.metric().addMeter(Solon.cfg().appName(), "job", timespan); } } }
//CloudEventInterceptor 与 CloudJobInterceptor 起到类型的作用
评论删除后,数据将无法恢复
Solon 1.6.36 发布,更现代感的应用开发框架
相对于 Spring Boot 和 Spring Cloud 的项目
关于 Solon
Solon 是一个更现代感的应用开发框架,轻量、开放生态型的。支持 Web、Data、Job、Remoting、Cloud 等任何开发场景。
目前有近130个生态插件,含盖了日常开发的各种需求。
本次主要更新
进一步了解 Solon