那个号称对标 Spring的国产框架 Solon,到底行不行?

Solon 框架详解(二)- Solon的核心 Solon的核心 在上篇中我们成功运行了一个简单的web应用;本篇将对它的启动过程、扩展体系和应用属性配置进行介绍。 (一)XApp.start(source, args, builder) 内部执行过程(即Solon的启动过程) 实例化 XApp.global() 加载应用属性配置 加载扩展文件夹 扫描插件并排序记录(插件也可叫扩展组件) 运行builder函数(如果它不为null) 运行插件 扫描source目录并加载java bean 加载渲染关系 完成 了解这个过程非常之重要,尤其是有兴致开发 阅读详情

01 引言

SpringBoot借助Spring生态占据了Java开发的半壁江山。面试的时候,可能总会碰到"SpringBoot为什么启动慢?"、“怎么提高SpringBoot的并发”等。既然被问,总会存在类似的问题。

今天发现一款国产的开元框架,号称是新一代Java 企业级应用开发框架,以快速、小巧、简洁著称:Solon。

02 简介

Solon 框架由杭州无耳科技有限公司(下属 Noear 团队)开发并开源。是新一代,Java 企业级应用开发框架。从零开始构建,有自主的标准规范与开放生态。近40万行代码。

  • 追求: 快速、小巧、简洁
  • 提倡: 克制、高效、开放

主要特性:

  • 更高的计算性价比:并发高 700%(techempower);内存省 50%
  • 更快的开发效率:代码少;入门简单;启动快 10倍(调试快)
  • 更好的生产与部署体验:打包小 90%
  • 更大的兼容范围:非 java-ee 架构;同时支持 java8 ~ java25,graalvm native image

官网地址:https://solon.noear.org/article/learn-quickstart

03 最佳实践

3.1 安装插件

习惯了SpringBoot的脚手架,我们也试试Solon的脚手架,需要我们安装插件。

插件地址:https://plugins.jetbrains.com/plugin/21380-solon

安装完成之后,

这就可以和SpringBoot一样,创建Moudle了。

搭建Web项目需要选择Web的脚手架。

3.2 引入依赖

选择好脚手架,依赖就会自动引入:

<!-- Solon Web Servlet -->
<dependency>
    <groupId>org.noear</groupId>
    <artifactId>solon-lib</artifactId>
</dependency>

<dependency>
    <groupId>org.noear</groupId>
    <artifactId>solon-server-jetty</artifactId>
</dependency>

或者直接引入

<!-- Web 快速开发集成包(含 solon-core + 一个 HTTP 服务器) -->
<dependency>
    <groupId>org.noear</groupId>
    <artifactId>solon-web</artifactId>
</dependency>

3.3 控制层

启动类会自动生成:

@SolonMain
public class App {
    public static void main(String[] args) {
        Solon.start(App.class, args);
    }
}

和SpringBoot启动类非常类似。

@Controller
public class FooController {

    @Inject
    private UserService userService;

    @Get
    @Mapping("/hello")
    public String hello() {
        return "hello Solon";
    }

    @Get
    @Mapping("/getUser")
    public User getUser() {
        return userService.getUser();
    }

    @Get
    @Mapping("/path/{random}")
    public String getPath(@Path("random") String random) {
        return "path: " + random;
    }
}

调用服务通过@Inject注解注入服务。

3.4 服务层

public interface UserService {
    User getUser();
}

// -------------------------------------
    
@Component
public class UserServiceImpl implements UserService {
    @Override
    public User getUser() {
        return new User(new Random().nextLong(), "ws", "developer", 18   );
    }
}

服务层通过@Component标记

3.5 测试

启动确实很快:

整体感觉还是不错的,老铁们,你们觉得呢?

04 小结

以上的demo只是简单的Web测试,Solon的生态还是很完全的,还有很多,感兴趣的可以去试试。

【DRAM存储器五十一】LPDDR5介绍--DFE与Pre-Emphasis 简述LPDDR5的DFE和预加重应用设置 阅读详情

相关推荐

双臂复合机器人眼在手外标定实战:从原理到D435标定流程详解

本文详细解析了双臂复合机器人中眼在手外标定的核心原理与实战流程。通过阐述坐标系转换与AX=XB方程,重点介绍了使用Intel RealSense D435相机进行标定的完整步骤,包括环境搭建、数据采集、计算与验证,并提供了关键的避坑指南,帮助工程师实现相机与机械臂基座间的精确坐标对齐。

