Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1724552675)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 700, well_thread_format(array(25))
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1422, well_thread_read(1818818)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 22, well_thread_read_cache(1818818)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1724552675)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 700, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1422, well_thread_read(1818818)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 22, well_thread_read_cache(1818818)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
IBMSystemz系列灾难备份为金融业提供最佳选择-USB迷|专注于互联网分享
最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

IBMSystemz系列灾难备份为金融业提供最佳选择

IT圈 admin 87浏览 0评论

2024年8月25日发(作者:素裕)

IBM System z系列灾难备份为金融业提供最

佳选择

目前,一些银行需要其金融监管系统有两个位于不同地理位置、一年365天连续运行的数

据中心。其中一个为主数据中心,用于日常操作,另一个为灾难备份中心。第二个数据中心

要保持与主数据中心运行系统完全同步,以支持灾难恢复。IBM的大型机可以为有此需求的

用户提供了非常好的选择。

灾难备份解决方案的分析及选择

在推行计算机应用的过程中,银行已深深体会到系统可用性对银行业务的重要性。在保

证到本地机房的高可用性之外,他们还认识到:对于意外引起的包括自然灾害、设备损毁等

灾难性事件,仍然需要有相应的保护措施,以保障业务系统的连续运行,从而获得良好的企

业形象,保证社会的正常金融秩序。

事实上,对灾难进行预防建设是危机管理的一部分。据一项美国的研究报告显示,在灾

害之后,如果无法在14 天内恢复资讯作业,有75%的公司业务会完全停顿,43%再也无

法重新开业,因而有20%的企业在两年之内被迫宣告破产。另一方面,对于灾害所造成的

冲击分析显示,各行业最长可忍受的信息系统停机时间分别为:金融业-2天;销售业-3.3

天;制造业-4.9 天;保险业-5.6天。平均来看,一般行业可忍受的信息系统停机时间为

4.8天(资料来源:美国明尼苏达大学)。如果以营业收入的损失来看,金融业所遭受的损失

最严重,可高达每日营业收入的50%。

由此可见,金融业对于信息技术的依赖程度尤其甚于其它行业,更难以容忍因为电脑中

心停止服务所造成的惨重损失。同时,灾难备份的实现并非单纯的技术问题,其所涉及的将

会是整个企业体所可能遭遇的问题,因而大多数的企业决策者都意识到灾难备份计划对企业

的重要性。

灾难备份计划要求有周详的事前准备,尤其是需要分析灾难对业务的冲击程度并相应制

定灾难后的恢复策略,同时配合目前最新的信息技术,提出最佳的恢复方案。在系统备份计

划建立以后,还必须在事前反复测试,并随时调整、加以改进,完整的灾难备份解决方案才

得以建立。

据国际标准SHARE 78 的定义,灾难备份解决方案可根据以下列出的主要考虑方面所达

到的程度而分为七级,从低到高有七种不同层次的对应的灾难备份解决方案。银行的金融监

管系统可根据数据的重要性以及需要恢复的速度和程度,来设计选择并实现灾难恢复计划。

· 备份/恢复的范围

· 灾难备份计划的状态

· 生产中心与备份中心之间的距离

· 生产中心与备份中心之间是如何相互连接的

· 数据是怎样在两个中心之间传送的

· 允许有多少数据被丢失

· 怎样保证更新的数据在备份中心被更新

· 备份中心可以开始备份工作的能力

在1992年Anaheim的SHARE 78, M028这一会议报告中, 自动的异地远程恢复任务被

定义有七种层次:

1. Tier 0 - 无异地数据备份(No off-site Data)

Tier 0 被定义为没有信息存储的需求,没有建立备份硬件平台的需求,也没有发展应急

计划的需求,数据仅在本地进行备份恢复, 没有数据送往异地。这种方式是最为低成本的

灾难备份解决方案,但事实上这种灾难备份并没有真正灾难备份的能力,因为它的数据并没

有被送往远离本地的地方,而数据的恢复也仅是利用本地的记录。

2. Tier 1- PTAM车辆转送方式( Pickup Truck Access Method)

