调试了下作者提供的样例,记录下步骤,基于0.4.x版本。
先修改下hostname
原本:
server:
port: 7000
eureka:
instance:
hostname: inst1
client:
registerWithEureka: false
fetchRegistry: false
serviceUrl:
defaultZone: http://inst1:7000/eureka/
修改为:
server:
port: 7000
eureka:
instance:
hostname: localhost
client:
registerWithEureka: false
fetchRegistry: false
serviceUrl:
defaultZone: http://localhost:7000/eureka/
涉及provider,consumer 在2个项目中,都有个config包,下面的配置文件中,把数据库修改为自己的mysql地址。
provider项目: 创建数据库inst01
CREATE TABLE tb_account_one (
acct_id varchar(16),
amount double(10, 2),
frozen double(10, 2),
PRIMARY KEY (acct_id)
) ENGINE=InnoDB;
insert into tb_account_one (acct_id, amount, frozen) values('1001', 10000.00, 0.00);
consumer项目: 创建数据库inst02
CREATE TABLE tb_account_two (
acct_id varchar(16),
amount double(10, 2),
frozen double(10, 2),
PRIMARY KEY (acct_id)
) ENGINE=InnoDB;
insert into tb_account_two (acct_id, amount, frozen) values('2001', 10000.00, 0.00);
2个库都创建bytejta表:
CREATE TABLE `bytejta` (
`xid` varchar(32) NOT NULL,
`gxid` varchar(40) DEFAULT NULL,
`bxid` varchar(40) DEFAULT NULL,
`ctime` bigint(20) DEFAULT NULL,
PRIMARY KEY (`xid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
由于前面修改了eureka的地址,2个项目要注册到eureka上,也都需要修改下:
client:
serviceUrl:
defaultZone: http://localhost:7000/eureka/
之前都是注册到http://inst1:7000/eureka/上,可能无法识别。在本地跑demo,建议修改为localhost,减少不必要的麻烦。
启动顺序:
然后调试即可。