当前位置: 首页 > news >正文

爱速搭百度低代码开发平台

爱速搭介绍

爱速搭是百度智能云推出的低代码开发平台,它灵活性强,对开发者友好,在百度内部大规模使用,有超过 4w 内部页面是基于它制作的,是百度内部中台系统的核心基础设施。

它具备以下功能:

  1. 页面制作
    1. 基于 amis 页面可视化编辑,具备超过 120 种内置组件,对于大部分中后台页面可以做到无需了解前端就能制作。
    2. 支持自定义前端组件,可以通过代码扩充定制组件。
    3. 支持导出前端项目,可以运行在任意前端框架中。
    4. 支持页面模板,可以自定义模板,快速搭建公司内常见页面。
    5. 支持自定义主题,具备 1000+ 细粒度展现控制,可自定义 CSS。
    6. 自适应移动端布局。
  2. 数据模型
    1. 具备数据模型能力,可以直连外部数据库,做到对于简单增删改查需求无需后端。
    2. 支持所有数据库基础字段,并扩展了十几种高级字段类型,并支持对字段的校验和索引设置。
    3. 支持软删除、记录操作时间。
    4. 支持设置数据字段验证。
    5. 支持设置索引规则。
    6. 支持批量导入导出数据。
    7. 支持自动生成基于模型的增删改查页面。
    8. 支持一对一、多对一、一对多、多对多关联关系。
    9. 支持通过 SQL 的方式对数据进行处理,灵活实现各种数据操作功能。
  3. API 对接
    1. 具备 API 对接能力,可以直连外部接口。
    2. 支持百度云 BOS、S3、阿里云 OSS 协议的对象存储对接。
  4. 业务编排
    1. 支持可视化编辑后端逻辑,可以对多个接口进行组合。
    2. 支持 HTTP、SQL 方式获取数据。
    3. 支持并行和串行调用。
    4. 支持循环、分支进行流程控制。
    5. 支持脚本进行自定义扩展。
  5. 业务流程
    1. 权限控制,可以控制每个节点能查看和编辑哪些数据。
    2. 支持动态查找处理人,比如上级。
    3. 流程流转判断、加签、会签。
    4. 支持打回到上个节点或前面某个节点。
    5. 流程通知。
  6. 权限控制
    1. 具备基于角色的细粒度资源控制。
    2. 可以针对页面内组件粒度进行控制,比如某个按钮对某些用户不显示。
    3. 可以对某个页面创建分享链接。
    4. 所有操作日志,所有操作都会记录,便于后续审计。
  7. 多环境
    1. 支持多套环境,相互之间数据隔离,开发时不影响正式版本的使用。
    2. 支持版本管理,可以通过回滚快速还原。
    3. 平台升级不会影响应用已发布版本。
  8. 私有部署
    1. 支持私有部署,不限制实例数,环境只依赖 Docker、MySQL、Redis,安装简单、运维成本低。
    2. 支持对接 oauth 2.0,也可以支持自定义登录协议。
    3. 可以对接自己的组织架构。
  9. 支持 OpenAPI 对系统进行操作。

爱速搭目前的客户有知名的银行及互联网公司,比如「知乎」

爱速搭私有部署安装

爱速搭支持私有部署,您可以部署在自己的内网,私有部署版本具备 SaaS 版本的所有功能。

文档:私有部署安装 | 爱速搭 

安装docker

sudo apt install docker docker-compose

启动docker

service docker start

看看docker的状态:

service docker status
● docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; >Active: active (running) since Fri 2024-09-13 09:01:49 UTC; 1>
TriggeredBy: ● docker.socketDocs: https://docs.docker.comMain PID: 110485 (dockerd)Tasks: 10Memory: 25.1MCPU: 1.855sCGroup: /system.slice/docker.service└─110485 /usr/bin/dockerd -H fd:// --containerd=/run/>Sep 13 09:01:46 ub12 systemd[1]: Starting Docker Application Conta>