作为 Tier 1 的灾难备份方案需要设计一个应急方案,能够备份所需要的信息并将它存储

在异地,然后根据灾难备份的具体需求,有选择地建立备份平台, 但事先并不提供数据处

理的硬件平台。

PTAM是一种用于许多中心备份的标准方式,数据在完成写操作之后,将会被送到远离

本地的地方,同时具备有数据恢复的程序。在灾难发生后,一整套系统和应用安装动作需要

在一台未启动的计算机上重新完成。系统和数据将被恢复并重新与网络相连。这种灾难备份

方案相对来说成本较低(仅仅需要传输工具的消耗以及存储设备的消耗)。 但同时有难于管

理的问题,即很难知道什么样的数据在什么样的地方。一旦系统可以工作,标准的做法是首

先恢复关键应用,其余的应用根据需要恢复。这样的情况下,恢复是可能的,但需要一定的

时间,同时依赖于什么时候硬件平台能够被提供准备好。

3. Tier 2 - PTAM卡车转送方式+热备份中心 (PTAM+Hot Site)

Tier 2相当于是Tier 1再加上具有热备份能力中心的灾难备份。热备份中心拥有足够的

硬件和网络设备去支持关键应用的安装需求。对于十分关键的应用,在灾难发生的同时,必

须在异地有正运行着的硬件平台提供支持。这种灾难备份的方式依赖于用PTAM的方法去

将日常数据放在异地存储,当灾难发生的时候,数据再被移动到一个热备份的中心。虽然移

动数据到一个热备份中心增加了成本,但却明显降低了灾难备份的时间。

4. Tier 3 - 电子传送(Electronic Vaulting)

Tier 3 是在Tier 2的基础上用电子链路取代了车辆进行数据传送的灾难备份。接收方的

硬件平台必须与生产中心物理地相分离,在灾难发生后,存储的数据用于灾难备份。由于热

备份中心要保持持续运行,因此增加了成本。但确实是消除了运送工具的需要,提高了灾难

备份的速度。

5. Tier 4 - 活动状态的备份中心 (Active Secondary Site)

Tier 4 这种灾难备份要求两个中心同时处于活动状态并管理彼此的备份数据,允许备份

行动在任何一个方向发生。接收方硬件平台必须保证与另一方平台物理地相分离,在这种情

况下,工作负载可以在两个中心之间被分担,两个中心之间之间彼此备份。在两个中心之间,

彼此的在线关键数据的拷贝不停地相互传送着。在灾难发生时,需要的关键数据通过网络可

迅速恢复,通过网络的切换,关键应用的恢复时间也可降低到了小时级。

6. Tier 5 - 两中心两阶段确认 (Two-Site Two-Phase Commit)

Tier 5 是在Tier 4的基础上在镜像状态上管理着被选择的数据 (根据单一commit范围,

在本地和远程数据库中同时更新着数据),也就是说,在更新请求被认为是满意之前,Tier 5

需要生产中心与备份中心的数据都被更新。我们可以想象这样一种情景,数据在两个中心之

间相互映像,由远程two-phase commit来同步,因为关键应用使用了双重在线存储,所以

在灾难发生时,仅仅传送中的数据被丢失,恢复的时间被降低到了小时级。

7. Tier 6 - 零数据丢失 (Zero Data Loss)

Tier 6 可以实现零数据丢失率,同时保证数据立即自动地被传输到备份中心。Tier 6被

认为是灾难备份的最高的级别,在本地和远程的所有数据被更新的同时,利用了双重在线存

储和完全的网络切换能力。Tier 6是灾难备份中最昂贵的方式,也是速度最快的恢复方式,

恢复的时间被降低到了分钟级。对于Tier 6 的灾难备份解决方案,可以应用两种远程拷贝

技术来实现,即PPRC同步远程拷贝和XRC异步远程拷贝。

实现灾难备份计划的时候,用户首先要完成风险分析和业务冲击分析。IBM公司有多种

灾难备份解决方案帮助用户实现系统的高可用性和数据的完整性,用户可根据企业数据的重

要性以及用户需要灾难备份的速度和程度,来设计选择并实现自己的灾难备份计划。不同层

