基于FME二开产品:NewGIS integration介绍

目录

前言

一、模板上传

二、模板在线运行

1.模板参数解析

2.模板运行

三、成果管理

总结


前言

爆肝两个月,我和我的团队终于打造出了一款能完美适配所有FME模板的在线模板管理平台,目前支持FME2021版本的所有模板的在线运行、管理。整体技术框架前端Vue ,后端Go语言实现。


一、模板上传

整体界面如下

点击上传按钮,弹出上传表单

有些模板是有config依赖的,上传的时候将config和fmw打包在同一压缩包上传即可,后端会根据情况自动解压并配置config。

二、模板在线运行

1.模板参数解析

点击运行按钮,后端会根据上传的FMW,解析其运行参数,并过滤私有参数,映射成前端的动态表单。忽略所有写模块,写模块由后端统一配置,后端会将写模块将所有写出的内容打包成zip提供下载。需要注意的是为保证shp,gdb等碎文件数据的完整性,统一要求上传为zip,rar压缩包格式。

2.模板运行

模板是通过Go语言底层接入FMEAPI实现,对比BAT调用的方法耦合性更高,启动速度更快,并且能动态获取模板运行情况。并发通过Go语言的channel和goroutine实现,因为go语言天生自带高并发以及其本身优越的性能,后端能实现百万级的任务管理。

模板运行分为3个状态,分别为:队列中,运行中,已完成。运行完成后点击成果预览。

完成后状态更新,同时下载按钮可用,如果部分模板没有写模块参数,则下载按钮为不可用。

三、成果管理

可以在模板外部查看该模板是否有任务在运行,每使用一次模板,则运行次数+1

点击下载按钮,自动下载zip成果包


总结

基于fmedesktop2021.2版本开发,目前只是一个雏形,后期会增加在线网络接口配置,将模板配置为web后端接口,并增加权限管理功能,统计分析功能等。欢迎精通FME,又精通go语言的小伙伴加入我们的团队完成该产品的开发。

相关推荐
花酒锄作田9 天前
Gin 框架中的规范响应格式设计与实现
golang·gin
qwfys20010 天前
How to install golang 1.26.0 to Ubuntu 24.04
ubuntu·golang·install
南_山无梅落10 天前
从传统Web到API驱动:使用Django REST Framework重构智能合同审查系统
重构·django·vue·drf
codeejun10 天前
每日一Go-25、Go语言进阶:深入并发模式1
开发语言·后端·golang
石牌桥网管10 天前
Go 泛型(Generics)
服务器·开发语言·golang
小二·10 天前
Go 语言系统编程与云原生开发实战(第21篇)
开发语言·云原生·golang
小二·10 天前
Go 语言系统编程与云原生开发实战(第20篇)
开发语言·云原生·golang
女王大人万岁10 天前
Golang实战Eclipse Paho MQTT库:MQTT通信全解析
服务器·开发语言·后端·golang
codeejun10 天前
每日一Go-24、Go语言实战-综合项目:规划与搭建
开发语言·后端·golang
石牌桥网管10 天前
Go类型断言
开发语言·后端·golang