你可以使用 轻易云集成平台,对数据进行传输、转换和集成等操作,从不同的数据存储引入数据,并进行转化和开发,最后将处理好的数据同步至其它数据系统。 轻易云集成平台 集线器作为数据中枢 🧐,提供了一套完整的数据集成与分发解决方案。
基本概念
本文为您介绍 轻易云集成平台 中,接入平台、标准 API、连接器、集线器、队列调度者、队列执行者、数据保管者、和数据映射关系等基本概念。
01 - 🅿️ 接入平台
接入平台是开发团队维护的已经接入到 轻易云集成平台 系统中的各软件平台。开发团队会持续不断的增加新的软件厂商支持。
02 - 📖 标准 API
标准 API 是开发团队在接入软件平台之后,根据目标平台提供的标准 API 文档维护的预设。用户在只用时可以继承这些标准 API 再进行调整修正,可以极大的缩减配置对接的时间。
03 - 🔗 连接器
连接器是用户专属配置的服务器连接信息工具,可以分别添加并隔离开发环境和生产环境的数据源,以保护数据安全。根据具体情况用户可以选择三种不同的环境
生产 env_production
测试 env_test
开发 env_development
👀 在完成开发与测试之后,正式运行之前务必将连接器环境切换到"生产"环境当中!
04 - 🔀 集线器
集线器是整个 轻易云集成平台 的核心,每一个集线器代表一种业务的对接策略,用户可以根据业务的不同新建多个不同规则的集线器。比如:采购订单同步,线上销售出库同步,线下销售出库同步。
一个集线器必须要配置源系统,源系统 API,目标系统,目标系统 API。在后续的章节中我们将大篇幅的介绍集线器的配置细节。
05 - 🤷♀️ 队列调度者&队列执行者
集线器在工作时,无论是向源系统请求查询数据还是向目标系统写入数据,都会先创建相对应的“⏳ 队列任务 ⌛”,这些队列任务并不会立刻执行,系统会根据先进先出原则逐个排队执行。在开发调试阶段,或者出现异常错误的情况,用户也可以手工修改、插队执行、重新激活这些队列。
06 - 👮 数据保管者
我们为每个用户,每一个集线器都装配了一个专属的 MongoDB 数据库与专属的数据集 (Collection),以确保用户与用户、集线器与集线器之间的数据是完全隔离互不干扰的 🙅♀️。集线器在执行过程中数据会被临时的存储在这里,在数据成功完成交互之后你可以去删除它们这并不会对业务产生任何影响。
如果用户希望数据是私有保管存储的也可以自行在云市场平台上购买一个专属的 MongoDB Service。
07 - 🔄 数据映射关系
在多套系统对接时,如果系统与系统之间的基础资料编码并不一致,此时可以使用数据映射关系进行映射。数据映射关系同样也是被专属的 数据保管者 进行保管。
私有化部署
我们的产品支持私有化部署,关于部署费用与商业许可请咨询商务:
环境准备
项目 | 要求 | 说明 |
系统运行环境 | CentOS 7.5 ×64 | 当前版本暂不支持 Windows Service 环境 |
Web 服务 | Nginx 1.18 | 同样支持 Apache |
应用程序 | PHP 7.3 | 7.3 或者以上版本 |
基础数据库 | Mysql 5.7 | 5.7 或者以上版本 |
核心数据库 | MongoDB 4.0 | 4.0 或者以上版本 |
服务器配置参数
轻易云集成平台 服务器配置参数视情况使用情况而定,以下建议可以作为参考使用:
序号 | 使用量 | 配置建议 |
0 | 每日数据量 500 - 5000 | 2 核 4GB 3Mbps 数据盘 50GB |
1 | 每日数据量 5000 - 20000 | 4 核 8GB 6Mbps 数据盘 100GB |
2 | 每日数据量 20000 - 100000 | 4 核 16GB 10Mbps 数据盘 200GB |
3 | 每日数据量 100000 - 500000 | 8 核 32GB 15Mbps 数据盘 300GB |
4 | 每日数据量 500000 以上 | 16 核 32GB 20Mbps 数据盘 500GB |
配置建议是以单服务器为例说明,应用程序与数据库应用均可拆分独立部署
php 环境准备
需要开启的函数
putenv
:用于设置或修改环境变量。
proc_open
:执行一个命令并打开用来输入/输出的文件指针。
pcntl_alarm
:设置一个将在指定秒数后发送给当前进程的信号。
pcntl_signal
:安装一个信号处理器。
pcntl_signal_distpch
:此函数可能存在笔误,不太确定其确切功能。通常在 PHP 的进程控制扩展中,信号处理相关的函数用于处理异步信号,实现对进程的控制和响应外部事件等功能。
需要安装的扩展:
fileinfo
:提供有关文件的信息,例如文件类型、MIME 类型等。
mongodb
:用于连接和操作 MongoDB 数据库。
redis
:支持与 Redis 数据库进行交互。
opcache
:优化 PHP 脚本的执行性能,通过缓存已编译的脚本字节码减少重复编译的开销。
开始部署
确保 PHP 环境准备就绪
- 在进行安装之前,务必确保 PHP 环境已经准备妥当。执行
composer install
命令进行安装操作。
- 生成环境变量配置文件,通过执行
cp.env.example.env
命令来实现。
- 配置环境数据库时,需先新增一个空白数据库。然后使用
vim.env
命令进行配置。接着执行以下命令:
php artisan migrate
:用于数据库迁移。
php artisan key:generate
:生成应用密钥。
php artisan passport:install --uuids
:安装 Passport。
php artisan db:seed
:执行数据库填充操作。
chmod -R 777 storage
:设置存储目录的权限。
一、启动 crontab
启动 crontab 负责监听定时任务。
- 执行
crontab -e
命令,添加以下内容:* * * * * cd /www/wwwroot/datahub-service && php artisan schedule:run >> /dev/null 2>&1
。其中 /www/wwwroot/datahub-service
为应用程序运行的根路径。
二、supervisor 守护进程
- 安装 supervisor:
yum install epel-release
。
yum install -y supervisor
。
systemctl enable supervisord
(开机自启动)。
systemctl start supervisord
(启动 supervisord 服务)。
systemctl status supervisord
(查看 supervisord 服务状态)。
ps -ef|grep supervisord
(查看是否存在 supervisord 进程)。
- 重载配置和重新启动:
sudo supervisorctl reread
(重载配置)。
systemctl restart supervisord
(重新启动)。
- 为租户配置守护进程:
三、MongoDB 参数设置
需要设置缓存大小。
- 监听 mongodb 的内存占用情况:执行
top -p $(pidof mongod)
。
- 设置存储参数:
storage:
dbPath: /www/server/mongodb/data
directoryPerDB: true
wiredTiger:
engineConfig:
cacheSizeGB: 4
四、命令行调试
- 开始调度一个源请求队列分配:执行
php artisan dispatch:datahub f134680b-7ef3-3bae-92a8-64ffeb19bd53 --source
。
- 开始调度一个目标写入队列分配:执行
php artisan dispatch:datahub 94ddfb9f-bc26-3fe0-a4a8-2704bcb2274d --target
。