让你提前认识软件开发(52):系统某模块工作原理详述

简介: 第3部分 软件研发工作总结系统某模块工作原理详述 【文章摘要】        某模块在系统中占有非常重要的地位,该模块能够对符合条件的动态信箱进行清理。

第3部分 软件研发工作总结

系统某模块工作原理详述

 

【文章摘要】

        某模块在系统中占有非常重要的地位,该模块能够对符合条件的动态信箱进行清理。本模块直接清理的信箱包括:过期动态信箱、冷冻信箱和空动态信箱;删除非动态信箱由本模块发送消息到其它模块完成。

        本文对该模块的工作原理的详细介绍,为相关模块的开发和测试提供了有益的参考,同时也有利于现场人员对本模块进行维护。

 

【关键词】

        系统  模块  数据库  流程

 

1. 本模块删除的信箱类型

        本模块删除的信箱类型如图1所示:

1 本模块删除的信箱类型

 

2. 本模块程序执行流程

         本模块的主要程序流程如下:

2.1 程序执行总体流程

2 程序执行总体流程

 

2.2 查询过期信箱流程

3 查询过期信箱流程

        说明:

        (1) 本流程从数据库中查询出满足条件的过期信箱,包括动态信箱和非动态信箱。其中,动态信箱由本模块删除,非动态信箱由本模块发消息到其它模块进行删除。

        (2) 过期信箱的保留天数是受系统参数控制的,这些参数的值可以手动配置。如果当前时间值与信箱的lastusetime字段值之差大于了对应系统参数的值,那么该信箱就要被扫描出来并被删除掉。

        (3) 不管信箱是否为空(即信箱里面有无留言),只要是满足了过期删除的条件,都应该被删除掉。

 

2.3 查询冷冻信箱流程

4 查询冷冻信箱流程

        说明:

        (1) 冷冻信箱是指状态值为某特定值的信箱,包括动态信箱和非动态信箱。动态信箱由本模块删除,非动态信箱由本模块发消息到其它模块进行删除。

        (2) 冷冻信箱是否删除,是受某系统参数值控制的。如果当前时间值与信箱的某字段值之差大于了该系统参数的值,那么该信箱就要被扫描出来并被删除掉。

        (3) 该流程与其它两个流程互不影响,即它们找出来的信箱没有重叠。

 

2.4 查询空动态信箱流程

5 查询空动态信箱流程

        说明:

        (1) 空动态信箱指没有消息存在的动态信箱,即该信箱对应的留言表中内容为空。

        (2) 在查找空动态信箱之前,要先判断删除空动态信箱标志是否被打开,即执行存储过程4查找系统表中某参数的值。如果该参数的值大于0,则表示删除空动态信箱标志被打开;如果该参数的值等于0,则表示删除空动态信箱标志被关闭。

        (3) 在删除空动态信箱标志被打开的情况下,再执行存储过程5来查找空动态信箱。

        (4) 该流程与查询过期信箱流程中找出来的信箱会有重叠。如果某一个信箱同时被以上两个流程找出来,那么只会向内存链表插入一次,即内存链表中的信箱号码不重复。

 

2.5 删除动态信箱流程

6 删除动态信箱流程

        说明:

        (1) 前面流程找出的所有动态信箱,均在该流程中进行删除。

        (2) 如果是过期动态信箱或冷冻信箱,那么直接调用存储过程6进行删除;如果是未过期的动态信箱,那么先要判断是否有留言,没有留言才会删除掉。

        (3) 在删除信箱成功之后,要删除该信箱相关的其它信息。如果删除信箱失败,那么也要写失败日志。

 

3. 总结

        在系统中,一个模块会完成很多的功能,只有对程序流程了然于心,在遇到问题的时候,才能够快速定位和排查。

        本文对系统中某模块的工作原理进行了详细的介绍,旨在使与该模块有交互的接口开发人员能够明白本模块的运行原理,同时为测试部和现场客服的同事展开相关工作提供了参考。

 

 

 

(本人微博:http://weibo.com/zhouzxi?topnav=1&wvr=5,微信号:245924426,欢迎关注!)

目录
相关文章
|
安全 前端开发 JavaScript
swap薄饼交易所系统开发技术详细/方案项目/逻辑需求/步骤指南/功能流程/源码版
Blockchain platform selection: Choose a suitable blockchain platform as the underlying infrastructure, such as Ethereum, Coin Security smart chain, etc. These platforms provide smart contract functions and transaction confirmation mechanisms, making them suitable for building decentralized exchanges
|
6月前
|
设计模式 安全 关系型数据库
PHP开发涉及一系列步骤和技术
【7月更文挑战第2天】PHP开发涉及一系列步骤和技术
144 57
|
8月前
|
搜索推荐 编译器 开发者
应用程序的运行:原理、过程与代码实践
应用程序的运行:原理、过程与代码实践
234 1
|
8月前
|
存储 算法 安全
软件系统设计步骤与原理
软件系统设计步骤与原理
|
8月前
|
C++ Python
量化交易系统开发详细步骤/需求功能/策略逻辑/源码指南
Developing a quantitative trading system involves multiple steps, and the following is a possible development process
|
8月前
|
Web App开发 Linux 开发工具
欲善事先利器-系统篇
欲善事先利器-系统篇
86 1
|
8月前
|
Web App开发 Linux 开发工具
欲善事先利器——系统篇
欲善事先利器——系统篇
72 0
|
8月前
|
机器人 TensorFlow 算法框架/工具
量化交易机器人系统开发详细策略/需求步骤/逻辑方案/源码设计
auto nhwc_data = nhwc_Tensor->host<float>(); auto nhwc_size = nhwc_Tensor->size(); ::memcpy(nhwc_data, image.data, nhwc_size);
|
敏捷开发 测试技术
推三返一开发稳定版丨推三返一项目系统开发详细指南/方案需求/步骤逻辑/流程功能/案例设计/技术架构/源码程序
推三返一系统开发是一种软件开发模式,也被称为迭代增量开发模式。它是一种敏捷开发方法的一种,通过将整个开发过程分为多个迭代周期,每个周期都会增加新的功能和特性,并在每个迭代周期结束后进行测试、反馈和修改。推三返一系统开发的核心思想是“推进三步,反馈一步”。
交易所系统开发详细项目丨案例规则丨方案设计丨步骤需求丨逻辑功能丨源码程序
Requirement analysis and planning: Collaborate with customers to clarify the requirements and goals of the coin exchange system. Understand the customer&#39;s business model, target user group, and currencies to be supported by the exchange, and develop a detailed demand plan.