weixin_29100927的博客 449

solon是什么框架

Solon框架吸取了Spring Boot和Javalin的优点,同时避免了一些繁重的设计,使得它支持HTTP、WebSocket和Socket三种通信信号的接入。1. 轻量快速:Solon框架启动迅速,占用资源少,对于一个普通的MVC项目,Solon的启动速度比Spring Boot快,内存占用也更小。6. 插件式扩展:Solon强调插件式扩展,支持多种插件,如启动插件、扩展插件、序列化插件等,能够适应不同的应用场景。4. 配置灵活:Solon支持注解和手动配置两种模式,允许开发者按需自由操控。

leijmdas的专栏 1536

基于资源预测的Agent弹性伸缩:在成本与响应延迟间寻找最佳平衡点

手动伸缩:完全由运维人员人工调整副本数或服务器数量,效率极低,现在基本只用于极小规模的业务。反应式伸缩:基于当前实时监控指标触发伸缩规则,比如CPU利用率超过70%就加2个副本,是目前应用最广泛的方案,典型代表是K8s HPA、KEDA。预测式伸缩:基于历史时序数据预测未来的负载,提前进行伸缩,解决反应式伸缩的滞后性问题,典型代表是AWS Predictive Scaling、阿里云预测式HPA。智能Agent伸缩。

SuperAGI2025 134

什么是 Solon

Solon 是一个用于开发 Java 微服务的轻量级框架。它是一个致力于简化微服务开发的框架,提供了诸如 IOC(控制反转)、AOP(面向切面编程)、MVC(模型-视图-控制器)等常用的开发功能。Solon 的设计理念是简单、轻量、易于扩展,并且对开发者友好。它不同于 Spring 等重量级框架,Solon 更加注重轻量和高效,适用于中小型应用程序或需要高性能的场景。通过以上的介绍和示例,可以看出 Solon 是一个功能强大、灵活高效的 Java 微服务框架。

孔乙己的博客 2144

Modscan32连接上了却没数据?一文拆解所有报错(从“Device NOT CONNECTED”到“Checksum Error”)

本文深入解析Modscan32连接异常问题,从状态栏报错到数据异常,提供系统化的诊断思路和解决方案。涵盖物理层问题、配置参数错位、端口占用冲突等常见故障,帮助工程师快速定位和解决Modbus通信中的各类错误。

weixin_30384217的博客 397

Modelsim10.5_se安装(Win11)

modelsim是Mentor公司开发的优秀的HDL语言仿真软件。它能提供友好的仿真环境,采用单内核支持VHDL和Verilog混合仿真的仿真器。它采用直接优化的编译技术、Tcl/Tk技术和单一内核仿真技术,编译仿真速度快且编译的代码与平台无关。

m0_51186267的博客 9913

不妨试试更快更小更灵活Java开发框架Solon

SpringBoot启动速度慢、打包体积大、内存要求高等不适合某些轻量级高并发的业务场景,在云原生百家争鸣的时代,解决上述问题国人开源Solon框架为Java轻量开发框架,官网全中文文档学习成本低。本篇从Solon简介开始,对比官网提供各项性能数据,通过官网提供文档和诸多开发示例代码动手实操演示的Solon Web、Solon Myabtis-Plus、Solon WebSocket、Solon Remoting RPC、Solon Cloud Nacos代码使用和效果展示。

itxiaoshen博客 4948

Ubuntu22.04下3分钟搞定GitHub加速:SwitchHosts+小鱼工具保姆级配置指南

本文提供Ubuntu22.04下快速解决GitHub下载超时问题的保姆级教程,通过SwitchHosts图形化工具和小鱼一键换源工具实现高效加速。详细步骤包括环境准备、工具安装配置及验证方法,帮助开发者轻松优化GitHub访问速度,提升工作效率。

weixin_29258297的博客 564

Solon 框架, maven 单月下载量突破 200 万了!

Java 新的生态型应用开发框架:更快、更小、更简单。 启动快 5 ~ 10 倍;qps 高 2~ 3 倍;运行时内存节省 1/3 ~ 1/2;打包可以缩到 1/2 ~ 1/10;同时支持 jdk8, jdk11, jdk17, jdk20, graalvm native image。

向往自由的少年!(我是一个少年!!!) 589

