目录结构

设计, 库

core

const ide = new ID({
    hostNode, //
    accessKeyId,
    secretAccessKey,
    version
})
const dbConfig = {
    type,
    host,
    port,
    username,
    password,
    database    
};
const DB = new ID.DB({
        ...dbConfig
})
- ID.core.initConfigsSchema();
  -  applications //配置有哪些services? later设计

DB

- ID.DB.initConfigSchema() //设计

- ID.DB.getTables('xxx')
-  // 需要标记是否是多对多表,schemaName,dbName | 是否需要持久化;
- ID.DB.getTablesWithRelationTree();
- ID.DB.getFieldsByTableName();

...

ES

- ID.ES.initConfigSchema()

- ID.ES.trigger.init(); 
- ID.ES.trigger._initTriggerFunction(); //是否需要可定义名称
- ID.ES.trigger.buildTrigger();
- ID.ES.trigger.buildManyToManyTrigger(); //设计
- ID.ES.trigger.rebuildAllTriggers();
  - ID.DB.getTables(); 
- ID.ES.trigger.dropAllTriggers(); // 找到TriggerFunction的依赖
- ID.ES.trigger.dropTriggerFunction(); // 找到TriggerFunction的依赖
- ID.ES.trigger.getTriggerFunction(); // 目前是单数
- ID.ES.trigger.getTriggers(); 
- ID.ES.index.initGui(); //http server

//...json

- ID.ES.index.create(payload,otherSettings);
- ID.ES.index.rebuild();
- ...

deploy

- ID.deploy.createConfigSchema();
- ID.deploy.getTableChanges();
- ID.deploy.createRequest();
- ID.deploy.getRequestsList(); // 分表 | 不同type+json?
- ID.deploy.deployByRequestId();

- ID.deploy.isNeedIndexDeploy();
- ID.deploy.createVersionDeploy();

- ID.deploy.startIndexDeploy(); 
- ID.deploy.startVersionDeploy(); 

Version

//later

- ID.Version.init(); //如果没json文件则创建
- ID.Version.createSettings(payload);
- ID.Version.index.initGui(); //http server
- ID.Version.createConfigSchema(); 
当setting改变时 是否需要迁移文件,还是无脑新建schema

ID AWS SDK

    ID.AWS.createSetting({
        // region,
        accessKeyId,
        secretAccessKey,
        // sqsSetting:{
        //     calDependentsUrl,
        //     syncDataUrl
        // }
    })
    let setting = await ID.AWS.getSetting();
    let sqs = new ID.AWS.SQS({setting})

场景

初始化项目

  • 使用所有服务
  • 使用部分服务
  • 数据分布在不同数据库

    es sync

  • 新项目使用
  • 历史项目使用
    • 已有多个schema
    • 变更数据库结构
    • 变更index需求 (是否需要setting的version)

      version

      ...
    • 变更数据库结构
    • 变更setting

results matching ""

    No results matching ""