首页 文章 精选 留言 我的

精选列表

搜索[阿里云],共10000篇文章
优秀的个人博客,低调大师

Solon 1.8.3 发布,云原生微服务开发框架

相对于 Spring Boot 和 Spring Cloud 的项目 启动快 5 ~ 10 倍 qps 高 2~ 3 倍 运行时内存节省 1/3 ~ 1/2 打包可以缩小到 1/2 ~ 1/10(比如,90Mb 的变成了 9Mb) 基于 app.name 进行注册发现 与 k8s svc 相互对应 支持 Service Mesh 架构部署方案 关于 Solon Solon 是一个更现代感的应用开发框架,轻量、开放生态型的。支持 Web、Data、Job、Remoting、Cloud 等任何开发场景。 强调,克制 + 简洁 + 开放 + 生态的原则 力求,更小、更少、更快、更自由的体验 目前有近130个生态插件,含盖了日常开发的各种需求: 本次主要更新内容 添加 solon.extend.config 属性配置支持 java -Dsolon.extend.config=./app.yml -jar demoapp.jar 添加 ContextPathFilter 类,摸拟 contextPath 效果 public class App{ public static void main(String[] args){ Solon.start(App.class, args); } } 修复 @Inject("${list}") Listlist ,数据不对的问题 插件 solon.boot.jdkhttp,添加 ssl 支持(尝试替代 jlhttp ;框架性能高 50%) 插件 sqltoy-solon-plugin 升级为 sqltoy 5.2.0 插件 weed3-solon-plugin 升级 weed3 3.4.26 插件 beetlsql-solon-plugin 升级 beetlsql 3.14.4-RELEASE 插件 solon-api, solon-web 默认改用 jdkhttp 添加 server.host 和 server.?.host 支持 添加 StaticMappings::remove 接口 添加 EventBus::unsubscribe 接口 snack3 升为 3.2.29 fastjson 升为 1.2.83 hutool 升为:5.8.1 jetty 升为:9.4.46.v20220331 undertow 升为:2.2.17.Final jackson 升为:2.13.3 gson 升为:2.9.0 进一步了解 Solon 《想法与架构笔记》 《生态预览》 《与 Spring Boot 的区别?》 《与 Spring Cloud 的区别?》 项目地址 gitee:https://gitee.com/noear/solon github:https://github.com/noear/solon website:https://solon.noear.org

优秀的个人博客,低调大师

Solon 1.8.0 发布,云原生微服务开发框架