YOLOv13涨点改进| CVPR 2026 |独家创新首发、主干改进篇 |利用RIS-PiDiNet主干让YOLOv13更加强大!适合遥感目标检测、小目标检测、旋转目标检测,变化检测,图像分割涨点

🔥本文提出了一种改进的RIS-PiDiNet主干网络,通过引入几何先验构建几何一致性检测器,显著提升了模型在任意方向、结构规则目标场景下的检测性能。包含两个核心模块:S-PDC利用极谐变换的谐波核建模目标结构对称性,RIS-PDC通过SO(2)群平均实现旋转不变性。网络采用基于RIS-block的主干结构并融合轻量级LBP特征,增强了细粒度结构表达能力。实验表明,该方法特别适用于遥感和复杂几何分布场景,能有效提升目标检测的鲁棒性和精度。文章还详细介绍了如何将RIS-PiDiNet集成到YOLOv13框架

Ai缝合怪、助力小伙伴高效发论文 90

PointNet++改进策略 :模块改进 | x-Conv | PointCNN, 结合局部结构与全局排列提升模型性能

这篇论文介绍了一种名为PointCNN的方法,旨在从点云(point cloud)数据中学习特征。传统卷积神经网络(CNN)在处理规则网格数据(如图像)时非常有效,但由于点云是无序且不规则的,直接在其上应用卷积操作会导致形状信息丢失,并对点的排列顺序敏感。为了解决这一问题,论文提出了一种X-Conv操作。该方法通过学习一种来重新排列点云中的点并加权输入特征。然后,将典型的卷积操作应用于转换后的特征。这种方法将传统的 CNN 扩展到点云特征学习,并命名为PointCNN。

u012901740的博客 2300

那个号称“对标 Spring“的国产框架 Solon,到底行不行?

Solon 不是 Spring 的替代品,它是 Java 后端框架的——如果你对启动时间、内存占用、性能有极致要求,或者你做的是云原生、IoT、Edge Computing(边缘计算),Solon 就是你现在最该立刻上手的框架。写了 8 年后端,从 SSH 到 SSM 再到 Spring Boot,我见过太多“国产替代”的噱头。简单、极致、零废话。2026 年的今天,它已经不是“要不要试试”的问题,而是“再不学就落后”的节点。最后,给你一个行动指令:— 让更多人看到国产框架的硬实力。

qq_56055938的博客 1004

Lumerical 教程目录,说明及个人感悟(共计138篇,持续更新中)

Lumerical---教程说明及个人感悟

u011699626的博客 1万+

Solon浅体验

Solon框架是Java “生态型”应用开发框架:克制、简洁、高效、开放、生态。 并发高 300%;内存省 50%;启动快 10 倍;打包小 90%;同时支持 java8 ~ java22, native 运行时。

沉迷写代码的程序猿的博客 1506

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Solon内存马构造

发现最终是调用org.noear.solon.core.route.RouterDefault#add(java.lang.String, org.noear.solon.core.handle.MethodType, int, org.noear.solon.core.handle.Handler)去添加。Solon是Java “新的”应用开发框架,类似Spring boot ,号称Java “纯血国产”应用开发框架,面向全场景的 Java 应用开发框架:克制、高效、开放、生态。

2401_83799022的博客 1143

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Java AI 框架三国杀:Solon AI vs Spring AI vs LangChain4j 深度对比

测试环境没有绝对的王者,只有最适合场景的框架。

Aw8eZ6Vw4的博客 176

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

框架选型不迷路:用可复现验证避开“史上最牛”陷阱

在技术开发中,框架选型始终是影响项目稳定性与交付效率的关键决策。面对社区中“吊打一切”的极端宣传,开发者更需要回归技术本质,通过可复现的压测实验和系统化的评估维度来判断框架的真实价值。从性能对比到生态成熟度,从团队学习成本到可观测性,成熟的选型方法应当覆盖需求约束、工程成本与长期维护性。本文以Rust服务端框架与Java Web生态的Spring Boot、若依、Solon为例,展示了如何设计最小压测项目、解读压测数据、规避常见技术陷阱,并给出可落地的框架评估清单。掌握这套方法,开发者就能在众多技术方案中做

weixin_34274029的博客 380

2020-12-28

