产品相关 之 LiveTransfer

由于此贴太难维护,所以此贴暂时停止更新,我会通过邮件草稿中的版本来进行更新,当内容全面时在更新这里。

T1.  Run Build:

1.Install LiveTransfer build

2.注册AcitveMQ成服务(如果ActivMQ版本没变,可以直接使用以前安装的)

3.配置SiteExtractManager.properties,TableLoaderManager.properties文件:指定sourceJDBC,targetDbGUID

4.运行存储过程:dbo.dsUpdateXfrPid 传递值1,可以增加当然的PID,触发Transfer

查看Queue/Topic可以登陆:http://localhost:8161/admin/queues.jsp

 T2. PO6.1 DB TransferOracle:

1.Install Oracle Client  2. Configure JMSProvider in EA 3.Create Task and run it

 T3. Run in DebugEnvironment:

1.Import projects according to XFR doc: how to

2.Configure 3 files: SiteExtractManager.properties/TableExtractManager.properties/TableLoaderManager.properties

3.Run configurationà refer to “how to”

 T4. ActiveMQ Cluster:

1.Configure ActiveMQ.xml

        <networkConnectors>

            <!-- by default just autodiscover the other brokers -->

            <networkConnectorname="default-nc" uri="multicast://default?group=rex"/>

            <!-- Example of a staticconfiguration:

            <networkConnectorname="host1 and host2"uri="static://(tcp://host1:61616,tcp://host2:61616)"/>

            -->

        </networkConnectors>

2.Configure 2 properites:   SiteExtractManager.properties||TableLoaderManager.properties

    Change like loaderBrokerURL=failover://(tcp://119.119.113.8:61616,tcp://119.119.118.14:61616)?initialReconnectDelay=100

No need to change internalBrokerOutsideURL

 T5. 重复测试的办法:

1.把ODS数据库重新初始化

2.更新targetGUID

3.删除Prod中 XFR_EXTRACT_LOG记录

 T6. System Design & CodeLogic:

AAA1: SiteExtractManager

SiteExtractManager.main(...)

            ---->sem.initialize(liveTransferHome);//SiteExtractManagerConfig

            ----->new Tread(sem).start()....

 

SiteExtractManager.run()---statedepend

            ==0==>STATE_INITIALIZING

                        ---->state =doInitializing();

            ==1==>STATE_RUNNING

                        ---->state =doRunning();

            ==2==>STATE_SHUTDOWN

                        ----->shutdown()

 

SiteExtractManager.doInitializing()   --->TableLoaderManagerConfig

            ------>getSourceDatabaseConfiguration();

            ------>initializeJMSEnvironment(...)  //create JMS connection

            ------>initializeSharedCache(...)   //JBossCache

            ------>ReceiptBoxCache.getInstance().removeAllRecipts();

            ------>initializeSEMState();

            ------>confirmRegistration()

            ------>confirmTableExtractManagerPresence()

            return STATE_RUNNING;

 

AAA2:TableExtractorManager

TableExtractorManager.run()---statedepend

            ==0==>STATE_INITIALIZING

                        ---->state =doInitializing();

            ==1==>STATE_RUNNING

                        ---->state =doRunning();

            ==2==>STATE_SHUTDOWN

                        ----->shutdown()

            ==3==>STATE_WAITING_FOR_CONFIGURATION

                        ----->doWaitForConfiguration();

 

AAA3: TableLoaderManager

TableLoaderManager.run()---statedepend

            ==0==>STATE_INITIALIZING

                        ---->state =doInitializing();

            ==1==>STATE_RUNNING

                        ---->state =doRunning();

            ==2==>STATE_SHUTDOWN

                        ----->shutdown()

 

====>TableLoader> Runable

            STATE_INITIALIZING / STATE_RUNNING /STATE_SHUTDOWN

======================

queueis the destination the message will be sent to.

Wedefine queue name like: typeName+ "_" + sourceGUID

 

F1. Related SQL:

select site_guid from SITE_INFO where db_role = 'Local'

select * from XFR_CURRENT_PID

F2. Reference Materials:

1.XFR install guild.

2.“How to”


你可能感兴趣的:(tcp,activemq,jms,Build,reference,产品)