次的灾难备份解决方案所带来的设施投资大小和业务恢复的程度和速度是不一样的,具体的

灾难备份解决方案的业务恢复情况分析图如下表二所示。

表二: 灾难备份解决方案的业务恢复情况分析图

对于银行金融监管系统的业务连续运行的重要性和灾难恢复程度的要求,以及远程异地

两中心的实际需求,IBM公司建议采用位于Tier6 的GDPS/XRC的远程灾难备份方式,实

现异地远程的最高级别的灾难恢复解决方案。

由于并行系统综合体耦合时钟的连接不能超过40公里,同时40公里以内的距离对应用

响应时间的影响程度较轻,因此在同一个城市内的两灾难备份中心可以采用GDPS/PPRC

的方式,而在异地两个城市之间的灾难备份中心之间,一般采用GDPS/XRC的灾难恢复解

决方案。如下图五所示,

图五:GDPS/XRC的灾难恢复解决方案示意图

如上图五所示,IBM 公司的XRC远程拷贝是一个基于存储的解决方案,通过与并行系

统综合体的结合,实现了跨地域的GDPS/XRC灾难恢复解决方案,完全能够满足银行金融

监管系统的灾难备份需求。在生产中心发生事故时,IBM的GDPS/XRC技术能够提供有效

的灾难恢复解决方案。由于XRC远程拷贝技术可以实时地将数据传递到远程中心形成镜像

并保证数据写更新的串行性,所以XRC远程拷贝技术提供了易于使用的灾难恢复与数据镜

像支持。

系统数据移动部件SDM(system data mover)是灾难备份中心的OS/390或z/OS操作系

统的一个软件组成部件,由DFSMS提供其数据管理和拷贝的功能,需要运行在专有的一个

逻辑分区上。系统数据移动部件SDM必须同存储主卷与备卷相联系,当数据更新发生在主

卷的时候,SDM负责将这些更新拷贝到备卷,SDM将确保数据在备卷上的更新顺序与在主

卷上的更新顺序相同。GDPS控制程序K系统是基于Netview和System Automation软件

之上的一套GDPS控制程序,需运行在一个单独的分区中,负责GDPS/XRC日常操作和

在灾难发生后的一系列的系统恢复处理过程,实现应用的重启。

远程拷贝是灾难恢复和系统管理方案的一种选择,远程拷贝有两种实现方法,即PPRC

和 XRC,它们既有共同的特点,也有实现方法上的差别,它们都实现了:

· 保护数据不丢失

在PPRC 方式下, 生产中心和灾难备份中心的存盘数据不会丢失。在XRC 方式下, 仅

仅正在传输的数据可能会发生丢失现象,这种丢失现象意味着, 当生产中心失效的时候,更

新还未在灾难备份中心完成,但数据的丢失程度可通过 SDM以及它的参数的设置而减到最

小。

· 同步或异步的实时数据镜像

PPRC 实现的是同步的远程拷贝,XRC实现的是异步的远程拷贝。

· 应用的无关性

无论是PPRC还是XRC,都是在存储控制器远程拷贝的功能下来自动实现存储数据的镜

像,无论使用数据的应用是什么,镜像都会发生,因此不必为不同的应用提供各自的拷贝工

具。

· 支持所有的存储数据

远程拷贝是卷一级的数据镜像, 支持所有的存储数据,无论是应用数据还是系统数据, 都

能被镜像到灾难备份中心。

· SMS and non-SMS 支持

远程拷贝提供了对SMS管理的和非SMS管理的数据的实时拷贝。

· 独立的虚拟运行

在数据写入主存储器并拷贝到远程存储器的过程中,不需要任何应用级用户的介入。

可以看出,IBM 的XRC远程拷贝灾难恢复解决方案在保证应用响应时间的前提下,确

保了最高级别的数据完整性与有效性,同时可用于工作负载移动和数据迁移。它提供了基于

存储的、远距离的、实时的、异步的、与应用无关的数据镜像,允许应用在生产中心用通常

的方法更新它的数据,直到更新结束后才将更新的数据传送到灾难备份中心。这样的异步操

作使得对生产中心应用系统的性能冲击减到最小。

根据银行金融监管系统的具体情况和需求,IBM推荐其XRC远程拷贝技术来实现

GDPS/XRC的灾难恢复解决方案。

灾难备份解决方案的设计和实现

下图六为银行金融监管系统的总体灾难备份解决方案,系统将采用全国一个总生产中心、

一个总灾难备份中心的方案,即在日常业务中,全国所有的交易都送往全国总生产中心 - 北

京生产中心进行处理,同时北京生产中心的生产数据将通过CNT等通道扩展设备和多条高

速通讯线路(E1/E3)实时在ABC灾难备份中心进行异步的镜像,数据的延迟时间将取决于两

地点之间通讯线路的带宽和传输数据量的多少以及远程拷贝的定义。

网络将具有北京生产中心和ABC灾难备份中心之间的快速切换能力,一旦发生灾难事件

导致北京生产中心无法运行,则ABC灾难备份中心将接管全国的生产业务,直到北京生产

中心恢复,才切换网络,恢复北京生产中心的生产地位。

在日常情况下,ABC灾难备份中心除了保证数据的实时完整备份外,主要进行大量业务

测试和应用开发的工作。若ABC中心发生灾难,则北京生产中心的备用测试分区将临时接

管ABC中心的测试工作,同时等待ABC中心恢复正常。ABC灾难备份中心的数据和北京

生产中心的数据都将在异地进行数据的互为镜像,实现异地两中心的共同工作,且互为备份。

图六:银行金融监管系统的总体灾难备份解决方案

在XRC的支持下,我们可通过定义一定的时间间隔或生产数据更新量门限值,来启动北

京和ABC两地的数据镜像备份。启动间隔的长短取决于希望恢复的数据完整性的要求、现

实带宽的条件以及通讯线路投资预算。备份启动间隔越短,异地备份中心的数据滞后于生产

中心的时间就越短,生产中心突发灾难时可能导致的数据丢失就越少,灾难备份中心恢复丢

失数据所用的时间就越短。对于间隔时间长且流量大的业务数据进行异地备份,应根据实际

情况提前仔细规划,准确计算所需带宽和要求的通讯线路,同时兼顾租用通讯线路的成本。

通过仔细的计划,可以使得北京生产中心和ABC灾难备份中心之间的数据同步延迟时间为

分钟级。

当灾难发生时,如果数据还来不及传送到灾难备份中心,则正在传输的数据可能会发生

丢失现象,数据的丢失程度可通过 SDM及其参数的设置而减到最小。在灾难发生后,需要

有一系列的灾难恢复处理过程,保证数据的完整性,保证用户的通讯线路快速从生产中心切

换到灾难备份中心,最终实现应用的重启和整个灾难备份中心的生产功能。如果网络的切换

能够在一小时内完成,有客户记录在两小时内完成其关键业务的恢复。事实上,灾难恢复过

程的时间长短与用户的应用和网络的实际情况有着密切的关系,以上所提到的灾难恢复时间

仅供参考。下图七为XRC远程拷贝的实现步骤。

图七:XRC远程拷贝的实现步骤

上图七中的系统数据移动部件SDM(system data mover)是OS/390或z/OS操作系统的

一个软件组成部件,XRC的操作是在数据要求更新到磁盘时,立即把数据写到磁盘控制器

的快速缓存器,同时发出指令要求拷贝同样的数据到远程的磁盘。但是XRC 不要求异地的

磁盘控制器回答完成拷贝的信息,即可以马上把数据直接写到本地磁盘,应用的响应时间可

以不受影响。

GDPS/XRC所实现的灾难恢复远远超过了Share78 所定义的7层灾难恢复, 它通过对

跨异地的主机处理器的管理,存储和网络资源的管理实现了超强的整体IT系统的灾难恢复。

GDPS/XRC管理的不仅是物理的资源,同时包括应用环境和数据的完整性。当发生事故时,

GDPS优化了生产中心和灾难备份中心切换时系统重新启动的能力,因此保证了灾难恢复

时间窗口。

2024年8月25日发(作者:素裕)

IBM System z系列灾难备份为金融业提供最

