CN110879811B - 一种在运行时进行数据与程序一致性自检的实现方法 - Google Patents
一种在运行时进行数据与程序一致性自检的实现方法 Download PDFInfo
- Publication number
- CN110879811B CN110879811B CN201911127166.9A CN201911127166A CN110879811B CN 110879811 B CN110879811 B CN 110879811B CN 201911127166 A CN201911127166 A CN 201911127166A CN 110879811 B CN110879811 B CN 110879811B
- Authority
- CN
- China
- Prior art keywords
- data
- fields
- service
- added
- checking
- 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.)
- Active
Links
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 (1)
1.一种在运行时进行数据与程序一致性自检的实现方法,其特征在于,
包括:
1)代码里增加对数据结构变动的判断;
2)使用过程中增加字段均要求为非必填字段;
3)使用场景中字段不允许为空的,通过前台控制;
4)打开功能时进行补丁一致性自检,应用服务和数据服务不一致时提示用户;
当使用过程中数据结构发生变化时,数据服务和应用服务都要更新;
当***使用过程中需要修改数据结构时,在使用到该修改的代码实现中,增加对本次修改的判断;
若未改变即数据服务未成功更新,则维持原有处理逻辑;
若改变说明数据服务更新成功,使用修改后逻辑;
当使用过程中数据结构必须发生改变需要增加字段时,要求所增加字段在数据库中均设置为非必填字段;
当使用过程中数据结构必须发生改变增加字段并且该字段在使用场景中为必须字段时,数据库仍然要求字段为非必填,通过前台控制字段必填;
打开功能菜单时,对相应模块补丁更新情况进行检查,确认数据服务和应用服务是否更新一致,不一致时提示用户检查并更新补丁。
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 CN110879811A (zh) | 2020-03-13 |
CN110879811B true 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 (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107908962A (zh) * | 2017-12-05 | 2018-04-13 | 深圳鼎智通讯股份有限公司 | 应用于Android智能终端的自检方法 |
CN109241068A (zh) * | 2018-08-22 | 2019-01-18 | 中国平安人寿保险股份有限公司 | 前后台数据比对的方法、装置及终端设备 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8676753B2 (en) * | 2009-10-26 | 2014-03-18 | Amazon Technologies, Inc. | Monitoring of replicated data instances |
WO2012142854A1 (zh) * | 2011-04-18 | 2012-10-26 | 北京新媒传信科技有限公司 | 一种应用服务平台***及其实现方法 |
CN102185900B (zh) * | 2011-04-18 | 2013-07-17 | 北京新媒传信科技有限公司 | 一种应用服务平台***和一种开发应用服务的方法 |
CN105335436A (zh) * | 2014-08-11 | 2016-02-17 | 方正国际软件(北京)有限公司 | 一种升级数据库结构的方法和设备 |
CN104765788A (zh) * | 2015-03-23 | 2015-07-08 | 江苏南开之星软件技术有限公司 | 一种在线应用本地化数据实时对接实现方法 |
US10019241B2 (en) * | 2016-05-18 | 2018-07-10 | Successfactors, Inc. | 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 |
CN106506605B (zh) * | 2016-10-14 | 2020-09-22 | 华南理工大学 | 一种基于微服务架构的SaaS应用构建方法 |
JP6712112B2 (ja) * | 2017-02-28 | 2020-06-17 | 日本電信電話株式会社 | プログラマブルデバイス適用認証システム及び認証方法 |
CN110018822A (zh) * | 2019-04-16 | 2019-07-16 | 山东浪潮通软信息科技有限公司 | 一种自动生成微服务功能的方法及*** |
-
2019
- 2019-11-18 CN CN201911127166.9A patent/CN110879811B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107908962A (zh) * | 2017-12-05 | 2018-04-13 | 深圳鼎智通讯股份有限公司 | 应用于Android智能终端的自检方法 |
CN109241068A (zh) * | 2018-08-22 | 2019-01-18 | 中国平安人寿保险股份有限公司 | 前后台数据比对的方法、装置及终端设备 |
Non-Patent Citations (3)
Title |
---|
A Generic Replicated Data Type for Strong Eventual Consistency;Kevin De Porre 等;ACM;第1-3页 * |
数据完整性机制的研究与实现;王红;陈功平;;佛山科学技术学院学报(自然科学版)(01);第81-87页 * |
数据库应用程序中数据完整性的分层实现;韩峰;;信息与电脑(理论版)(20);第153、160页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110879811A (zh) | 2020-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4071610A1 (en) | Transaction processing method, apparatus, and device, and computer storage medium | |
CN110489310B (zh) | 一种记录用户操作的方法、装置、存储介质及计算机设备 | |
CN109299063B (zh) | 一种跨平台数据库迁移方法及*** | |
CN111158715A (zh) | 灰度发布控制方法及*** | |
US20130159385A1 (en) | System and Method for Performing Centralized Common Tasks for a Set of Functions | |
CN105760517A (zh) | 将数据从Oracle数据库迁移至DB2数据库的方法和装置 | |
US20210149682A1 (en) | System and method for implementing a filesystem agent management solution | |
CN111352706B (zh) | 一种数据访问方法、装置、设备及存储介质 | |
CN110879811B (zh) | 一种在运行时进行数据与程序一致性自检的实现方法 | |
CN106790067A (zh) | 基于mvc分层的业务处理方法、装置和*** | |
CN106775806A (zh) | 一种升级私有云应用的方法 | |
CN105721451A (zh) | 一种可拓展的Modbus协议解析方法及装置 | |
CN105337978A (zh) | 一种基于安全服务阻断的切面权限验证方法及*** | |
CN116149713B (zh) | 一种树型异构网络下的各级设备的程序升级方法及装置 | |
CN103885875A (zh) | 脚本验证装置及方法 | |
CN104484231A (zh) | 虚拟机切换***及切换方法 | |
CN105790975A (zh) | 一种业务处理操作的执行方法及装置 | |
CN114398376A (zh) | 一种数据处理方法、设备及可读存储介质 | |
CN111708517A (zh) | 一种基于图形化模式技术的定制化软件*** | |
CN107145570B (zh) | 基于数据库服务架构维护服务器的方法及*** | |
CN105488389A (zh) | 一种蜜罐数据库的更新和还原方法及*** | |
CN114442947B (zh) | 跨域桶删除方法、***、终端及存储介质 | |
CN113254063B (zh) | 一种灰度验证过滤器及过滤方法 | |
CN115729646A (zh) | 一种electron桌面应用执行脚本的实现方法及实现组件 | |
US20240126785A1 (en) | Failover of database sessions to a logical replica database |
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 |