收藏 分销(赏)

第4章:TUXEDO应用系统的管理.doc

上传人:w****g 文档编号:4123131 上传时间:2024-07-30 格式:DOC 页数:11 大小:53.04KB
下载 相关 举报
第4章:TUXEDO应用系统的管理.doc_第1页
第1页 / 共11页
第4章:TUXEDO应用系统的管理.doc_第2页
第2页 / 共11页
第4章:TUXEDO应用系统的管理.doc_第3页
第3页 / 共11页
第4章:TUXEDO应用系统的管理.doc_第4页
第4页 / 共11页
第4章:TUXEDO应用系统的管理.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、 第四章:TUXEDO应用系统的管理 4。1 TUXEDO提供的系统管理工具当一个TUXEDO应用系统投入运行时,TUXEDO系统管理员要对它进行监控,管理,根据系统的运行情况做相应的参数调整.有时候还要动态修改配置,发布新的服务等等,TUXEDO提供了很丰富的管理工具和管理编程接口。可以很方便的完成这些管理任务.下面对管理工具和管理编程接口分别进行介绍。TUXEDO提供以下管理工具1基于WEB的图形化管理工具:用普通的 WEB 浏览器比如Netscape或Microsoft 的 Explorer可以从Internet/Intranet 的任意一 个节点来运行该图形界面管理工具。对系统进行管理

2、配置。2. 基于字符界面的管理工具:TUXEDO提供TMADMIN,DMADMIN等命令行管理工具。TUXEDO提供以下管理编程接口1. MIB编程接口:TUXEDO 提供C 语言的管理API ,用户能够用此编写出适合自己特殊需求的管理工具2. 通过SNMP与其他管理工具(HP OpenView 等)互联, TUXEDO 的关联产品 BEA MANAGER通过网络管理协议 SNMP和TUXEDO 的管理信息库 MIB 可以把TUXEDO 对应用程序的管理集成到一般的网络、 数据库系统管理工具中,比如 OpenView, NetView 等.TUXEDO应用系统的管理任务通过以上的管理工具,TU

3、XEDO可以有效地管理消息流程和服务请求,启动和停止服务进程,根据变化的负荷复制服务进程,动态地广播、撤消服务进程中的服务。并且可以在客户不用退出执行的情况下,动态的增加新的服务器、服务器组、服务器以及服务。利用命令行或图形管理界面TUXEDO还可以动态的进行负载平衡,数据依赖路由、网络用户的管理、队列的管理、存取资源管理器以及系统的启动、重启和恢复。4。2 TUXEDO应用系统的启动和关闭TUXEDO应用系统的启动在UNIX平台上,只有该TUXEDO应用系统的管理员或超级用户可以执行启动命令tmboot。tmboot 只能在MASTER服务器上执行,或在BACKUP服务器上指定b参数运行。可

4、用它启动一个TUXEDO应用系统或该应用系统的一部分(如:某个GROUP或某个SERVER).该命令有很多参数,它的用法如下,tmboot w(ait) n(oexec) -q(uiet) -y -c(heck) d1 A | -B loc M S | l lmid | -s aout | g grpname i srvid | -g grpname -i srvid-o sequence# T group-name E envlabel -e errcmd如果tmboot不指定任何参数,那么它将启动所有的管理进程,在UBBCONFIG中的SERVERS中定义的所有的SERVER进程,在GRO

5、UPS中定义的TMS进程.参数说明:-l lmid 启动在服务器的逻辑名为LMID的服务器上的所有进程 g grpname 启动GROUP名为grpname中的所有进程 -i srvid 启动SRVID为srvid的服务进程 -s aout 启动名为AOUT的服务进程 -o sequence 启动SEQUENCE= sequence的服务进程 -S 启动SERVERS节中定义的所有服务进程-A 启动所有的管理进程 -b 在没有把BACKUP服务器变为MASTER服务器的情况下,从BACKUP服务器上启动整个TUXEDO应用系统 -B lmid 在服务器的逻辑名为lmid。的服务器上启动BBL进

