V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gavin1995w
V2EX  ›  程序员

分享一个所有互联网公司都能使用的配置数据管理解决方案: DMS,节省大量开发时间/成本

  •  
  •   gavin1995w · 2019-04-12 09:50:24 +08:00 · 2062 次点击
    这是一个创建于 2053 天前的主题,其中的信息可能已经有所发展或是发生改变。

    1、解决的问题:前(包括移动端)后端、运维所有需要配置的数据都可以通过 DMS 解决,开发不再需要开发设计表单页、数据库、数据验证逻辑等。在多家公司的实际使用中经常把需要一周时间的工作量缩短到 1 个小时,目前已有多家公司使用,在我看来所有需要开发网页、APP 的公司应该都能用 DMS 节省开发时间;

    2、稳定性及性能:目前 DMS 持久化数据与获取的数据是完全分离的,DMS 可以直接部署内网,数据库放置在内网。获取数据可以通过 CDN、Redis 两种形式,线上数据稳定性给 DMS 平台自身没有任何关系,使用 CDN 时稳定性取决于 CDN 平台自身(建议直接使用 CDN 的方式,数据达到 99.999 稳定性简直轻而易举);

    3、DMS 基于最新 Json Schema/UI Schema,其它特性:

    • 实时表单预览;
    • 模块化(组件化)数据管理;
    • 支持表单数据逻辑判断、数据验证;
    • Schema 数据自动保存,防止误操作及未知异常;
    • 支持动态增加参数,参数本身也可以为 DMS 生成的配置数据;
    • 配合 dms-upload 可以快速将通过表单上传的文件传入 CDN/云存储
    • 符合实际场景的权限控制:开发只负责 schema 编写,需求方配置所有数据;
    • 支持 Schema 生成所有基本表单类型及高级控件,如:日期选择器、进度条、密码框、颜色选择器等;
    • 实时数据预览 /审核(配合 dms-fetch,同时支持服务端代理请求,及浏览器端请求的数据预览与审核)。

    开源项目地址: https://github.com/win-winFE/dms

    7 条回复    2019-04-15 11:20:39 +08:00
    sphawkcn
        1
    sphawkcn  
       2019-04-12 15:14:38 +08:00
    没看懂是干什么用的。
    hurrytospring
        2
    hurrytospring  
       2019-04-12 15:41:58 +08:00
    .....我也搞了一个。。。也是 jsonschema+uischema。。。
    gavin1995w
        3
    gavin1995w  
    OP
       2019-04-12 16:54:18 +08:00 via iPhone
    @sphawkcn 配置动态数据的,比如你页面的 banner 及跳转链接。常规情况需要开发一个配置后台,后台数据要存数据库,页面需要开发,数据需要验证,遇到图片上传还要接入 cdn。但是你用 dms 只需要花两分钟写一个 schema,表单、页面、验证就都有了,直接拿给运营 /产品就能配数据,且该分数据获取是走 cdn,服务端不承载任何数据压力。结合 dms-fetch 还可以做到数据实时审核。也可以支持不同频道页的配置(比如每个城市相同页面展示的内容不一样)。当然功能远不止这点
    gavin1995w
        4
    gavin1995w  
    OP
       2019-04-12 16:55:18 +08:00 via iPhone
    @hurrytospring 也是这种场景吗?
    hurrytospring
        5
    hurrytospring  
       2019-04-12 17:29:47 +08:00
    @gavin1995w 是的,postgresql+内存缓存,想着项目大了上 redis。静态文件 /cdn 部分还没写,所以一直没投入使用。
    前期用的 koa 写了一版,后面用 golang 重构了一版。
    建议加个从样例 json->jsonschema 的功能,因为 jsonschema 写起来也麻烦。我用的这个库:generate-schema
    gavin1995w
        6
    gavin1995w  
    OP
       2019-04-15 10:21:27 +08:00 via iPhone
    @hurrytospring 你的意思是从 json 数据自动生成 schema ?
    hurrytospring
        7
    hurrytospring  
       2019-04-15 11:20:39 +08:00
    @gavin1995w 是的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2859 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 15:02 · PVG 23:02 · LAX 07:02 · JFK 10:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.