eureka注册,选择正确网卡、注册ip而不是主机名
选择正确网卡:
使用 bootstrap.yml 在引导阶段来选择网卡
spring:
cloud:
inetutils:
ignored-interfaces: # 忽略的网卡
- VM.*
preferred-networks: # 要是用的网卡的网段
- 192.168.0…+
###b 注册ip而不是主机名:
使用 application.yml 配置
eureka:
instance:
prefer-ip-address: true # 使用ip进行注册
instance-id:
s
p
r
i
n
g
.
c
l
o
u
d
.
c
l
i
e
n
t
.
i
p
−
a
d
d
r
e
s
s
:
{spring.cloud.client.ip-address}:
spring.cloud.client.ip−address:{spring.application.name}😒{server.port}
订单流量削峰
导入项目到 rabbitmq 工程:
课前资料/elasticsearch/pd-商城项目案例.zip 把 pd\pd-web 文件夹,解压缩到 rabbitmq 工程目录
pd-web\pom.xml 拖拽到 idea
修改 springboot 版本: 2.3.2.RELEASE
导入项目: 在编辑器中右键 – add as maven project
application.yml 数据库连接密码
导入数据库:
sqlyog,右键点数据库的连接 – 从sql转储文件导入 – 选择 pd-web 文件夹的 pd.sql
如果导入失败,执行四条sql,增大mysql的缓存区,再重新导入
set global max_allowed_packet=100000000;
set global net_buffer_length=100000;
SET GLOBAL interactive_timeout=28800000;
SET GLOBAL wait_timeout=28800000;
清除数据:
delete from pd_user;
delete from pd_order;
delete from pd_order_item;
启动 pd-web:
右键执行 RunPdAPP
启动配置中,设置 working directory 设置成 pd-web 模块文件夹路径
重启 RunPdAPP
访问 http://localhost
如果浏览器在下载文件,先清空浏览器缓存再重新访问
订单发送到 rabbitmq:
添加 rabbitmq 依赖
yml 添加 rabbitmq 连接配置
配置使用的队列的参数: orderQueue,持久,非独占,不自动删除
使用 spring 的 Queue 对象,来封装队列参数
修改 OrderServiceImipl ,完成订单发送
注入 AmqpTemplate 工具对象
调用它的 convertAndSend() 方法,发送订单
这个方法,把订单对象自动序列化变成 byte[] 数组再发送