6、程 -M 在MASTER服务器上启动在该服务器上的所有管理进程.如果该TUXEDO应用系统是SHM模式,则启动BBL进程如果该TUXEDO应用系统是MP模式,则启动DBBL,BBL,BRIDGE进程-d1 把服务进程启动时的命令行参数显示出来,一般在用sdb等调试工具调试服务进程时使用T grpname 启动GROUP名字为rpname中的所有TMS进程e command 如果某个进程启动失败,执行command参数指定的命令,该命令可以时一个可执行程序,SHELL脚本等y 对启动该TUXEDO应用系统的所有进程的提示回答YESc 计算该TUXEDO应用系统在运行时对IPC资源的最小需求并输出

7、如果一个TUXEDO应用启动失败,可能的原因有:1 MAXACCESSES,MAXSERVERS,MAXSERVICES参数的值太大,超过了系统的IPC资源的限制,可减少它们的值在重试.2 在该TUXEDO应用系统中要用到TLOG,当该TLOG文件还没有创建,应该先创建该TLOG文件。3 在UBBCONFIG中指定的IPCKEY的值与其他系统的值冲突.可改变IPCKEY的值再试一下。TUXEDO应用系统的关闭在UNIX平台上,只有该TUXEDO应用系统的管理员或超级用户可以执行该命令.tmshutdown 只能在MASTER服务器上执行,或指定P参数.可用它启动一个TUXEDO应用系统或该应用

8、系统的一部分(如:某个GROUP或某个SERVER)。该命令有很多参数,它的用法如下:tmshutdown wdelayk TERM|KILL n(oexec) -q(uiet) -y -c(lt_ign) A -B loc | M -S | l lmid -s aout -g grpname i srvid | g grpname -i srvid o sequence- T group-name -E envlabelR(elocate) Hlmid -P lmid如果tmshutdown不指定任何参数,那么它将关闭所有的管理进程,在UBBCONFIG中的SERVERS中定义的所有的SER

9、VER进程,在GROUPS中定义的TMS进程。参数说明: -l lmid 关闭在服务器的逻辑名为LMID的服务器上的所有进程 -g grpname 关闭GROUP名为grpname中的所有进程 -i srvid 关闭SRVID为srvid的服务进程 -s aout 关闭名为AOUT的服务进程 -o sequence 关闭SEQUENCE= sequence的服务进程 S 关闭SERVERS节中定义的所有服务进程A 关闭所有的管理进程 B lmid 在服务器的逻辑名为lmid。的服务器上关闭BBL进程 -M 在MASTER服务器上关闭在该服务器上的所有管理进程。如果该TUXEDO应用系统是SHM

10、模式,则关闭BBL进程如果该TUXEDO应用系统是MP模式,则关闭DBBL,BBL,BRIDGE进程T grpname 关闭GROUP名字为rpname中的所有TMS进程y 对关闭该TUXEDO应用系统的所有进程的提示回答YES-w delay 立即挂起所以要关闭的SERVER,并在过了delay秒之后马上关闭这些服务进程。系统将给这些服务进程先发送SIGTERM信号,然后发送SIGKILL信号。因为SIGKILL信号不能被捕捉,所以这些服务进程马上死掉退出。不管该进程当前所做的操作,如果该进程当前正在对BB进行操作,可能会破坏BB的结构-k TERM | KILL 立即挂起所以要关闭的SER

11、VER,系统将给这些服务进程先发送SIGTERM信号或发送SIGKILL信号关闭这些服务进程。因为SIGKILL信号不能被捕捉,所以这些服务进程马上死掉退出.不管该进程当前所做的操作,如果该进程当前正在对BB进行操作,可能会破坏BB的结构。如果是发送SIGTERM信号,则是执行正常的关闭。R 只有在进行系统迁移时才用到,必须和l 或 g一起使用,关闭指定的服务进程但不把它从BB中删除。-c 管理BBL进程,即使现在有客户端与该TUXEDO应用系统连接P lmid 在lmid指定的机器上执行该命令,把该服务器从整个TUXEDO应用系统中分离出去。如果该UNIX平台上,TUXEDO应用服务器出了很