创建aisuda目录,并在目录里面创建两个目录

mkdir aisuda
cd aisuda/mkdir mysql-data
mkdir redis-data

然后创建 docker-compose.yml文件:

version: '3'
services:web:image: registry.baidubce.com/aisuda/aisuda:2.3.0ports:- '8090:8085'environment:# 数据库用户名ISUDA_DB_USER: root# 数据库密码,这个密码需要和下面 mysql 镜像里的一致ISUDA_DB_PASSWORD: 'Q39sTi0i^9'ISUDA_DB_NAME: aisudaISUDA_DB_HOST: dbISUDA_DB_PORT: 3306# 如果数据库时区是 utc 需要开启下面这个# ISUDA_DB_TIMEZONE: utc# id 加密密钥,建议修改ISUDA_HASHID_SALT: 'aisuda'# 数据库加密密钥,建议修改 PS:长度必须为64位ISUDA_ENCRYPT_KEY: 'B224AD82C6206D4DD0D49B3A17BD894D8EA2DC671372BA6B270D3B3AD599A45C'# redis 地址和端口ISUDA_REDIS_HOST: redisISUDA_REDIS_PORT: 6379# redis key 前缀# ISUDA_REDIS_PREFIX:# redis 密码# ISUDA_REDIS_PASSWORD:# 是否开启 ready check 默认不开# ISUDA_REDIS_ENABLE_READY_CHECK# 是否使用 redis cluster# ISUDA_REDIS_CLUSTER: 1# 是否使用 redis sentinel# ISUDA_REDIS_SENTINEL: 1# 如果开启 redis cluster 或 sentinel,ISUDA_REDIS_HOST 可以填入多个地址及端口,逗号分割# ISUDA_REDIS_HOST: 'host1:6379,host2:6379'# 邮件 smtp 地址,用于发验证码ISUDA_EMAIL_HOST:# 邮件 smtp 端口,比如 25ISUDA_EMAIL_PORT:# 邮件用户名和密码ISUDA_EMAIL_USER:ISUDA_EMAIL_PASS:# 如果是 465 之类的 ssl 端口,请取消下面的注释# ISUDA_EMAIL_SECURE: 1# 邮件显示的发件人地址ISUDA_EMAIL_FROM: 'xxx@xxx.com'# 如果服务器是 SSLv3,需要注释掉下面这个# ISUDA_EMAIL_SSLV3: 1# 邮件 API,如果配置就优先使用,用于没有 smtp 的场景,细节请参考这篇文档后面的介绍# ISUDA_EMAIL_API: http://xxx.com/emailapi# 邮件 API 的签名密钥# ISUDA_EMAIL_API_PASSWORD:# license(可选,如果不填则需要在安装时提供)ISUDA_LICENSE:# 百度统计(可选)BAIDU_TONGJI_CODE:# Google Analytics(可选)GA_MEASUREMENT_ID:# 文件存储配置(可选)# DRIVER 支持 bos 或 s3ISUDA_FILE_STORAGE_DRIVER:ISUDA_FILE_STORAGE_REGION:ISUDA_FILE_STORAGE_BUCKET:ISUDA_FILE_STORAGE_AK:ISUDA_FILE_STORAGE_SK:ISUDA_FILE_STORAGE_ENDPOINT:# s3 专有,使用路径而不是域名来访问 bucket# ISUDA_FILE_STORAGE_S3FORCEPATHSTYLE:# ES 操作日志 和 api 转发日志相关# es 服务地址# ISUDA_ES_URL: http://localhost:9200'# es 服务帐号密码ISUDA_ES_USERNAME:ISUDA_ES_PASSWORD:# 如果是集群模式按如下配置# ISUDA_ES_CLUSTER: true# ISUDA_ES_URL: 'http://localhost:9200,http://localhost:9201'# 索引文件名(可选)# ISUDA_SITE_LOG_INDEX: suda-log-{{date:YYYY-MM}}# 是否开启站点日志记录ISUDA_SITE_LOG_ENABLED:# 默认 api 转发日志不存储 发送体内容,如果开启了,将会存储 json 和 普通表单数据 内容体ISUDA_SITE_LOG_SAVE_REQUSET_PAYLOAD:# 平台级别超级管理员邮箱(如果设置为 password 这就是必填的)ISUDA_PLATFORM_ADMINISTRATORS: aa@aa.com,bb@bb.com# 登录相关# 默认的登录方式,加入配置成 oauth 表示只启用 oauth 登录方式,多个登录方式请用逗号隔开如:password,email,weixin,oauth,ldapAUTH_ENABLED_LIST: password,email# 普通用户默认登录密码,在开启 password 登录方式的时候有用 ( 密码配置 如有特殊字符需要加 “单引号”)ISUDA_LOGIN_DEFAULT_PASSWORD: aisuda2021# 管理员默认密码,在开启 password 登录方式的时候有用ISUDA_PLATFORM_ADMINISTRATOR_DEFAULT_PASSWORD: admin2021# oauth 登录相关# oauth 授权接口地址ISUDA_OAUTH_AUTHORIZE_URL:# oauth token 获取接口地址ISUDA_OAUTH_TOKEN_URL:# oauth clientIdISUDA_OAUTH_CLIENT_ID:# oauth clientSecretISUDA_OAUTH_CLIENT_SECRET:# oauth scope 默认为 emailISUDA_OAUTH_SCOPE:# oauth 获取 用户 profile 的接口地址ISUDA_OAUTH_INFO_URL:# 默认为 id, 假如你的 oauth 返回的 profile 中,id 为 user_id 请填写 user_idISUDA_OAUTH_ID_FIELD:# 默认为 name, 假如你的 oauth 返回的 profile 中,用户名为 user_name 请填写 user_nameISUDA_OAUTH_NAME_FIELD:# 邮箱地址字段,如果你的 oauth 中返回了邮箱地址,请配置,如果没有可以不配置ISUDA_OAUTH_EMAIL_FIELD:# 邮箱后缀,当你的 oauth 没有返回邮箱地址,同时又不想有绑定邮箱这个动作,可以配置这个比如:baidu.com,这样会自动根据用户名拼接个假邮箱地址。ISUDA_OAUTH_EMAIL_SUFFIX:# 默认退出是 爱速搭的退出页,如果配置了,会跳转到对应 oauth 的退出页面。ISUDA_OAUTH_LOGOUT_URL:# ldap 相关,请看后面的说明ISUDA_LDAP_URL:ISUDA_LDAP_BIND_DN:ISUDA_LDAP_BIND_CREDENTIALS:ISUDA_LDAP_SEARCH_BASE:ISUDA_LDAP_SEARCH_FILTER:ISUDA_LDAP_EMAIL_ATTRIBUTE:ISUDA_LDAP_NAME_ATTRIBUTE:ISUDA_LDAP_NICKNAME_ATTRIBUTE:# 默认不开启,开启后,应用导出将剔除敏感信息,但是意味着导入的时候你还需要额外去补填这些信息ISUDA_DISABLE_EXPORT_SENSITIVE_INFO:# 默认不开启,开启后,应用发布的时候,用开发环境权限覆盖运行态资源权限ISUDA_OVERWRITE_RUNTIME_ACL:# 默认不开启,开启后,发布环境的权限通过接口配置的接口返回的权限点进行控制ISUDA_TAKEOVER_RUNTIME_ACL:# 开启后编辑器中所有图片上传组件都会由图片管理器接管,同时应用级、组织级、平台级均可统一管理图片资源ISUDA_ENABLE_IMAGE_MANAGE: 'on'# 是否是 https,爱速搭的访问地址是 https 需要增加这个配置项# ISUDA_IS_HTTPS: true# 下面是自定义组件所需的 npm 本地镜像# NPM_REGISTRY: https://registry.npm.taobao.org# NPM_SEARCH: https://www.npmjs.com/search/suggestionsdb:image: registry.baidubce.com/aisuda/mysql:8command:['mysqld','--character-set-server=utf8mb4','--collation-server=utf8mb4_unicode_ci','--skip-character-set-client-handshake','--default-authentication-plugin=mysql_native_password','--max-allowed-packet=1073741824','--sort-buffer-size=512K','--max-connections=4096']volumes:- ./mysql-data:/var/lib/mysqlenvironment:MYSQL_ROOT_PASSWORD: 'Q39sTi0i^9'TZ: 'Asia/Shanghai'security_opt:- seccomp:unconfinedredis:image: registry.baidubce.com/aisuda/redis:5command: ['redis-server', '--appendonly', 'yes']volumes:- ./redis-data:/data