博客园Logo 首页 新闻 博问 专区 闪存 班级 代码改变世界 搜索 注册 登录 返回主页 刘西东 博客园 首页 新随笔 联系 订阅 管理随笔 - 40 文章 - 0 评论 - 5 Solon 特性简集,相较于 Springboot 有什么区别? Solon 是一个类似Springboot的微型开发框架,也是一个不基于Servlet的开发框架。项目从2018年启动以来,参考过大量前人作品;历时两年,3500多次的commit;内核保持0.1m的身材,超高的Web跑分,良好的使用体验。 Solon 强调

wubaoyu123的博客 680

轻量级 Java 基础开发框架,Solon & Solon Cloud 1.5.53 发布

Solon 已有120个生态扩展插件,此次更新主要为细节打磨: 1、插件 mybatis-solon-plugin 增加 mappers、typeAliases 单行配置支持 之前的多行模式: mybatis.db1: typeAliases: #支持包名 或 类名(.class 结尾) - "webapp.model" mappers: #支持包名 或 类名(.class 结尾)或 xml(.xml结尾) - "webapp.dso.ma

向往自由的少年!(我是一个少年!!!) 1040

Solon 框架详解(一)- 快速入门

一、Solon 最近号称小而美的的Solon框架,终于得空,搞了一把,发觉Solon确实好用,那Solon到底是什么,又是怎么好用呢? 什么是Solon? Solon参考过Spring boot 和 Javalin 的设计。吸取了两者的的优点,避开了很多繁重的设计,使其支持http, websocket, socket 三种通讯信号接入。Solon 2M即可支撑起普通的mvc开发了,0.1秒就可以完成启动;相对于言,Spring boot 的一个普通mvc项目,基本上20M起步,5秒左右完成启动。 总体来说

向往自由的少年!(我是一个少年!!!) 1万+

拿来即用-solon,对标springboot,一个超级简单的java开发生态!

solon,Java “生态型”应用开发框架:更快、更小、更简单。 启动快 5 ~ 10 倍;并发高 2~ 3 倍; 内存省 1/3 ~ 1/2;打包缩小 50% ~ 90%;同时兼容 java8, java11, java17+++ 运行时........

mose-x 9247

Solon 微服务框架与多视图技术实践

Solon 是一款轻量、高效的,在保持简洁的同时,也支持多视图技术,能灵活对接,满足不同场景下的页面渲染需求。本篇博客将结合示例项目,讲解 Solon 框架及多视图技术的应用。

m0_74230209的博客 1462

推荐:Solon —— Java新世代应用开发框架

推荐:Solon —— Java新世代应用开发框架 solon???? New Java application development framework: FASTER, SMALLER, SIMPLER!! Startup is 5-10 times faster. 2 ~ 3 times higher qps; Runtime memory saving 1/3 ~ 1/2; Packs ca...

gitblog_00904的博客 1390

使用国产化框架 Solon 的一些开发经验

公司的数字安全运营平台是基于 Spring Boot 和 Spring Cloud 进行构建的。考虑到公司有企事业单位的客户,陆续对产品提国产信创的要求。虽然当前信创可能只要求硬件,操作系统和数据库是国产化即可,但底层框架也是国产化的,可以给客户提供更多的国产化保证。Solon 就是这样的一个选择,Solon 的官网介绍说,Solon 是 Java 「新式」应用开发框架,从零开始构建,有自主的标准规范与开放生态。追求更快、更小、更简单;提倡克制、简洁、高效、开放、生态;

发强-CrazyAirhead的专栏 1501

Solon:一款高效、全面的Java微服务框架

是一个由Noear开发的全栈式Java微服务框架,它旨在提供快速、稳定、安全的服务构建能力。这个项目的目标是简化企业级应用的开发流程,提高开发效率,同时保持高度的灵活性和可扩展性。 ## 技术分析 1. **模块化设计**:Solon采用模块化的设计思想,将各种功能如路由、控制器、中间件等分离为独立的模块,开发者可以根据需要选择合适的组件进行组装,避免了不必要的复杂度。 2. **高性能与低...

gitblog_00002的博客 1850

找了几个 Solon 框架的商业落地项目案例!

Solon 是啥?是一个高效的 Java 应用开发框架:更快、更小、更简单。

向往自由的少年!(我是一个少年!!!) 2198
上一篇: Spring Boot 4.0 + gRPC 极简集成:4步搞定,比REST还丝滑
下一篇: 阿里要求全员卸载 Claude Code:事件始末与深层逻辑
智_永无止境
博客等级 码龄10年 803粉丝 404原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智_永无止境

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值