CN110879811A - 一种在运行时进行数据与程序一致性自检的实现方法 - Google Patents
一种在运行时进行数据与程序一致性自检的实现方法 Download PDFInfo
- Publication number
- CN110879811A CN110879811A CN201911127166.9A CN201911127166A CN110879811A CN 110879811 A CN110879811 A CN 110879811A CN 201911127166 A CN201911127166 A CN 201911127166A CN 110879811 A CN110879811 A CN 110879811A
- Authority
- CN
- China
- Prior art keywords
- data
- service
- field
- added
- data service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000008569 process Effects 0.000 claims abstract description 13
- 230000008859 change Effects 0.000 claims abstract description 6
- 230000004048 modification Effects 0.000 claims description 4
- 238000012986 modification Methods 0.000 claims description 4
- 229920003169 water-soluble polymer Polymers 0.000 description 4
- 230000006872 improvement Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种在运行时进行数据与程序一致性自检的实现方法,属于计算机管理技术领域,本发明包括:代码里增加对数据结构变动的判断;使用过程中增加字段均要求为非必填字段;使用场景中字段不允许为空的,通过前台控制;打开功能时进行补丁一致性自检,应用服务和数据服务不一致时提示用户。可规避和解决数据服务和应用服务的不一致。
Description
技术领域
本发明涉及计算机管理技术,尤其涉及一种在运行时进行数据与程序一致性自检的实现方法。
背景技术
随着计算机管理系统的广泛应用,很多大型管理系统将应用服务和数据服务分离开,.一方面提高网站访问速度,分解服务器访问压力,减轻访问拥堵情况。不会出现用户访问量大增而使服务器卡死;另一方面安全性能高。可用其它应用连上来即可用。应用程序一般暴露在外网,数据库可不能也暴露在外网,这样即使黑客攻击了网站,也不会攻击到数据库。确保数据安全。但是随之而来的问题是根据对系统的实际需求,会有多个数据实例对应一个应用服务的情况,这样就会导致应用服务和数据服务不一致。如何规避和解决数据服务和应用服务的不一致,成为急需解决的问题。
发明内容
本发明提出了一种在运行时进行数据与程序一致性自检的实现方法,解决应用服务和数据服务分开部署时,服务更新不一致问题。
本发明的技术方案是:
一种计算机管理系统在运行时进行数据与程序一致性自检的实现方法,具体方法包括:
1)代码里增加对数据结构变动的判断;
2)使用过程中增加字段均要求为非必填字段;
3)使用场景中字段不允许为空的,通过前台控制;
4)打开功能时进行补丁一致性自检,应用服务和数据服务不一致时提示用户。
进一步的,优选为,
当使用过程中数据结构发生变化时,数据服务和应用服务都需要更新,为了规避服务更新不一致的情况,在代码中使用该数据结构变化时,增加对数据库结构变换的判断,若数据库中已存在该调整,使用调整后的逻辑,若未调整说明数据服务未成功更新,保留原有逻辑。此方法有效适用于修改数据结构时,更新了应用服务未更新数据服务的情况。
进一步的,优选为,
当使用过程中数据结构必须发生改变需要增加字段时,要求所增加字段在数据库中均为未非必填。此方法可以有效规避数据服务已经更新,应用服务未更新导致的数据库保存失败的问题。
进一步的,优选为,
当使用过程中数据结构必须发生改变增加字段并且该字段在使用场景中为必须字段时,数据库仍然要求字段为非必填,通过前台控制字段必填。既保证了场景的需要,又可以规避数据服务更新应用服务未更新的情况产生的报错。
进一步的,优选为,
打开功能时,检查当前模块补丁更新情况,确认数据服务和应用服务是否更新一致,不一致时提示用户检查并更新补丁。
本步骤是对前面方法的补充,上一方法前台控制字段必填,虽然可以规避报错,但是当应用服务未更新时,前台为必填,是不会成功保存的。结合本方法,提示出因为补丁更新不一致导致,大大节省了用户排查问题原因的时间成本。
另外,本步骤可以规避程序中增加方法或者方法参数改变时,应用服务和构件不一致的情况产生的报错。
本发明的有益效果是
1、本发明解决了数据服务器和应用服务器分离存在的服务更新不一致问题;
2、通过对数据库结构、客户端前台设置的联合控制,规避更新数据服务未更新应用服务导致的不一致问题的同时满足各种应用场景的实际需求;
3、通过程序源码增加判断,解决应用服务更新未更新数据服务问题;
4、通过增加补丁更新情况自检,解决程序源码和构件不一致情况,同时为其他更新不一致情况提供“双重保险”。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明为一种计算机管理系统在运行时进行数据与程序一致性自检的实现方法,从代码容错处理、数据库设计、程序运行时补丁自检等几个方面进行处理,避免和解决应用服务和数据服务不一致造成的软件错误。代码中增加对使用过程中数据结构变化是否更新的判断,避免因更新了应用服务未更新数据服务造成的报错;对于使用过程中必须新增的字段,数据库设计避免使用必填字段,对于必填字段通过前端进行输入控制,从而规避更新了数据服务应用服务未更新造成必填字段未赋值的错误;打开功能时对本模块补丁进行自检,应用服务和数据服务不一致时,提醒用户将补丁更新一致。
具体包括:
1)代码里增加对数据结构变动的判断;
2)使用过程中增加字段均要求为非必填字段;
3)使用场景中字段不允许为空的,通过前台控制;
4)打开功能时进行补丁一致性自检,应用服务和数据服务不一致时提示用户。
当系统使用过程中需要修改数据结构时,在使用到该修改的代码实现中,增加对本次修改的判断,若未改变即数据服务未成功更新,则维持原有处理逻辑,若改变说明数据服务更新成功,使用修改后逻辑。
为了避免数据服务更新成功,应用服务未更新导致的数据保存时必填数据为空引起的保存报错问题,将使用过程中增加的字段全部设置为非必填字段。
对于增加字段在实际应用中为必填的情况,数据库仍然设置为非必填,通过前台设置必填项进行控制,有效避免应用服务未更新的情况。
打开功能菜单时,对相应模块补丁更新情况进行检查,确定数据服务和应用服务是否更新一致,若不一致提示用户使用该功能前先将补丁更新一致。
对补丁进行自检,给数据结构变化时检查数据服务和应用服务一致性提供了双保险。同时,可以为代码中增加方法或者方法参数变化时,程序与构件一致性检查提供保障。
下面用实例具体说明
核算组织定义要求增加国家或地区字段,必填。
1.数据结构调整sql,该字段数据库设计为允许为空:
if exists(select 1 from sysobjects where name='LSBZDW'and type='U')and not exists(select 1from syscolumns where name='COUNTRYORAREA'and id=object_id('LSBZDW'))
ALTER TABLE LSBZDW ADD COUNTRYORAREA varchar(36);
2.前台界面增加字段并设置字段必填。
3.代码中增加是否存在该字符的判断:
COUNTRYORAREA=unitRow.Table.Columns.Contains("COUNTRYORAREA")?unitRow["COUNTRYORAREA"].ToString():""
界面加载进行补丁自检,应用服务和数据服务更新不一致提示给用户。
以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (8)
1.一种在运行时进行数据与程序一致性自检的实现方法,其特征在于,
包括:
1)代码里增加对数据结构变动的判断;
2)使用过程中增加字段均要求为非必填字段;
3)使用场景中字段不允许为空的,通过前台控制;
4)打开功能时进行补丁一致性自检,应用服务和数据服务不一致时提示用户。
2.根据权利要求1所述的方法,其特征在于,
当使用过程中数据结构发生变化时,数据服务和应用服务都要更新。
3.根据权利要求2所述的方法,其特征在于,
当系统使用过程中需要修改数据结构时,在使用到该修改的代码实现中,增加对本次修改的判断。
4.根据权利要求3所述的方法,其特征在于,
若未改变即数据服务未成功更新,则维持原有处理逻辑。
5.根据权利要求3所述的方法,其特征在于,
若改变说明数据服务更新成功,使用修改后逻辑。
6.根据权利要求1所述的方法,其特征在于,
当使用过程中数据结构必须发生改变需要增加字段时,要求所增加字段在数据库中均设置为非必填字段。
7.根据权利要求6所述的方法,其特征在于,
当使用过程中数据结构必须发生改变增加字段并且该字段在使用场景中为必须字段时,数据库仍然要求字段为非必填,通过前台控制字段必填。
8.根据权利要求1所述的方法,其特征在于,
打开功能菜单时,对相应模块补丁更新情况进行检查,确认数据服务和应用服务是否更新一致,不一致时提示用户检查并更新补丁。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911127166.9A CN110879811B (zh) | 2019-11-18 | 2019-11-18 | 一种在运行时进行数据与程序一致性自检的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911127166.9A CN110879811B (zh) | 2019-11-18 | 2019-11-18 | 一种在运行时进行数据与程序一致性自检的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110879811A true CN110879811A (zh) | 2020-03-13 |
CN110879811B CN110879811B (zh) | 2023-05-23 |
Family
ID=69729758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911127166.9A Active CN110879811B (zh) | 2019-11-18 | 2019-11-18 | 一种在运行时进行数据与程序一致性自检的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110879811B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110099146A1 (en) * | 2009-10-26 | 2011-04-28 | Mcalister Grant Alexander Macdonald | Monitoring of replicated data instances |
CN102185900A (zh) * | 2011-04-18 | 2011-09-14 | 北京新媒传信科技有限公司 | 一种应用服务平台系统和一种开发应用服务的方法 |
CN103283209A (zh) * | 2011-04-18 | 2013-09-04 | 北京新媒传信科技有限公司 | 一种应用服务平台系统及其实现方法 |
CN104765788A (zh) * | 2015-03-23 | 2015-07-08 | 江苏南开之星软件技术有限公司 | 一种在线应用本地化数据实时对接实现方法 |
CN105335436A (zh) * | 2014-08-11 | 2016-02-17 | 方正国际软件(北京)有限公司 | 一种升级数据库结构的方法和设备 |
CN106506605A (zh) * | 2016-10-14 | 2017-03-15 | 华南理工大学 | 一种基于微服务架构的SaaS应用构建方法 |
US20170337040A1 (en) * | 2016-05-18 | 2017-11-23 | Sap Se | Extendable Framework for Developing Applications |
US20180101586A1 (en) * | 2016-10-10 | 2018-04-12 | Facebook, Inc. | Indexing and retrieval of a large number of data objects |
CN107908962A (zh) * | 2017-12-05 | 2018-04-13 | 深圳鼎智通讯股份有限公司 | 应用于Android智能终端的自检方法 |
JP2018142253A (ja) * | 2017-02-28 | 2018-09-13 | 日本電信電話株式会社 | プログラマブルデバイス適用認証システム及び認証方法 |
CN109241068A (zh) * | 2018-08-22 | 2019-01-18 | 中国平安人寿保险股份有限公司 | 前后台数据比对的方法、装置及终端设备 |
CN110018822A (zh) * | 2019-04-16 | 2019-07-16 | 山东浪潮通软信息科技有限公司 | 一种自动生成微服务功能的方法及系统 |
-
2019
- 2019-11-18 CN CN201911127166.9A patent/CN110879811B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110099146A1 (en) * | 2009-10-26 | 2011-04-28 | Mcalister Grant Alexander Macdonald | Monitoring of replicated data instances |
CN102185900A (zh) * | 2011-04-18 | 2011-09-14 | 北京新媒传信科技有限公司 | 一种应用服务平台系统和一种开发应用服务的方法 |
CN103283209A (zh) * | 2011-04-18 | 2013-09-04 | 北京新媒传信科技有限公司 | 一种应用服务平台系统及其实现方法 |
CN105335436A (zh) * | 2014-08-11 | 2016-02-17 | 方正国际软件(北京)有限公司 | 一种升级数据库结构的方法和设备 |
CN104765788A (zh) * | 2015-03-23 | 2015-07-08 | 江苏南开之星软件技术有限公司 | 一种在线应用本地化数据实时对接实现方法 |
US20170337040A1 (en) * | 2016-05-18 | 2017-11-23 | Sap Se | Extendable Framework for Developing Applications |
US20180101586A1 (en) * | 2016-10-10 | 2018-04-12 | Facebook, Inc. | Indexing and retrieval of a large number of data objects |
CN106506605A (zh) * | 2016-10-14 | 2017-03-15 | 华南理工大学 | 一种基于微服务架构的SaaS应用构建方法 |
JP2018142253A (ja) * | 2017-02-28 | 2018-09-13 | 日本電信電話株式会社 | プログラマブルデバイス適用認証システム及び認証方法 |
CN107908962A (zh) * | 2017-12-05 | 2018-04-13 | 深圳鼎智通讯股份有限公司 | 应用于Android智能终端的自检方法 |
CN109241068A (zh) * | 2018-08-22 | 2019-01-18 | 中国平安人寿保险股份有限公司 | 前后台数据比对的方法、装置及终端设备 |
CN110018822A (zh) * | 2019-04-16 | 2019-07-16 | 山东浪潮通软信息科技有限公司 | 一种自动生成微服务功能的方法及系统 |
Non-Patent Citations (6)
Title |
---|
JIM BAUWENS 等: "Constraining the eventual in eventual consistency" * |
KEVIN DE PORRE 等: "A Generic Replicated Data Type for Strong Eventual Consistency", ACM * |
张维;: "基于Web服务的工程数据库系统的设计与实现" * |
王红;陈功平;: "数据完整性机制的研究与实现", 佛山科学技术学院学报(自然科学版) * |
王赞;郜健;陈翔;傅浩杰;樊向宇;: "自动程序修复方法研究述评" * |
韩峰;: "数据库应用程序中数据完整性的分层实现", 信息与电脑(理论版) * |
Also Published As
Publication number | Publication date |
---|---|
CN110879811B (zh) | 2023-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4071610A1 (en) | Transaction processing method, apparatus, and device, and computer storage medium | |
CN109766330B (zh) | 数据分片方法、装置、电子设备及存储介质 | |
US9594619B2 (en) | Robust hardware fault management system, method and framework for enterprise devices | |
US20120005680A1 (en) | Processing a batched unit of work | |
CN111324417B (zh) | 一种Kubernetes集群的组件控制方法、装置、电子设备和介质 | |
CN113434327B (zh) | 一种故障处理系统、方法、设备和存储介质 | |
CN110955448A (zh) | 智能合约分离方法、合约处理方法、装置、设备及介质 | |
US20130159385A1 (en) | System and Method for Performing Centralized Common Tasks for a Set of Functions | |
CN111158715A (zh) | 灰度发布控制方法及系统 | |
US11544245B2 (en) | Transaction processing method, apparatus, and device and computer storage medium | |
US11740886B2 (en) | Algorithm update method and apparatus | |
US11537476B2 (en) | Database management system backup and recovery management | |
CN113886590A (zh) | 数据汇总方法、装置、计算机设备及存储介质 | |
CN110879811A (zh) | 一种在运行时进行数据与程序一致性自检的实现方法 | |
CN111722946A (zh) | 分布式事务处理方法、装置、计算机设备及可读存储介质 | |
CN116149713B (zh) | 一种树型异构网络下的各级设备的程序升级方法及装置 | |
CN113326503A (zh) | 一种证书管理方法及计算设备 | |
CN111416857A (zh) | 客户端崩溃处理方法、装置、系统、设备和存储介质 | |
CN110489208B (zh) | 虚拟机配置参数核查方法、系统、计算机设备和存储介质 | |
CN113364806B (zh) | 一种服务接口迁移的校验方法及装置 | |
CN114553859A (zh) | 一种bmc配置管理方法、装置、电子设备及存储介质 | |
CN108462713B (zh) | 一种客户端进行可信验证的方法和系统 | |
CN106776052A (zh) | 共享资源访问方法和装置 | |
US9348701B2 (en) | Method and apparatus for failure recovery in a machine-to-machine network | |
US20190116198A1 (en) | Method For Model Checking On The Design Of Security checking software Of Safety-critical Distributed Storage System |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230428 Address after: No. 1036, Shandong high tech Zone wave road, Ji'nan, Shandong Applicant after: Inspur Genersoft Co.,Ltd. Address before: 250100 No. 2877 Kehang Road, Sun Village Town, Jinan High-tech District, Shandong Province Applicant before: SHANDONG INSPUR GENESOFT INFORMATION TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |