APIJSON 5.1.5 发布,支持跨层级 APP JOIN

来源: 投稿
2022-07-20 09:51:00

APIJSON 5.1.5 更新

新增支持跨层级 APP JOIN,感谢@github291406933的贡献#413;
image

新增对 LocalDateTime 类型支持,感谢@MentosL的贡献#394;

修复多字段参与 JOIN 时,没有命中缓存而出现的 1+N 查询性能问题,感谢@github291406933的贡献#403;
解决@combine:"(a | b) & (c | d)" 这种任意条件组合情况下有时预编译值错位导致 SQL 报错;
相关推荐新增腾讯业务百万数据 6s 响应,APIJSON 性能优化背后的故事

数量级 4.7.0(5次取平均值) 4.8.0(5次取平均值) 是否正常回包 where条件 性能提升
10W 1.739s 1.159s 50%。即((1/1.159-1/1.739)/(1/1.739))*100%
20W 3.518s 2.676s 31.5%
50W 9.257s 6.952s 33.2%
80W 16.236s 10.697s -Xmx=3192M时无法正常回包,OOM错误,调大-Xmx参数后ok。 51.8%
100W 19.748s 14.466s -Xmx=3192M时无法正常回包,OOM错误,调大-Xmx参数后ok 36.5%
10W 1.928s 1.392s "x_xid{}":[xxxx36,xxxx38],覆盖数据超过100W数据。 38.5%
20W 4.149s 2.852s "x_xid{}":[xxxx36,xxxx38] 45.5%
50W 10.652s 7.231s "x_xid{}":[xxxx36,xxxx38] 47.3%
80W 16.975s 12.465s 调整了-Xmx后正常回包 "x_xid{}":[xxxx36,xxxx38] 36.2%
100W 20.632s 16.481s 调整了-Xmx后正常回包 "x_xid{}":[xxxx36,xxxx38] 25.2%

完整更新日志具体见 Release 发布版本

APIJSON 简介

腾讯 APIJSON 是一种专为 API 而生的 JSON 网络传输协议 以及 基于这套协议实现的 ORM 库。
为各种增删改查提供了完全自动化的万能 API,零代码实时满足千变万化的各种新增和变更需求。
能大幅降低开发和沟通成本,简化开发流程,缩短开发周期。
适合中小型前后端分离的项目,尤其是 初创项目、内部项目、低代码/零代码、小程序、BaaS、Serverless 等。

通过万能的 API,前端可以定制任何数据、任何结构。
大部分 HTTP 请求后端再也不用写接口了,更不用写文档了。
前端再也不用和后端沟通接口或文档问题了。再也不会被文档各种错误坑了。
后端再也不用为了兼容旧接口写新版接口和文档了。再也不会被前端随时随地没完没了地烦了。

为什么选择 APIJSON?

  • 解决十大痛点(APIJSON 可大幅提振开发效率、强力杜绝联调扯皮、巧妙规避文档缺陷、非常节省流量带宽等)
  • 开发提速很大(CRUD 零代码热更新全自动,APIJSONBoot 对比 SSM、SSH 等保守估计可提速 20 倍以上)
  • 腾讯官方开源 (使用 GitHub、Gitee、工蜂 等平台的官方账号开源,微信公众号、腾讯云+社区 等官方公告)
  • 社区影响力大 (GitHub 1W+ Star 在 400W+ Java 项目中排名前 110,远超 FLAG, BAT 等国内外绝大部分开源项目)
  • 各项荣誉成就 (腾讯内外 5 个奖项、腾讯开源前十、腾讯后端项目 Star 第一、GitHub Java 日周月榜大满贯 等)
  • 多样用户案例(腾讯内有互娱、音乐、微信、云与智慧等,外部包含华为、华能、百度、中兴、圆通、传音、万科采筑等)
  • 适用场景广泛 (社交聊天、阅读资讯、影音视频、办公学习 等各种 App、网站、公众号、小程序 等非金融类项目)
  • 周边生态丰富(Android, iOS, Web 等各种 Demo、继承 JSON 的海量生态、零代码 接口测试 和 单元测试 工具等)
  • 文档视频齐全 (项目介绍、快速上手、安装部署 等后端、前端、客户端的 图文解说、视频教程、代码注释 等)
  • 功能丰富强大 (增删改查、分页排序、分组聚合、各种条件、各种 JOIN、各种子查询、跨库连表 等零代码实现)
  • 使用安全简单(自动增删改查、自动生成文档、自动管理版本、自动控制权限、自动校验参数、自动防SQL注入等)
  • 灵活定制业务 (在后端编写 远程函数,可以拿到 session、version、当前 JSON 对象 等,然后自定义处理)
  • 高质可靠代码(代码严谨规范,商业分析软件源伞 Pinpoint 代码扫描报告平均每行代码 Bug 率低至 0.15%)
  • 兼容各种项目(协议不限 HTTP,与其它库无冲突,对各类 Web 框架集成友好且提供 SpringBoot, JFinal 的 Demo)
  • 工程轻量小巧(仅依赖 fastjson,Jar 仅 280KB,Java 文件仅 59 个共 13719 行代码,例如 APIJSONORM 4.3.1)
  • 多年持续迭代(2016 年至今连续维护近 6 年,累计 2700+ 次提交、88 次发版、45 个贡献者,不断更新迭代中...)

APIJSON 生态项目

apijson-router 【新】APIJSON 的路由插件,可控地对公网暴露类 RESTful 简单接口,内部转成 APIJSON 格式请求来执行。

apijson-column APIJSON 的字段插件,支持 字段名映射 和 !key 反选字段

hyperf-APIJSON 【新】PHP 版 APIJSON,基于 Hyperf(PHP Swoole),支持 APIJSON 多种关联和多个功能符

APIJSON.NET C# 版 APIJSON,支持大部分 APIJSON 功能,支持 MySQL, PostgreSQL, SQL Server, Oracle, SQLite

apijson-go 【新】Go 版 APIJSON,支持 单表查询、列表筛选、关联查询、多个功能符等

apijson-node 字节跳动工程师开发的 Node.ts 版 APIJSON,提供 nestjs 和 typeorm 的 Demo

uliweb-apijson Python 版 APIJSON,支持大部分 APIJSON 功能,支持 MySQL, PostgreSQL, SQL Server, Oracle 等

APIJSONBoot_Hive 【新】APIJSON + SpringBoot 连接 Hive, Hadoop 使用的 Demo

apijson-practice【新】BAT 技术专家开源的 APIJSON 参数校验注解 Library 及相关 Demo

APIJSONDemo【新】APIJSON 接入 ClickHouse 使用 Demo

APIJSONDemo_ClickHouse 【新】APIJSON + SpringBoot 连接 ClickHouse 使用的 Demo

apijson-db2 APIJSON 接入 IBM 数据库 DB2 的 Demo

light4j 整合 APIJSON 和微服务框架 light-4j 的 Demo,同时接入了 Redis

apijson-examples 关于 APIJSON 包含 admin, upms, web 的多端 Demo

感谢热心的作者们的贡献,点 ⭐Star 鼓励他们继续完善吧^_^

腾讯 APIJSON - 零代码、全功能、强安全 ORM 库

后端接口和文档零代码,前端(客户端) 定制返回 JSON 的数据和结构!

https://gitee.com/Tencent/APIJSON

创作不易、坚持更难,右上角点 ⭐Star 支持下吧 ^_^

 

展开阅读全文
0 评论
6 收藏
分享
返回顶部
顶部