作为核心与外围的交互中间平台,文件传输平台和交换平台可以合二为一,可以细分为二。从数据对系统的影响及问题定位,拆分开更好。

不同系统的数据交互,和联机批量类似,主要通过报文和文件进行信息传递。文件传输无非根据自己的业务功能,进行数据文件的生成,传送其他系统,或者解析其他系统数据文件,根据业务功能加工处理。也就是传出导入,也叫上传下传。系统根据自己关联的系统数量,及数据接口的复用情况确定是否建立系统前置平台。

联机批,批量作业,定时批量作业都有

文件的导入导出。其核心实现过程,统一规则,设置服务参数,编写底层处理逻辑,控制文件数据按照服务参数的导入导出。细节例如:

文件接口的存放目录,文件接口的命名,文件接口的格式,字段分隔符,一条记录结尾分隔符等,都需要设定统一的命名规范。大字段接口需要重点关注。

接口文件的服务方和消费方应该提前对接口字段定义类型,长度,约束进行统一确认。

有的文件每天只会生成一次,没有进行顺序号控制,那么生成第二次的时候就要考虑具体业务场景,是否有必要报错,还是直接覆盖处理。

导入导出表尽量设计成临时表,这样可以尽量摆脱对主表的影响,减少交互。主表处理多了容易造成锁,尤其是分布式数据库。

底层平台程序通过组织服务参数,拼接导数语句,通过调用数据导入导出工具或者应用服务,实现文件和数据库临时表的转换。

通过传输平台的配置文件,实现不同系统对特定接口文件的访问权限。

当一个服务一日多次,需要添加顺序号加以区分,顺序号一般设置9位,取到最大值的80%,可设置成从1继续开始。

处理数据文件,卸数最好每天增量处理,当然这时需要考虑数据一致性,如数据的更新,删除。一种方案是更新数据改成先删除,再写入,这样外围系统需要也先做一次删除动作,再增量写入新数据。

当一个服务存在多个作业步骤的时候,设置记录多个分步的作业状态,这样确保每一步都是正确完成的状态,再更新整个作业的状态。

当生成的数据文件没有数据的时候,需要根据自己业务场景,去判断直接生成一个大小为0的空文件,还是报错。另外上传导入的时候,空文件根据情况,是否有必要提前判断一下。

在文件导入导出的时候,需要提前分析确认好大数据量的情况应该如何处理。并且要对其耗时有一个预估。比如太大,处理时间过长,影响系统性能,甚至报错。

某些特殊场景还需要对文件预先转码。

传输平台一般对数据文件不需要保存备份很久。由对应各个接口系统根据自己情况备份一定天数的文件数据。提前协商确定表,接口文件清理周期。

判断文件完整性,一般都是通过ok标识文件。如果没有标识文件,应该确认其风险影响。

提前设计好异常数据短点处理机制,防止数据处理异常报错。有些业务场景允许作业重新运行,有些作业需要设计记录断点,断点续做机制。

提前设计一套恢复或者冲正测试工具,方便以后批量数据的测试比对。

支持一个外围连接,就是支持一项新的业务功能,就能为银行系统创收增利。或者是对风险的预测降低。

基础文件传输系统设计(系统前置文件传输平台)(1)

每天强制自己写些东西,拍摄制作视频,记录生活,思考探索学习一些东西。不断地学习,坚持下去,提高自己的认知,打开自己的思维,以后会有更多的方法和创新。

版权归作者踮起脚尖伸长双手所有,未经作者允许不得转载本文内容,否则将视为侵权;转载或者引用本文内容请注明来源及原作者;对于不遵守此声明或者其他违法使用本文内容者,本人依法保留追究权。欢迎大家对内容给予批评指正,请在下面留言,我会一一回答,谢谢大家的支持关照。认可的点赞支持!喜欢的话就点击关注!关注踮起脚尖伸长双手,关注正能量!

,