佳选择

目前,一些银行需要其金融监管系统有两个位于不同地理位置、一年365天连续运行的数

据中心。其中一个为主数据中心,用于日常操作,另一个为灾难备份中心。第二个数据中心

要保持与主数据中心运行系统完全同步,以支持灾难恢复。IBM的大型机可以为有此需求的

用户提供了非常好的选择。

灾难备份解决方案的分析及选择

在推行计算机应用的过程中,银行已深深体会到系统可用性对银行业务的重要性。在保

证到本地机房的高可用性之外,他们还认识到:对于意外引起的包括自然灾害、设备损毁等

灾难性事件,仍然需要有相应的保护措施,以保障业务系统的连续运行,从而获得良好的企

业形象,保证社会的正常金融秩序。

事实上,对灾难进行预防建设是危机管理的一部分。据一项美国的研究报告显示,在灾

害之后,如果无法在14 天内恢复资讯作业,有75%的公司业务会完全停顿,43%再也无

法重新开业,因而有20%的企业在两年之内被迫宣告破产。另一方面,对于灾害所造成的

冲击分析显示,各行业最长可忍受的信息系统停机时间分别为:金融业-2天;销售业-3.3

天;制造业-4.9 天;保险业-5.6天。平均来看,一般行业可忍受的信息系统停机时间为

4.8天(资料来源:美国明尼苏达大学)。如果以营业收入的损失来看,金融业所遭受的损失

最严重,可高达每日营业收入的50%。

由此可见,金融业对于信息技术的依赖程度尤其甚于其它行业,更难以容忍因为电脑中

心停止服务所造成的惨重损失。同时,灾难备份的实现并非单纯的技术问题,其所涉及的将

会是整个企业体所可能遭遇的问题,因而大多数的企业决策者都意识到灾难备份计划对企业

的重要性。

灾难备份计划要求有周详的事前准备,尤其是需要分析灾难对业务的冲击程度并相应制

定灾难后的恢复策略,同时配合目前最新的信息技术,提出最佳的恢复方案。在系统备份计

划建立以后,还必须在事前反复测试,并随时调整、加以改进,完整的灾难备份解决方案才

得以建立。

据国际标准SHARE 78 的定义,灾难备份解决方案可根据以下列出的主要考虑方面所达

到的程度而分为七级,从低到高有七种不同层次的对应的灾难备份解决方案。银行的金融监

管系统可根据数据的重要性以及需要恢复的速度和程度,来设计选择并实现灾难恢复计划。

· 备份/恢复的范围

· 灾难备份计划的状态

· 生产中心与备份中心之间的距离

· 生产中心与备份中心之间是如何相互连接的

· 数据是怎样在两个中心之间传送的

· 允许有多少数据被丢失

· 怎样保证更新的数据在备份中心被更新

· 备份中心可以开始备份工作的能力

在1992年Anaheim的SHARE 78, M028这一会议报告中, 自动的异地远程恢复任务被

定义有七种层次:

1. Tier 0 - 无异地数据备份(No off-site Data)

Tier 0 被定义为没有信息存储的需求,没有建立备份硬件平台的需求,也没有发展应急

计划的需求,数据仅在本地进行备份恢复, 没有数据送往异地。这种方式是最为低成本的

灾难备份解决方案,但事实上这种灾难备份并没有真正灾难备份的能力,因为它的数据并没

有被送往远离本地的地方,而数据的恢复也仅是利用本地的记录。

2. Tier 1- PTAM车辆转送方式( Pickup Truck Access Method)

作为 Tier 1 的灾难备份方案需要设计一个应急方案,能够备份所需要的信息并将它存储

在异地,然后根据灾难备份的具体需求,有选择地建立备份平台, 但事先并不提供数据处

理的硬件平台。

PTAM是一种用于许多中心备份的标准方式,数据在完成写操作之后,将会被送到远离

本地的地方,同时具备有数据恢复的程序。在灾难发生后,一整套系统和应用安装动作需要

在一台未启动的计算机上重新完成。系统和数据将被恢复并重新与网络相连。这种灾难备份