12、严重的错误,无法正常管理该TUXEDO应用系统,可用下面的脚本把该TUXEDO系统管理员用户所拥有的IPC资源全部清空,这样就可以把该TUXEDO应用系统关闭,名为rmipc的脚本内容如下ipcrm ipcs grep 1 |awk print ” 1 ” $2如果TUXEDOO系统管理员用户名为tuxedo,用下面的命令执行rmipc tuxedo4。3 用Tmadmin管理TUXEDO应用系统tmadmin是TUXEDO提供的一个命令行管理工具,可用它对TUXEDO应用系统进行监控,管理,动态修改配置等操作。它的使用分3种情况:1. 当TUXEDO应用系统已启动时,可以使用所有的命令,2。

13、 当TUXEDO应用系统没有启动时,但有TUXCONFIG文件存在时,可以使用部分命令3。 当TUXEDO应用系统没有启动时,TUXCONFIG文件也不存在时,可以使用更少的命令使用方法:在UNIX平台下,直接执行tmadmin,在NT下,要在DOS方式下,执行tmadmin。执行tmadmin后,进入如下所示的界面,可直接在后输入TMADMIN的提供命令进行各种操作.D:tuxdemoconntmadmintmadmin Copyright (c) 1996 BEA Systems, Inc。Portions Copyright 19861997 RSA Data Security, Inc

14、.All Rights Reserved。Distributed under license by BEA Systems, Inc。TUXEDO is a registered trademark.No bulletin board exists。 Entering boot mode。常用的命令有:1辅助类命令help 会显示所有的操作命令的描述 helpaborttrans (abort) -yes g groupname tranindexadvertise (adv) q qaddress -g groupname -i srvid | g groupname i srvid ser

15、vice:funcbbclean (bbc) machinebbinternals (bbi)。.。.help 命令名,显示该操作命令的帮助。如显示命令crlog的帮助: help crlogcrlog (crlg) m machine-Creates the DTP transaction log for the named or default machine.verbose: 要不要显示更详细的信息 verboseverbose now off.page: 要不要分页显示 pagePagination now off。2查询类命令psr 命令会显示该系统所有的SERVER的信息 psrP

16、rog Name Queue Name Grp Name ID RqDone Load Done Current Service- - - - - - -BBL.exe 123456 simple 0 0 0 ( IDLE )call。exe 00001.00002 GROUP1 2 0 0 ( IDLE )WSL。exe 00001。01116 GROUP1 1116 0 0 ( IDLE )RqDone:该SERVER当前已接受的请求数Load Done: RqDone负载因子(负载因子的默认值为50)Current Service:当前在处理CLIENT端请求的SERVICE,如果都没有

17、为IDLEpsc 命令会显示该系统所有的SERVICE的信息pscService Name Routine Name Prog Name Grp Name ID Machine Done Status- - - - - - - -CALL CALL call。exe GROUP1 2 simple 96 AVAILDone:该SERICE当前已接受的请求数,如在上面的例子中,SERVCIE:CALL已被调用了96次Status: 该SERVICE当前所处的状态.pq 命令会显示该系统的队列情况 pqProg Name Queue Name # Serve Wk Queued Queued Av

18、e。 Len Machine- - - - - -simpserv。exe simpserv 10 550 11 10。1 simpleBBL.exe 123456 1 0 0 0。0 simpleWSL。exe 00001。00112 1 0 0 0。0 simplequeued: 当前队列中还没有处理的请求数wk queued = queued*负载因子(负载因子的默认值为50)pclt:当前连接到该TUXEDO应用系统的客户端的状态 pclt LMID User Name Client Name Time Status Bgn/Cmmt/Abrt- - - - - -simple NT

19、WSH 0:16:39 IDLE 0/0/0simple NT WSH 0:16:39 IDLE 0/0/0simple NT tmadmin 0:15:46 IDLE 0/0/0 LMID: TUXEDO服务器的逻辑名User Name:CLIENT端的User NameClient Name: CLIENT端的Client NameTime:该CLIENT已连接的时间Status:该CLIENT当前的状态Bgn/Cmmt/Abrt: 到现在为止,该CLIENT已发起,提交,回滚的事务数。3动态修改配置:suspend:可以把某个GROUP,SERVER的SERVICE或某个SERVICE挂

