技术与部署架构说明
整体技术架构说明
维格表概念上由两个部分组成:工作台(workbench)和数据表(datasheet)。
工作台(workbench)维护系统集群节点、组织和用户数据,提供文件夹、表格、仪表盘、表单、镜像、审计、权限服务等功能。
数据表技术与部署架构说明(datasheet)为多个协作成员提供实时协作,以便同时操作数据表。 值得注意的是,有一个名为Core的组件库是用Redux开发的。 Core组件库包含OT计算,前后端均可使用。
UI:在渲染引擎中提供极致流畅、用户友好、超快的数据库-电子表格界面
Web-server 服务:使用 Nextjs 构建超高速、SEO 友好且极具用户体验的静态网站和网络应用,React技术,NodeJS + Next.js框架
Backend-server后端服务:处理有关节点、用户、组织等的 HTTP 请求,Java,SprintBoot + MyBatis框架
Socket-server 服务:通过 WebSocket 协议与客户端建立长连接,实现双向通信和实时协作、通知等功能,NodeJS + Nest.js框架
Room-server 服务:处理数据表操作(OTJSON),通过 gRPC 与 Socket 服务器通信,同时为开发者提供 API,NodeJS,Nest.js框架
Fusion-server 服务:处理有关数据表、记录、视图等的 HTTP GET 请求,应用与开放平台API,NodeJS + Nest.js框架
MySQL:存储持久化数据,如数据表、记录、视图等
Redis:存储缓存,如登录会话、热数据等
S3协议:遵循s3存储协议上传附件,本地化部署Minio对象存储服务
RabbitMQ:处理消息的定时推送,本地化部署RabbitMQ消息队列服务
图片裁剪服务:基于开源imageProxy,应用与附件上传后的小图片展示,实时裁剪
服务端口清单
服务器 | 端口 | 备注 |
存储 | 3306、6379 | |
OSS对象存储 | 9000 | |
网关 | 80、443 | 网络入口,根据需要开放80或443端口 |
应用服务 | 9080、3333、3334、8081、3001、3002、3005、3006、3007 | 应用服务器需要能访问数据库、对象存储端口。由于应用端口范围不固定,建议开放 3000 - 1000 |
软件推荐使用浏览器
Chrome(68及以上版本)
Firefox(57及以上版本)
Safari(12及以上版本)
QQ(8及以上版本)
360极速版
Microsoft Edge(70及以上版本)
遨游(5及以上版本)
网关代理路径清单
前端路径 | 后端路径 | 中间层路径 | socket路径 | 图片裁剪 | 帮助中心 | 静态资源 |
workbench | api | fusion | room | vk-assets-ltd | help | _next |
invite | nest | document | assets | public | ||
login | actuator | notification | custom | |||
management | file | |||||
notify | ||||||
org | ||||||
share | ||||||
space | ||||||
template | ||||||
user | ||||||
widget-stage | ||||||
404 | ||||||
embed |
docker-compose 单机模式

K8S集群模式