然后使用docker-compose up来启动

docker-compose up

报错:PermissionError

原来是需要用sudo执行:

sudo docker-compose up

启动后报错Error: Unknown database 'aisuda' 。不知道是不是内存啥的不够16G。

然后通过 docker ps 查看 mysql 所在的容器 id,使用 docker exec -it xxx 进入 MySQL 容器。

docker ps
docker exec -it xxx

总结:

现在问题卡在database报错这里。

调试

docker-compose up报错PermissionError

  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 221, in _retrieve_server_version

    raise DockerException(

docker.errors.DockerException: Error while fetching server API version: ('Connection aborted.', PermissionError(13, 'Permission denied'))

需要用sudo

sudo docker-compose up

启动后报错Error: Unknown database 'aisuda'

web_1    | Got error, gona retry in 5 seconds.

web_1    | Error: Unknown database 'aisuda'

web_1    | [89.299s][info   ][gc,start     ] GC(25) Pause Young (Allocation Failure)

web_1    | [89.299s][info   ][gc,task      ] GC(25) Using 2 workers of 4 for evacuation

 不知道是不是内存啥的不够16G。

这时候浏览器打开网页:http://192.168.0.13:8090/install

显示:

Opps 出错了

Error: Unknown database 'aisuda'at Packet.asError (/app/node_modules/mysql2/lib/packets/packet.js:728:17)at ClientHandshake.execute (/app/node_modules/mysql2/lib/commands/command.js:29:26)at PoolConnection.handlePacket (/app/node_modules/mysql2/lib/connection.js:456:32)at PacketParser.onPacket (/app/node_modules/mysql2/lib/connection.js:85:12)at PacketParser.executeStart (/app/node_modules/mysql2/lib/packet_parser.js:75:16)at Socket.<anonymous> (/app/node_modules/mysql2/lib/connection.js:92:25)at Socket.emit (node:events:390:28)at Socket.emit (node:domain:537:15)at addChunk (node:internal/streams/readable:315:12)at readableAddChunk (node:internal/streams/readable:289:9)at Socket.Readable.push (node:internal/streams/readable:228:10)at TCP.onStreamRead (node:internal/stream_base_commons:199:23)at TCP.callbackTrampoline (node:internal/async_hooks:130:17)

明白了,可能是宿主机里的mysql数据库对aisuda docker里面的数据库造成了干扰。。。。。

相关文章:

爱速搭百度低代码开发平台

爱速搭介绍 爱速搭是百度智能云推出的低代码开发平台&#xff0c;它灵活性强&#xff0c;对开发者友好&#xff0c;在百度内部大规模使用&#xff0c;有超过 4w 内部页面是基于它制作的&#xff0c;是百度内部中台系统的核心基础设施。 它具备以下功能&#xff1a; 页面制作…...

2024icpc(Ⅱ)网络赛补题E

E. Escape 思路&#xff1a; 可以看成 Sneaker 和杀戮机器人都不能在原地停留&#xff0c;然后杀戮机器人有个活动范围限制。如果 Sneaker 和杀戮机器人可以在原地停留&#xff0c;那么 Sneaker 到达一个点肯定会尽可能早&#xff0c;而且时间必须比杀戮机器人到达这个点短。那…...

mac怎么设置ip地址映射

最近开发的项目分为了两种版本&#xff0c;一个自己用的&#xff0c;一个是卖出去的。 卖出的域名是和自己的不一样的&#xff0c;系统中有一些功能是只有卖出去的版本有的&#xff0c;但我们开发完之后还得测试&#xff0c;那就需要给自己的电脑配置一个IP地址映射了&#xf…...

StringReader 使用 JAXB自动将 XML 数据映射到 Java 对象

import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; import javax.xml.bind.Unmarshaller; import java.io.StringReader; public class JAXBExample { public static void main(String[] args) { try { // 假设这是从某处获取的XML字符串 S…...

【系统架构设计师】专题:系统分析和设计

文章目录 一、处理流程设计1.1 流程表示工具1.2 业务流程重组BPR1.3 业务流程管理BPM二、系统设计三、人机界面设计四、结构化方法4.1 结构化分析(Structured Analysis,SA)。4.2 结构化设计(Structured Design,SD)。4.3 结构化编程(Structured Programming,SP)。4.4 数据库设…...

Lambda表达式(Java)

1.Lambda表达式 Lambda是一个匿名函数&#xff0c;我们可以将Lambda表达式理解为一段可以传递的代码&#xff08;将代码像数据一样传递&#xff09;。 “->”&#xff08;Lambda操作符&#xff09;左边&#xff1a;Lambda表达式的所有参数。右边&#xff1a;Lambda体&#x…...

不同的子序列

题目 给定一个字符串 s 和一个字符串 t &#xff0c;计算在 s 的子序列中 t 出现的个数。 字符串的一个 子序列 是指&#xff0c;通过删除一些&#xff08;也可以不删除&#xff09;字符且不干扰剩余字符相对位置所组成的新字符串。&#xff08;例如&#xff0c;“ACE” 是 “…...

CI24R1——精简版Si24R1,高性价比替代XN297开发资料

CI24R1为了减低用户的开发时间&#xff0c;将2.4G芯片开发出2.4G小模块&#xff0c;用户直接贴片调试&#xff0c;大大降低了开发时间跟生产工序。广泛应用在灯控、鼠标、玩具等智能物联网产品。 CI24R1小模块&#xff08;内置天线&#xff09; 是 2.4GHz 模块。该模块核心处理…...

MySQL递归查询笔记

目录 一、创建表结构和插入数据 二、查询所有子节点 三、查询所有父节点 四、查询指定节点的根节点 五、查询所有兄弟节点&#xff08;同级节点&#xff09; 六、获取祖先节点及其所有子节点 七、查询每个节点之间的层级关系 八、查询指定节点之间的层级关系 一、创建表…...

java中的位运算

位运算是对整数的二进制位进行操作的一种运算。在java中long, int, short, char和byte类型都可以使用位运算。 位运算的过程如下&#xff1a;首先将十进制整数转换成二进制表示形式&#xff0c;然后将位运算符应用于每个二进制数位&#xff0c;并计算结果。最后&#xff0c;将…...

llamafactory0.9.0微调qwen2vl

LLaMA-Factory/data/README_zh.md at main hiyouga/LLaMA-Factory GitHubEfficiently Fine-Tune 100+ LLMs in WebUI (ACL 2024) - LLaMA-Factory/data/README_zh.md at main hiyouga/LLaMA-Factoryhttps://github.com/hiyouga/LLaMA-Factory/blob/main...

Electron 隐藏顶部菜单

隐藏前&#xff1a; 隐藏后&#xff1a; 具体设置代码&#xff1a; 在 main.js 中加入这行即可&#xff1a; // 导入模块 const { app, BrowserWindow ,Menu } require(electron) const path require(path)// 创建主窗口 const createWindow () > {const mainWindow ne…...

软件测试学习笔记丨curl命令发送请求

本文转自测试人社区&#xff0c;原文链接&#xff1a;https://ceshiren.com/t/topic/32332 一、简介 cURL是一个通过URL传输数据的&#xff0c;功能强大的命令行工具。cURL可以与Chrome Devtool工具配合使用&#xff0c;把浏览器发送的真实请求还原出来&#xff0c;附带认证信…...

STM32+PWM+DMA驱动WS2812 —— 2024年9月24日

一、项目简介 采用STM32f103C8t6单片机&#xff0c;使用HAL库编写。项目中针对初学者驱动WS2812时会遇到的一些问题&#xff0c;给出了解决方案。 二、ws2812驱动原理 WS2812采用单线归零码的通讯方式&#xff0c;即利用高低电平的持续时间来确定0和1。这种通信方式优点是只需…...

MMD模型及动作一键完美导入UE5-IVP5U插件方案(二)

1、下载并启用IVP5U插件 1、下载IVP5U插件, IVP5U,点击Latest下载对应引擎版本,将插件放到Plugins目录,同时将.uplugin文件的EnableByDefault改为false 2、然后通过Edit->Plugins启用插件 2、导入pmx模型 1、直接在Content的某个目录拖入pmx模型,选择默认参数 2、…...

C++函数指针

函数指针是将一个函数赋值给一个变量的方法 我们使用函数的方法&#xff0c;可能会给函数传入参数&#xff0c;或者传入参数&#xff0c;函数可能有返回值&#xff0c;也可能没有返回值&#xff08;void&#xff09; 下面这个例子&#xff0c;我们调用了HelloWorld函数 auto关…...

汽车信息安全 -- 再谈车规MCU的安全启动

目录 1. 安全启动流程回顾 1.1 TC3xx的安全启动 1.2 RH850的安全启动 1.3 NXP S32K3的安全启动 1.4 小结 2.信任链的问题 3.国产HSM IP的拓展 今天接着 汽车信息安全 -- 存到HSM中的密钥还需包裹吗&#xff1f;-CSDN博客这篇文章深究另一个重要功能-- 安全启动。 该文章…...

[Linux]从零开始的Linux的远程方法介绍与配置教程

一、为什么需要远程Linux 相信大家在学习Linux时&#xff0c;要么是使用Linux的虚拟机或者在物理机上直接安装Linux。这样确实非常方便&#xff0c;我们也能直接看到Linux的桌面或者终端。既然我们都能直接看到终端或者Linux的桌面了&#xff0c;那我们为什么还要远程Linux呢&a…...

手机改IP地址怎么弄?全面解析与操作指南

在当今数字化时代&#xff0c;IP地址作为设备在网络中的唯一标识&#xff0c;其重要性不言而喻。有时候&#xff0c;出于隐私保护、网络访问需求或其他特定原因&#xff0c;我们可能需要更改手机的IP地址。然而&#xff0c;对于大多数普通用户来说&#xff0c;如何操作可能还是…...

【React】useState 和 useRef:项目开发中该如何选择

如果你正踏入用 React 进行网页开发的世界&#xff0c;那你可能已经遇到了像 useState 和 useRef 这样的术语。这两个 Hook 在构建交互性和动态组件时起着至关重要的作用。 下面&#xff0c;我们将探讨它们是什么&#xff0c;它们的功能&#xff0c;它们的区别&#xff0c;并通…...

FastJson内存泄漏实战:我是如何用MAT工具定位到IdentityHashMap这个坑的

FastJson内存泄漏深度剖析&#xff1a;从MAT工具实战到IdentityHashMap陷阱破解 凌晨三点&#xff0c;手机突然响起刺耳的告警声——生产环境某核心服务的堆内存使用率突破95%。作为值班工程师&#xff0c;我瞬间清醒过来。这不是普通的OOM&#xff0c;而是一场持续增长的内存…...

聚焦数据中心基建核心:我国服务器机架导轨市场规模达8.1亿元,产业支撑力凸显

据恒州诚思最新调研数据显示&#xff0c;2025年全球服务器机架导轨市场规模达8.1亿元&#xff0c;预计至2032年将增长至11.61亿元&#xff0c;期间复合增长率&#xff08;CAGR&#xff09;为5.3%。这一增长受多重因素驱动&#xff1a;全球数据中心建设加速&#xff0c;预计2026…...

基于imfindcircles函数的圆形检测实战:从原理到MATLAB实现

1. 霍夫变换与圆形检测原理 第一次接触圆形检测时&#xff0c;我也被各种数学公式绕得头晕。直到把霍夫变换想象成"投票游戏"&#xff0c;才真正理解它的精妙之处。想象一张布满黑白点的图纸&#xff0c;每个黑点都可能属于某个潜在的圆。霍夫变换就像让每个黑点为所…...

电工必看:正弦交流电路中的相量法实战技巧(附计算示例)

电工必看&#xff1a;正弦交流电路中的相量法实战技巧&#xff08;附计算示例&#xff09; 在电气工程领域&#xff0c;正弦交流电路的分析是每位电工和电气工程师必须掌握的核心技能。面对复杂的电路计算&#xff0c;传统的三角函数解析法往往让从业者陷入繁琐的运算泥潭。相量…...

终极指南:5分钟学会免费修复Minecraft损坏存档的强力工具

终极指南&#xff1a;5分钟学会免费修复Minecraft损坏存档的强力工具 【免费下载链接】Minecraft-Region-Fixer Python script to fix some of the problems of the Minecraft save files (region files, *.mca). 项目地址: https://gitcode.com/gh_mirrors/mi/Minecraft-Reg…...

ChatGPT订阅接口开发实战:从零搭建到生产环境部署

ChatGPT订阅接口开发实战&#xff1a;从零搭建到生产环境部署 最近在做一个需要集成智能对话能力的项目&#xff0c;自然而然地想到了ChatGPT的订阅接口。本以为调用个API是分分钟的事&#xff0c;结果一脚踩进了坑里。403鉴权失败、消息顺序错乱、突如其来的配额限制……这些…...

OZON跨境电商的供应链之痛:爆单AI选品后为什么你拿货比别人贵?

选品决定利润的上限&#xff0c;供应链决定利润的下限做跨境电商&#xff0c;有一个残酷的事实&#xff1a;同样的商品&#xff0c;你卖100块&#xff0c;利润20块。别人卖90块&#xff0c;利润还有25块。为什么&#xff1f;不是你卖得不好&#xff0c;不是你运营不行&#xff…...

Java 17 新特性实战:现代 Java 开发的优雅实践

Java 17 新特性实战&#xff1a;现代 Java 开发的优雅实践 前言 大家好。最近很多读者朋友询问 Java 17 的新特性以及如何在项目中应用这些特性。作为一个长期使用 Java 的架构师&#xff0c;今天我想分享一下 Java 17 的新特性以及在实际项目中的应用经验。 Java 17 的核心新特…...

实战指南:如何用FAISS和GPT-4o-mini构建高效RAG系统(附开源代码)

实战指南&#xff1a;如何用FAISS和GPT-4o-mini构建高效RAG系统&#xff08;附开源代码&#xff09; 在人工智能领域&#xff0c;检索增强生成&#xff08;RAG&#xff09;技术正迅速成为连接大型语言模型与专业知识的桥梁。不同于传统LLM仅依赖预训练知识&#xff0c;RAG系统通…...

Qt新手必看:MinGW和MSVC构建套件到底怎么选?保姆级对比指南

Qt构建套件选择指南&#xff1a;MinGW与MSVC深度对比与实战决策 刚接触Qt开发的初学者&#xff0c;往往在配置开发环境的第一步就陷入选择困难——面对MinGW和MSVC这两个构建套件选项&#xff0c;究竟该如何抉择&#xff1f;这个看似简单的选择背后&#xff0c;实则关系到后续开…...