20、起 suspend s TOUPPERService TOUPPER suspended on 1 queue.resume: 可以把已挂起的某个GROUP,SERVER的SERVICE或某个SERVICE重新投入可用 resume -s TOUPPERService TOUPPER resumed (unsuspended) on 1 queue。Adv: 可以发布某个SERVICE adv g GROUP1 -i 2 CALLCALL advertised on 1 server on queue 00001。00002。Unadv: 取消某个SERVICE的发布 unadv -g GRO

21、UP1 i 2 CALLCALL removed from 1 server。changeload:可以修改某个SERVICE的负载因子 changeload g GROUP1 i 2 -s CALL 401 entry changed。changepriority 可以修改某个SERVICE的优先级。 changepriority g GROUP1 i 2 s CALL 801 entry changed.管理类的命令:bbclean (bbc) machine:当BBL进行定时检测时,它会自动把死掉的SERVER进程所占用的资源释放掉,如果该SERVER可以重起,那么BBL会重启该SERV

22、ER.如果要手工进行这种操作,可以用bbclean (bbc) machine命令。如果不指定服务器名machine,默认为当前服务器,如果时在DBBL所在的服务器上进行该操作,那么是对该系统中所有的服务器进行该操作。pclean (pcl) machine清空某台服务器上的资源,如果machine参数必须指定,如果该服务器没有被分离出去(PARTITIONED)那么它同bbclean 命令的效果一样。如果该服务器已被分离出去(PARTITIONED)那么该操作把machine参数指定的服务器从没有被分离出去(NONPARTITIONED)的服务器上的BB中清除。broadcast -m ma

23、chine -u username -c cltname text该某一个或某一些类型的用户发消息。如下面的命令给所有的CLIENT发消息:”the tuxedo will shutdown in 3 minutebroadcast ”the tuxedo will shutdown in 3 minute”master (m) yes在某台服务器上的TMADMIN中执行该命令,将使该服务器成为MASTER服务器。如果MASTER服务器因出错被分离出去(PARTITIONED),可在BACKUP服务器上执行该命令,使该BACKUP服务器成为MASTER服务器.会在该服务器上启动DBBL,该TU

24、XEDO应用系统也可以继续运行下去.当原来的MASTER服务器已正确恢复,可在原来的MASTER服务器上执行该命令,会使它重新成为MASTER服务器。DBBL会从BACKUP服务器上迁移到该服务器上。reconnect (rco) non-partitioned_machine1 partitioned_machine2.如果因网络故障使某台服务器被被分离出去(PARTITIONED),BRIDGE 进程会自动与该TUXEDO应用系统中的其他服务器进行重新连接,如果重新连接失败,那么可以用该命令与该TUXEDO应用系统中的其他服务器进行重连.4。4 用图形化管理工具管理TUXEDO应用系统启动

25、图形化管理工具的方法:在使用TUXEDO的基于WEB的图形化管理工具时,要先启动两个进程,tuxwsvr和wlisten。Tuxwsvr的l参数指定该进程的侦听端口,i参数指定它的图形化管理配置文件路径。Wlisten:i参数指定它的图形化管理配置文件路径.例子:1。 tuxwsvr -l /127.0.0.1:9999 i d:tuxedo65udataobjtuxwsvr.ini3. wlisten i d:tuxedo65udataobjwebguiwebgui.ini4. 在IE中输入地址: http:/127.0.0.1:9999/webguitop。html5. 在出现的页面中点击

26、下面的按钮:6. 在出现的页面中输入在安装TUXEDO时输入的TLISTEN密码,该密码保存在文件$TUXDIR/UDATAOBJ/tlisten。pw中。7. 如果密码正确,会显示TUXEDO的图形化管理工具如下在图形化界面中做管理TUXEDO应用系统的管理是以域(DOMAIN)为单位的,一个TUXEDO应用系统就是一个DOMAIN,所以先要打开或创建一个DOMAIN,然后在该图形化界面中对它做各种管理操作。打开一个DOMAIN的方法:在DOMAIN菜单下选择OPEN,会出现如下界面,输入要管理的DOMAIN的DOMAIN ID及该DOMAIN的配置文件路径。如果输入正确就进入如下的界面,可

