`
cleverpartner
  • 浏览: 4585 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

架构设计总体设计原则 -- 常量、全局变量设计方法之一

阅读更多
企业级的特点是有多个系统,且可能存在各种语言的系统,例如:Java、.Net、Ruby,还可能包括一些数据库存储过程、ETL等等。都可能存在常量和全局变量,如果都是写在系统内部,那么常量与全局变量将仅局限于一个系统内部,多个系统之前就可能出现一个地方修改了,而另一个地方未修改的问题。

为了实现多系统间统一,那么最好的办法就是采用统一的数据库定义来确保数据统一。

1、常量
常量的内容存储在DB中,在启动时通过静态加载的方式预先初始化常量,例如:static{CONT = db.load('CONT');}

2、全局变量
全局变量是可能发生变更,例如:某一个IP地址,如果这台机器挂了,那么可能选择一个备用的地址。这时就先在数据库中更新,然后各系统定期更新。 全局变量也是类似常量一样在启动时到数据库加载,但其区别就是在于:全局变量是变化较少的数据,而不是不变量,例如:男、女肯定是常量吧,而某个特定的IP地址是否可能发生变化?对于有多个应用实例的情况下,那么其更新方法有两种不同:
1)定期到数据库中轮询,看看是否有变化,如果有变化那么就加载,这种设计有一个原则,肯定是整个系统提供一套统一的机制,例如:在数据库中建立一个统一的数据表,用于记录更新情况,轮询就检查这张表,如果有数据变化,那么就调用具体的子类进行实际的更新;
2)第一种方法间隔可能比较长,例如:定期30分钟更新一次,但如果需要及时更新那么怎么办,就是在启动时注册IP地址和端口,在有更新的时候自动通知所有订阅者更新了。
分享到:
评论

相关推荐

    C语言程序设计-第12周 大程序结构-浙大翁凯.rar

    浙江大学的翁凯教授的课程,通过"全局变量"、"宏"这两个关键概念,为我们揭示了大程序设计的奥秘。 全局变量是C语言中的一种变量类型,它在整个程序范围内都可访问,无论是在哪个函数内部定义。全局变量的主要优点...

    软件详细设计文档模板(最全面)-详细设计文档.docx

    - **变量**:描述全局变量,解释其在系统中的作用和操作方式。 - **数据布局**:详述数据结构,包括定义、注释和可能的取值。 3. **模块设计** - **用例图**:展示用户与系统交互的场景,帮助理解系统功能。 - ...

    软件(结构)设计说明(SDD)

    软件(结构)设计说明(SDD)是一份全面的技术文档,不仅包含了软件的总体设计框架,还详细说明了具体的实现细节和技术考虑。它是软件开发过程中不可或缺的一部分,有助于确保软件的高质量和易维护性。通过对SDD的...

    C语言课程设计-考试报名管理系统

    - 声明全局变量和常量,以供程序不同部分共享。 - 设计并记录所有函数的原型,提供详细的功能说明和参数解释。 - 主要功能代码需包含适当注释,提高代码可读性。 5. **运行与调试**: - 运行程序并截图,记录...

    软件项目管理概要设计分析说明书模板.doc

    - **软件架构设计**:定义了软件的总体结构,可能是基于功能、数据、对象或部件的设计方法,形成模块化的结构,便于理解和实现。 - **功能模块设计**:将系统分解为多个独立的功能模块,每个模块有明确的责任和...

    软件详细设计文档模板最全面.pdf

    该文档模板涵盖了软件设计的各个方面,包括软件的总体架构、数据结构、类别设计、接口设计、系统安全性等。 软件设计文档的结构 软件设计文档通常包括以下几个部分: 1. 引言:软件设计文档的引言部分,介绍软件...

    C程序设计语言总结

    - 头文件:存放常量、宏、系统全局变量、函数原型等。 - 源文件:包含预处理器指令、全局声明、函数定义等。 - 注释:单行注释(`//`)、多行注释(`/* */`)。 - 库文件:引入标准库或其他外部库,如`#include ...

    SS-TCDS-SADD-1.0 (E) 软件 (结构) 设计说明1

    全局数据结构说明则涵盖了常量和变量的设计,这部分内容对于理解软件的数据处理逻辑至关重要。常量定义了不可更改的值,通常用于设定系统参数或固定值;而变量则是存储和处理数据的基本单元,其定义和管理直接影响到...

    C语言学生成绩管理系统实验报告数组.doc

    知识点:系统设计的步骤、系统设计的方法、程序流程图的绘制、全局变量和常量的使用、函数的设计和实现。 三、详细设计 详细设计是软件开发的第三步骤,它的目的是根据系统设计的结果,设计出系统的详细实现。在本...

    软件详细设计文档模板.doc

    - **变量**:描述系统中的全局变量及其作用。 - **数据结构**:定义数据结构的名称、功能和具体内容,包括其定义、注释和可能的取值。 3. **模块设计** - **用例图**:通过UML图形展示用户与系统之间的交互,...

    2006 年9 月全国计算机等级考试二级C 笔试试题

    - **数据说明规范化**:确保数据类型的声明遵循一定的规范,比如按照全局变量、局部变量、常量等分类进行声明。 - **避免滥用goto语句**:虽然`goto`语句在某些特定情况下很有用,但过度使用会导致代码难以理解和...

    C语言课程设计之五子棋小游戏.pdf

    总体设计涉及游戏流程的架构,包括游戏初始化、用户交互、棋盘更新、胜负判断等核心部分。程序应具有良好的模块化,以便于维护和扩展。 **3. 详细设计** 3.1 各类头文件和宏定义 使用头文件如`stdio.h`, `conio.h`...

    基于jsp的体育用品商城源码数据库论文.doc

    全局配置文件可能包含系统全局变量、常量、数据源配置等,为整个后台系统提供基础支持。 5. **前端网络页面开发与设计** 前端开发通常采用HTML、CSS和JavaScript,结合JSP动态页面技术实现。页面设计注重用户体验...

    软件概要设计说明书案例

    9. **全局结构:grec**:用于存储全局变量和常量。 10. **全局函数:gfun**:封装了一些常用的辅助函数。 11. **公用表单:(g)frm**:提供了通用的界面模板。 12. **公用提示信息**:定义了系统中常见的提示消息文本...

    我爱编译1

    在总体设计上,编译器采用了典型的前端-后端架构。前端负责词法分析和语法分析,生成中间表示,如四元式,并进行初步的语义检查。后端则处理四元式的优化和目标代码生成。在文法设计方面,团队构建了符合C语言的上...

    delphi精要 pdf

    - **全局变量**: 在整个程序范围内可见。 - **局部变量**: 仅在特定过程或函数内部可见。 - **资源字符串**: 特殊类型的字符串,用于存储在资源文件中的多语言文本。 **2.3 过程和函数** - **过程**: 主要用来执行...

    宋劲杉Linux C编程一站式学习_PDF版本——非常好的C,linux编程入门教程_2009.3.6最新版,不断更新到最新版

    - **简单函数**:介绍数学函数的使用,讲解自定义函数的设计方法,包括形参和实参、局部变量与全局变量等关键概念。 - **分支语句**:讲解`if`语句、`if/else`语句、布尔代数以及`switch`语句的使用。 - **深入理解...

Global site tag (gtag.js) - Google Analytics