相对于 Spring Boot 和 Spring Cloud 的项目 启动快 5 ~ 10 倍 qps 高 2~ 3 倍 运行时内存节省 1/3 ~ 1/2 打包可以缩小到 1/2 ~ 1/10(比如,90Mb 的变成了 9Mb) 基于 app.name 进行注册发现 与 k8s svc 相互对应 支持 Service Mesh 架构部署方案 关于 Solon Solon 是一个更现代感的应用开发框架,轻量、开放生态型的。支持 Web、Data、Job、Remoting、Cloud 等任何开发场景。 强调,克制 + 简洁 + 开放 + 生态的原则 力求,更小、更少、更快、更自由的体验 目前有近130个生态插件,含盖了日常开发的各种需求: 本次主要更新内容 新增 solon.extend.hotplug 插件(提供业务插件 '热插拨' 和 '热管理' 支持) public class DemoApp { public static void main(String[] args) { Solon.start(App.class, args, app -> { //添加待管理的插件 PluginManager.add("add1", "/x/x/x.jar"); PluginManager.add("add2", "/x/x/x2.jar"); app.get("start", ctx -> { //启动插件 PluginManager.start("add1"); ctx.output("OK"); }); app.get("stop", ctx -> { //停止插件 PluginManager.stop("add1"); ctx.output("OK"); }); }); } } 更多介绍看官网的:solon.extend.hotplug 调整 AopContext ,更具隔离性 调整 AopContext::beanOnloaded 参数由 Runnable 改为:Consumer 调整 Plugin::start 参数由 SolonApp 改为:AopContext public class Plugin1Impl implements Plugin { @Override public void start(AopContext context) { //通过当前上下文扫描,具有隔离性 context.beanScan(Plugin1Impl.class); context.beanOnloaded(ctx->{ //回调有上下文信息,方便做多插件可复用的设计 }); } } 修复 @Cache 在函数里有逗号时无法删除缓存的问题 @Controller public class DemoController { /** * 执行结果缓存10秒,使用 key=test_${label} 并添加 test 标签 * */ @Cache(key="test_${label}", tags = "test" , seconds = 10) @Mapping("/cache/") public Object test(int label) { return new Date(); } /** * 执行后,清除 标签为 test 的所有缓存 * */ @CacheRemove(tags = "test") @Mapping("/cache/clear") public String clear() { return "清除成功(其实无效)-" + new Date(); } /** * 执行后,更新 key=test_${label} 的缓存 * */ @CachePut(key = "test_${label}") @Mapping("/cache/clear2") public Object clear2(int label) { return new Date(); } } 修复 Gateway 对默认接口识别失效的问题 @Mapping("/api/v3/app/**") @Component public class ApiGatewayV3 extends UapiGateway { @Override protected void register() { filter(new BreakerFilter()); //融断 before(new StartHandler()); //开始计时 before(new ParamsParseHandler()); //参数解析 before(new ParamsSignCheckHandler(new Md5Encoder())); //参数签名较验 before(new ParamsRebuildHandler(new AesDecoder())); //参数重构 after(new OutputBuildHandler(new AesEncoder())); //输出构建 after(new OutputSignHandler(new Md5Encoder())); //输出签名 after(new OutputHandler()); //输出 after(new EndBeforeLogHandler()); //日志 after(new EndHandler("v3.api.app")); //结束计时 //添加一批具体的接口处理Bean addBeans(bw -> "api".equals(bw.tag())); } } 修复 rocketmq-solon-plugin ,消费异常时仍返回成功的问题 优化 rabbitmq-solon-plugin ,消费异常时的处理 进一步了解 Solon 《想法与架构笔记》 《生态预览》 《与 Spring Boot 的区别?》 《与 Spring Cloud 的区别?》 项目地址 gitee:https://gitee.com/noear/solon github:https://github.com/noear/solon website:https://solon.noear.org

优秀的个人博客,低调大师

OAuthApp —— H5 应用开发/云托管平台

OAuthApp 是一个 H5应用开发、托管、模板共享平台,采用 SAAS 架构,每个二级域名都是独立数据库、用户池、账号系统。 功能特性: 1,在线发布H5应用到服务器 2,用户池、数据库、排行榜3个模块可快速实现业务需求 3,模板中心、代码生成器,在线制作,在线部署 软件架构 .Net Core 5.0 网址:https://www.oauthapp.com/tenant/index 指引 1,在线发布本地H5项目到服务器(免费空间) 请使用最新版Chrome浏览器 2,快速接入 用户池、数据库、排行榜模块。开发文档:https://web.oauthapp.com/4/docs/ 3,模板库 可编码方式、zip包方式,制作代码生成器,支持在线部署到本地 在线演示:https://www.oauthapp.com/tenant/ms/553ea9d2acbe431c87cff2988c398913 制作文档:https://web.oauthapp.com/4/docs/master/ 4,支持saas模式,可通过 https://www.oauthapp.com/ 创建独立存储空间

优秀的个人博客,低调大师

云溪数据库执行器概述

众所周知,执行器执行之前,需要计划的支撑。计划分为逻辑计划和物理计划。他们的关系就好比是我们要出去旅游,选择什么交通工具就相当于逻辑计划,在这一步比如选择了飞机后。选择哪家航空公司就相当于物理计划。最后,当你真正动身去旅游就相当于执行。下面给出SQL语句执行的基本构架图,从中可以清楚地看到优化器和执行器在整个流程中的执行过程。 优化器 逻辑计划和物理计划负责生成执行计划和索引选择等功能,可以把它看做优化器。比如执行这样的语句,执行两个表的join: Select*fromt1joint2using(ID)wheret1.c=10andt2.d=20; 既可以先从t1里取出c=10记录的ID,再根据ID关联到t2,再判断t2里面d的值是否等于20,也可以先从t2里取出c=20记录的ID,再根据ID关联到t1,再判断t2里面d的值是否等于10。这两种执行方法的逻辑是一样的,但执行效率不同,优化器可以预估代价决定使用方案。在分布式数据库中,其中的物理计划还可以根据要用到的数据span所在的节点判断该算子在哪个节点上执行,从而实现分布式执行。与分布式相关的物理计划具体作用在分布式执行概述。 分布式执行 分布式执行的关键思想是如何从逻辑执行计划到物理执行计划,这里主要涉及两方面的处理,一个是计算的分布式处理,一个是数据的分布式处理。 一旦生成了物理计划,系统就需要将其拆分并分布到各个node之间进行运行。每个node负责本地调度processors 和 inputs。node还需要能够彼此通信以将输出output router连接到input。特别是,需要一个streaming interface来连接这些组件。为了避免额外的同步成本,需要足够灵活的执行环境以满足上面的所有这些操作,以便不同的node除了执行计划初始的调度之外,可以相对独立的启动相应的数据处理工作,而不会受到gateway节点的其他编排影响。 数据库的集群中的Gateway node会创建一个调度器,它接受一组flow,设置输入和输出相关的信息,创建本地processor并开始执行。在node对输入和输出数据进行处理的时候,我们需要对flow进行一些控制,通过这种控制,我们可以拒绝request中的某些请求。 每个Flow表示整个物理计划中跨节点执行的一个完整片段,由processors和streams组成,可以完成该片段的数据拉取、数据计算处理和最终得数据输出。如下图所示: 对于跨节点得执行,Gateway node首先会序列化对应得FlowSpec为SetupFlowRequest,并通过GRPC发送到远端node,远端node接收后,会先还原Flow,并创建其包含得processor和交互使用得stream(TCP通道),完成执行框架得搭建,之后开始由网关节点发起驱动得多节点计算。Flow之间通过box缓存池进行异步调度,实现整个分布式框架得并行执行。 对于本地执行,就是并行执行,每个processor,synchronizer和router都可以作为goroutine运行,它们之间由channel互联。这些channel可以缓冲信道以使生产者和消费者同步。 为实现分布式并发执行,数据库在执行时引入了Router的概念,对于JOIN和AGGREGATOR等复杂算子根据数据分布特征,实现了三种数据再分布方式,mirror_router、hash_router和range_router,通过数据再分布实现processor算子内部拆分为两阶段执行,第一阶段在数据所在节点做部分数据的处理,处理后结果,根据算子类型会进行再分布后,第二阶段汇集处理,从而实现了单个算子多节点协作执行。

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册