方案相对来说成本较低(仅仅需要传输工具的消耗以及存储设备的消耗)。 但同时有难于管

理的问题,即很难知道什么样的数据在什么样的地方。一旦系统可以工作,标准的做法是首

先恢复关键应用,其余的应用根据需要恢复。这样的情况下,恢复是可能的,但需要一定的

时间,同时依赖于什么时候硬件平台能够被提供准备好。

3. Tier 2 - PTAM卡车转送方式+热备份中心 (PTAM+Hot Site)

Tier 2相当于是Tier 1再加上具有热备份能力中心的灾难备份。热备份中心拥有足够的

硬件和网络设备去支持关键应用的安装需求。对于十分关键的应用,在灾难发生的同时,必

须在异地有正运行着的硬件平台提供支持。这种灾难备份的方式依赖于用PTAM的方法去

将日常数据放在异地存储,当灾难发生的时候,数据再被移动到一个热备份的中心。虽然移

动数据到一个热备份中心增加了成本,但却明显降低了灾难备份的时间。

4. Tier 3 - 电子传送(Electronic Vaulting)

Tier 3 是在Tier 2的基础上用电子链路取代了车辆进行数据传送的灾难备份。接收方的

硬件平台必须与生产中心物理地相分离,在灾难发生后,存储的数据用于灾难备份。由于热

备份中心要保持持续运行,因此增加了成本。但确实是消除了运送工具的需要,提高了灾难

备份的速度。

5. Tier 4 - 活动状态的备份中心 (Active Secondary Site)

Tier 4 这种灾难备份要求两个中心同时处于活动状态并管理彼此的备份数据,允许备份

行动在任何一个方向发生。接收方硬件平台必须保证与另一方平台物理地相分离,在这种情

况下,工作负载可以在两个中心之间被分担,两个中心之间之间彼此备份。在两个中心之间,

彼此的在线关键数据的拷贝不停地相互传送着。在灾难发生时,需要的关键数据通过网络可

迅速恢复,通过网络的切换,关键应用的恢复时间也可降低到了小时级。

6. Tier 5 - 两中心两阶段确认 (Two-Site Two-Phase Commit)

Tier 5 是在Tier 4的基础上在镜像状态上管理着被选择的数据 (根据单一commit范围,

在本地和远程数据库中同时更新着数据),也就是说,在更新请求被认为是满意之前,Tier 5

需要生产中心与备份中心的数据都被更新。我们可以想象这样一种情景,数据在两个中心之

间相互映像,由远程two-phase commit来同步,因为关键应用使用了双重在线存储,所以

在灾难发生时,仅仅传送中的数据被丢失,恢复的时间被降低到了小时级。

7. Tier 6 - 零数据丢失 (Zero Data Loss)

Tier 6 可以实现零数据丢失率,同时保证数据立即自动地被传输到备份中心。Tier 6被

认为是灾难备份的最高的级别,在本地和远程的所有数据被更新的同时,利用了双重在线存

储和完全的网络切换能力。Tier 6是灾难备份中最昂贵的方式,也是速度最快的恢复方式,

恢复的时间被降低到了分钟级。对于Tier 6 的灾难备份解决方案,可以应用两种远程拷贝

技术来实现,即PPRC同步远程拷贝和XRC异步远程拷贝。

实现灾难备份计划的时候,用户首先要完成风险分析和业务冲击分析。IBM公司有多种

灾难备份解决方案帮助用户实现系统的高可用性和数据的完整性,用户可根据企业数据的重

要性以及用户需要灾难备份的速度和程度,来设计选择并实现自己的灾难备份计划。不同层

次的灾难备份解决方案所带来的设施投资大小和业务恢复的程度和速度是不一样的,具体的

灾难备份解决方案的业务恢复情况分析图如下表二所示。

表二: 灾难备份解决方案的业务恢复情况分析图

对于银行金融监管系统的业务连续运行的重要性和灾难恢复程度的要求,以及远程异地

两中心的实际需求,IBM公司建议采用位于Tier6 的GDPS/XRC的远程灾难备份方式,实

现异地远程的最高级别的灾难恢复解决方案。