27、在该界面种进行各种管理配置工作,具体的操作我们不介绍,请参考TUXEDO的联机文档.4.5 动态改变TUXEDO应用系统的配置如果一个TUXEDO应用系统已在运行,这时如果修改了UBBCONFIG中的配置,要把它编译成TUXCONFIG时会提示:D:tuxdemoconntmloadcf y ubbsimpleCMDTUX_CAT:883: ERROR: tmloadcf cannot run on an active node即:不能在TUXEDO应用系统已运行的时候,编译配置文件,在开发阶段,可以把该TUXEDO应用系统先停下来,再执行TMLOADCF操作,然后重新启动该TUXEDO应用系

28、统,使对UBBCONFIG的修改生效,但如果是在一个生产系统中,一般是不允许停机的,这时如果要对TUXEDO应用系统的配置进行修改,如发布新的服务等,只能通过别的办法,主要的方法有以下三种:1、 用TMCONFIG命令在TUXEDO中提供了TMCONFIG命令,用于动态修改TUXEDO应用系统的配置。它的使用方法如下:1.设置环境变量EDITOR: set EDITOR=C:WINNTNOTEPAD。EXE2.在DOS方式下执D:tuxdemoconntmconfig Section: 1) RESOURCES, 2) MACHINES, 3) GROUPS 4) SERVERS 5)SERV

29、ICES 6) NETWORK 7) ROUTING q) QUIT 9) WSL 10) NETGROUPS 11) NETMAPS 1: 43.如果要对SERVER节进行操作,选择44.在要进行的操作种选择4Operation: 1) FIRST 2) NEXT 3) RETRIEVE 4) ADD 5) UPDATE 6) CLEAR BUFFER 7) QUIT 1: 45.在提示是否进文本编辑器进行编辑时,选择YEnter editor to add/modify fields n? y6。 在文本编辑器种输入(这些属性的含义请参考TUXEDO的联机文档):TA_SERVERNAME

30、D:TUXDEMOSIMPAPPsimperv.exeTA_SRVGRPGROUP1TA_SRVID667.保存并关闭该文本编辑器8.在下面的提示种选择Y,使改变生效.Perform operation y? yReturn value TAUPDATEDBuffer contents:TA_OPERATION 4TA_SECTION 3TA_STATUS Update completed successfullyTA_OCCURS 1TA_BASESRVID 66TA_GRACE 86400TA_GRPNO 1TA_MAX 1TA_MAXGEN 1TA_MIN 1TA_RPPERM 438T

31、A_RQPERM 438TA_SEQUENCE 10006TA_SRVID 66TA_STATE INACTIVETA_CLOPT -ATA_CONV NTA_ENVFILETA_RCMDTA_REPLYQ NTA_RESTART NTA_RQADDR 00001.00066TA_SERVERNAME D:TUXDEMOSIMPAPPsimpserv.exeTA_SYSTEM_ACCESS FASTPATHTA_SRVGRP GROUP19。 如果TA_STATE为INACTIVE,可选择4Section: 1) RESOURCES, 2) MACHINES, 3) GROUPS 4) SER

32、VERS 5)SERVICES 6) NETWORK 7) ROUTING q) QUIT 9) WSL 10) NETGROUPS 11) NETMAPS 4: 410.选择5,对配置进行修改Operation: 1) FIRST 2) NEXT 3) RETRIEVE 4) ADD 5) UPDATE 6) CLEAR BUFFER 7) QUIT 4: 511。 在提示是否进文本编辑器进行编辑时,选择YEnter editor to add/modify fields n? y12。 在文本编辑器把INACTIVE改为ACTIVE,保存修改并退出该文本编辑器13.在下面的提示种选择Y,使

33、改变生效。Perform operation y? yReturn value TAUPDATEDBuffer contents:TA_OPERATION 5TA_SECTION 3TA_STATUS Update completed successfullyTA_OCCURS 1TA_BASESRVID 66TA_GRACE 86400TA_GRPNO 1TA_MAX 1TA_MAXGEN 1TA_MIN 1TA_RPPERM 438TA_RQPERM 438TA_SEQUENCE 10006TA_SRVID 66TA_STATE ACTIVETA_CLOPT -ATA_CONV NTA_E

