Jpom Jpom
🔖首页
  • 一键安装教程
  • Docker 容器安装教程
  • 离线安装教程
  • v2.9.X迁移到v2.10.X指南
  • v2.8.X迁移到v2.9.X指南
  • 数据库迁移到 mysql
  • 实践案例目录
  • 名词解释
  • 什么是 DSL
  • 权限说明
💡DSL说明
  • 加入社区讨论
  • 如何贡献
  • 贡献者们
🤝用户
  • 下载中心
  • Gitee (opens new window)
  • Github (opens new window)
🔖首页
  • 一键安装教程
  • Docker 容器安装教程
  • 离线安装教程
  • v2.9.X迁移到v2.10.X指南
  • v2.8.X迁移到v2.9.X指南
  • 数据库迁移到 mysql
  • 实践案例目录
  • 名词解释
  • 什么是 DSL
  • 权限说明
💡DSL说明
  • 加入社区讨论
  • 如何贡献
  • 贡献者们
🤝用户
  • 下载中心
  • Gitee (opens new window)
  • Github (opens new window)
❤️成为赞助商
  • 常见问题

    • 账号相关
    • 启动失败
    • 数据相关
    • 无法访问
    • 使用报错
    • 修改配置
    • 在线构建相关
    • 权限说明
    • 更多问题
  • 名词解释

    • 基础名词
    • 命令相关
    • 产物目录
    • 更多说明
  • DSL说明

    • DSL 说明
      • 什么是 DSL ?
      • Jpom 中为什么有 DSL?
      • Jpom 中有哪些地方用到了 DSL ?
      • DSL 模式的项目
      • DSL 模式的项目 - 脚本说明
        • 把 status 这个事件(函数)利用好可以实现很多种监控效果
      • 配置内容相关示例
    • 管理 java 项目脚本示例
    • 管理 python 项目脚本示例
    • 容器构建的 DSL 配置示例
  • Nginx 代理配置

    • Nginx代理推荐配置
  • 配置 maven 私服
  • 开启备份文件功能相关说明如下
  • FQA
  • DSL说明
bwcx_jzy
2022-10-20
目录

DSL 说明

# 什么是 DSL ?

DSL(Domain Specific Language)是针对某一领域,具有受限表达性的一种计算机程序设计语言。 常用于聚焦指定的领域或问题,这就要求 DSL 具备强大的表现力,同时在使用起来要简单。说到DSL,大家也会自然的想到通用语言(如Java、C等)。

上面一段话都是搜索引擎 copy 的,忽略即可

# Jpom 中为什么有 DSL?

Jpom 中为了能更好的配置某些功能的属性,采用了 yml(YAML)格式来配置某些功能的属性,这里配置内容统一称为 DSL。

大白话:如果不使用 yml 格式的配置内容来实现,那么意味着需要更多的前端页面组件交互来实现属性配置,使用了 yml 配置后啥属性都一把梭

为啥要把 yml 格式的配置叫 DSL,为了高大上(装*)

# Jpom 中有哪些地方用到了 DSL ?

  1. 项目管理中的 DSL 模式的项目
  2. 容器构建中的容器配置

# DSL 模式的项目

DSL 是一个万能的模式,可以执行自定义脚本实现各种命令,来实现管理项目或者监控项目等操作

  1. 使用 DSL 模式实现接口探活
  2. 使用 DSL 模式管理 tomcat
  3. 使用 DSL 运行非标准的模式(如:canal、elasticsearch、nacos、go、php等)

# DSL 模式的项目 - 脚本说明

  • 脚本里面至少需要实现的三件事:启动、停止、查状态
  • 查状态输出最后一行需要是 running:$pid $pid 必须为数字且表示当前项目的进程 id ,如果不匹配项目则显示未运行
  • 脚本里面不能使用阻塞命令奥(阻塞命令和非阻塞命令解释)
  • 脚本里面支持的变量有:${PROJECT_ID}、${PROJECT_NAME}、${PROJECT_PATH}

# 把 status 这个事件(函数)利用好可以实现很多种监控效果

  1. 使用 CURL 实现接口探活(监控项目假死、监控 elasticsearch 状态、监控其他更多应用状态)
  2. 使用命令实现 硬盘、CPU、内存监控(逆向思维)

# 配置内容相关示例

  • 管理 java 项目脚本示例
  • 管理 python 项目脚本示例
  • 容器构建的 DSL 配置示例
帮助我们改善此文档 (opens new window)
上次更新: 2022/12/02, 13:53:34
更多说明
管理 java 项目脚本示例

← 更多说明 管理 java 项目脚本示例→

最近更新
01
2023年
03-31
02
2022年
03-31
03
2021年
03-31
更多文章>
Theme by Vdoing | Copyright © 2017-2023 MIT License  京ICP备17044819号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×