由于并行系统综合体耦合时钟的连接不能超过40公里,同时40公里以内的距离对应用

响应时间的影响程度较轻,因此在同一个城市内的两灾难备份中心可以采用GDPS/PPRC

的方式,而在异地两个城市之间的灾难备份中心之间,一般采用GDPS/XRC的灾难恢复解

决方案。如下图五所示,

图五:GDPS/XRC的灾难恢复解决方案示意图

如上图五所示,IBM 公司的XRC远程拷贝是一个基于存储的解决方案,通过与并行系

统综合体的结合,实现了跨地域的GDPS/XRC灾难恢复解决方案,完全能够满足银行金融

监管系统的灾难备份需求。在生产中心发生事故时,IBM的GDPS/XRC技术能够提供有效

的灾难恢复解决方案。由于XRC远程拷贝技术可以实时地将数据传递到远程中心形成镜像

并保证数据写更新的串行性,所以XRC远程拷贝技术提供了易于使用的灾难恢复与数据镜

像支持。

系统数据移动部件SDM(system data mover)是灾难备份中心的OS/390或z/OS操作系

统的一个软件组成部件,由DFSMS提供其数据管理和拷贝的功能,需要运行在专有的一个

逻辑分区上。系统数据移动部件SDM必须同存储主卷与备卷相联系,当数据更新发生在主

卷的时候,SDM负责将这些更新拷贝到备卷,SDM将确保数据在备卷上的更新顺序与在主

卷上的更新顺序相同。GDPS控制程序K系统是基于Netview和System Automation软件

之上的一套GDPS控制程序,需运行在一个单独的分区中,负责GDPS/XRC日常操作和

在灾难发生后的一系列的系统恢复处理过程,实现应用的重启。

远程拷贝是灾难恢复和系统管理方案的一种选择,远程拷贝有两种实现方法,即PPRC

和 XRC,它们既有共同的特点,也有实现方法上的差别,它们都实现了:

· 保护数据不丢失

在PPRC 方式下, 生产中心和灾难备份中心的存盘数据不会丢失。在XRC 方式下, 仅

仅正在传输的数据可能会发生丢失现象,这种丢失现象意味着, 当生产中心失效的时候,更

新还未在灾难备份中心完成,但数据的丢失程度可通过 SDM以及它的参数的设置而减到最

小。

· 同步或异步的实时数据镜像

PPRC 实现的是同步的远程拷贝,XRC实现的是异步的远程拷贝。

· 应用的无关性

无论是PPRC还是XRC,都是在存储控制器远程拷贝的功能下来自动实现存储数据的镜

像,无论使用数据的应用是什么,镜像都会发生,因此不必为不同的应用提供各自的拷贝工

具。

· 支持所有的存储数据

远程拷贝是卷一级的数据镜像, 支持所有的存储数据,无论是应用数据还是系统数据, 都

能被镜像到灾难备份中心。

· SMS and non-SMS 支持

远程拷贝提供了对SMS管理的和非SMS管理的数据的实时拷贝。

· 独立的虚拟运行

在数据写入主存储器并拷贝到远程存储器的过程中,不需要任何应用级用户的介入。

可以看出,IBM 的XRC远程拷贝灾难恢复解决方案在保证应用响应时间的前提下,确

保了最高级别的数据完整性与有效性,同时可用于工作负载移动和数据迁移。它提供了基于

存储的、远距离的、实时的、异步的、与应用无关的数据镜像,允许应用在生产中心用通常

的方法更新它的数据,直到更新结束后才将更新的数据传送到灾难备份中心。这样的异步操

作使得对生产中心应用系统的性能冲击减到最小。

根据银行金融监管系统的具体情况和需求,IBM推荐其XRC远程拷贝技术来实现

GDPS/XRC的灾难恢复解决方案。

灾难备份解决方案的设计和实现

下图六为银行金融监管系统的总体灾难备份解决方案,系统将采用全国一个总生产中心、

一个总灾难备份中心的方案,即在日常业务中,全国所有的交易都送往全国总生产中心 - 北

京生产中心进行处理,同时北京生产中心的生产数据将通过CNT等通道扩展设备和多条高