34、NVFILETA_RCMDTA_REPLYQ NTA_RESTART NTA_RQADDR 00001。00066TA_SERVERNAME D:TUXDEMOconnsimpserv.exeTA_SYSTEM_ACCESS FASTPATHTA_SRVGRP GROUP114。选择q退出Section: 1) RESOURCES, 2) MACHINES, 3) GROUPS 4) SERVERS 5)SERVICES 6) NETWORK 7) ROUTING q) QUIT 9) WSL 10) NETGROUPS 11) NETMAPS 4: q15。如果要把修改保存到UBBCONFI

35、G文件中,在下面的提示中输入UBBCONFIG的文件名。Unload TUXCONFIG file into backup UBB y? n到此,就通过tmconfig动态增加了一个SERVER。2、 通过图形化管理工具具体的操作方法,请参考TUXEDO的联机文档。3、如果时在UNIX平台下,可以这么做: 1。 修改UBBCONFIG, 2。 把TUXCONFIG文件删除或改名 3。 用TMLOADCF y UBBCONFIG把UBBCONFIG编译成TUXCONFIG 4。 TMBOOT y 重起该TUXEDO应用系统,新的配置可以自动生效。 注意:这种方法不是对所有的修改都可以,如把原来不

36、是MSSQ的改为MSSQ,就无法通过这种方式 4.6 TUXEDO的文件系统TUXEDO的文件系统简介TUXEDO用自己的文件系统管理二进制配置文件TUXCONFIG,BDMCONFIG,全局事务日志文件TLOG,以及QUEUE SPACE。一个TUXEDO文件系统有一个VTOC(VOLUME TABLE OF CONTENTS),它记录存在于在UDL(UNIVERSAL DEVICE LIST)中登记的设备上的文件。UDL中包含TUXEDO文件系统中每个设备的物理存储位置及大小等信息.一个TUXEDO文件系统中可以有多个设备(DEVICE),每个设备对应一个文件。在UDL中对应一条记录.TU

37、XCONFIG,TLOG在TUXEDO文件系统中都是一个设备,所有的QUEUE SPACE也对应一个设备。注意: 在这里设备实际就是文件。TUXEDO文件系统的创建,管理TUXEDO在TMADMIN中或图形化管理工具中创建,管理文件系统,下面对这些命令进行介绍:lidl z device_name devindx:显示一个设备的UDL(universal device list)的内容-z device_name:为该设备的名字,也就是一个文件名。它可在环境变量FSCONFIG中设置, lidl z d:qsampletuxconfiguniversal device index 0: nam

38、e: d:qsampletuxconfig start: 0 size: 3624 free space map: 1 entry used 47 availablelivtoc (livtoc) z device_name 显示一个设备的VTOC(VOLUME TABLE OF CONTENTS)的内容 livtoc -z d:qsampletuxconfigVolume Table of Contents on d:qsampletuxconfig: 0: VTOC: Device 0 Offset 0 Pages 7 1: UDL: Device 0 Offset 7 Pages 28

39、2: _RESOURCE_SECT: Device 0 Offset 35 Pages 3 3: _MACHINES_SECT: Device 0 Offset 38 Pages 40 4: _GROUPS_SECT: Device 0 Offset 78 Pages 40 5: _SERVERS_SECT: Device 0 Offset 118 Pages 40 6: _SERVICES_SECT: Device 0 Offset 158 Pages 20 7: _ROUTING_SECT: Device 0 Offset 178 Pages 100 8: _NETWORK_SECT: D

40、evice 0 Offset 278 Pages 20 9: _MIBPERMS_SECT: Device 0 Offset 298 Pages 210: _NETGROUPS_SECT: Device 0 Offset 300 Pages 2 livtoc z d:qsampleQUEVolume Table of Contents on d:qsampleQUE: 0: VTOC: Device 0 Offset 0 Pages 7 1: UDL: Device 0 Offset 7 Pages 28 2: QSPACE.00: Device 0 Offset 35 Pages 3000crdl z devicename -b blocks创建一个设备文件(DEVICE LIST)devicename:为该设备的名字,也就是一个文件名。blocks:该设备的大小,默认为1000,单位为块(BLOCK)如:crdl d:qsampleQUE 0 5000initdl -z devicename -yes devindx重新初始化一个设备文件的内容.dsdl -z devicename yes devindx删除一个设备文件

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服