速通讯线路(E1/E3)实时在ABC灾难备份中心进行异步的镜像,数据的延迟时间将取决于两

地点之间通讯线路的带宽和传输数据量的多少以及远程拷贝的定义。

网络将具有北京生产中心和ABC灾难备份中心之间的快速切换能力,一旦发生灾难事件

导致北京生产中心无法运行,则ABC灾难备份中心将接管全国的生产业务,直到北京生产

中心恢复,才切换网络,恢复北京生产中心的生产地位。

在日常情况下,ABC灾难备份中心除了保证数据的实时完整备份外,主要进行大量业务

测试和应用开发的工作。若ABC中心发生灾难,则北京生产中心的备用测试分区将临时接

管ABC中心的测试工作,同时等待ABC中心恢复正常。ABC灾难备份中心的数据和北京

生产中心的数据都将在异地进行数据的互为镜像,实现异地两中心的共同工作,且互为备份。

图六:银行金融监管系统的总体灾难备份解决方案

在XRC的支持下,我们可通过定义一定的时间间隔或生产数据更新量门限值,来启动北

京和ABC两地的数据镜像备份。启动间隔的长短取决于希望恢复的数据完整性的要求、现

实带宽的条件以及通讯线路投资预算。备份启动间隔越短,异地备份中心的数据滞后于生产

中心的时间就越短,生产中心突发灾难时可能导致的数据丢失就越少,灾难备份中心恢复丢

失数据所用的时间就越短。对于间隔时间长且流量大的业务数据进行异地备份,应根据实际

情况提前仔细规划,准确计算所需带宽和要求的通讯线路,同时兼顾租用通讯线路的成本。

通过仔细的计划,可以使得北京生产中心和ABC灾难备份中心之间的数据同步延迟时间为

分钟级。

当灾难发生时,如果数据还来不及传送到灾难备份中心,则正在传输的数据可能会发生

丢失现象,数据的丢失程度可通过 SDM及其参数的设置而减到最小。在灾难发生后,需要

有一系列的灾难恢复处理过程,保证数据的完整性,保证用户的通讯线路快速从生产中心切

换到灾难备份中心,最终实现应用的重启和整个灾难备份中心的生产功能。如果网络的切换

能够在一小时内完成,有客户记录在两小时内完成其关键业务的恢复。事实上,灾难恢复过

程的时间长短与用户的应用和网络的实际情况有着密切的关系,以上所提到的灾难恢复时间

仅供参考。下图七为XRC远程拷贝的实现步骤。

图七:XRC远程拷贝的实现步骤

上图七中的系统数据移动部件SDM(system data mover)是OS/390或z/OS操作系统的

一个软件组成部件,XRC的操作是在数据要求更新到磁盘时,立即把数据写到磁盘控制器

的快速缓存器,同时发出指令要求拷贝同样的数据到远程的磁盘。但是XRC 不要求异地的

磁盘控制器回答完成拷贝的信息,即可以马上把数据直接写到本地磁盘,应用的响应时间可

以不受影响。

GDPS/XRC所实现的灾难恢复远远超过了Share78 所定义的7层灾难恢复, 它通过对

跨异地的主机处理器的管理,存储和网络资源的管理实现了超强的整体IT系统的灾难恢复。

GDPS/XRC管理的不仅是物理的资源,同时包括应用环境和数据的完整性。当发生事故时,

GDPS优化了生产中心和灾难备份中心切换时系统重新启动的能力,因此保证了灾难恢复

时间窗口。

Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1738360585)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1738360585)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1738373286)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1738373286)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1740140889)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1740140889)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1740168424)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1740168424)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1740406187)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1740406187)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1740918067)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1740918067)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1741053470)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1741053470)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1741179605)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1741179605)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1741228459)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1741228459)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1741228858)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1741228858)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1742245483)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1742245483)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1742411537)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1742411537)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1742534909)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1742534909)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1742569888)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1742569888)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1742636502)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1742636502)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1743658506)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1743658506)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1743735596)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1743735596)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1743815201)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1743815201)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1743883325)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1743883325)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1744026369)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1744026369)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论