目录
- 引出
- IDEA启动Tomcat两个端口的方式
- 1.编辑配置
- 2.添加新的端口-Dserver.port=8083
- 3.service里面管理
- 4.启动后进行测试
- 使用nginx进行反向代理
- 反向代理多个端口
- 运行日志查看
- 启动关闭重启
- 分布式情况下synchronized失效
- synchronized锁代码
- 启动tomcat两个端口
- nginx反向代理
- JMeter高并发测试
- 1.端口,路径,参数设置
- 2请求头设置
- 3.进行抢购的测试
- 总结
引出
1.在idea中启动tomcat两个服务-Dserver.port=8083;
2.nginx进行反向代理多个url的配置;
3.synchronize锁代码,启动tomcat两个端口+nginx反向代理,用JMeter高并发测试,验证分布式情况下,synchronize锁失效情况;
IDEA启动Tomcat两个端口的方式
1.编辑配置
编辑配置
复制之前的服务app
2.添加新的端口-Dserver.port=8083
修改名字,点击修改选项
添加虚拟选项vm options
输入-Dserver.port=8083
设置新的服务的端口号
3.service里面管理
在service里面管理多个端口
service里面管理
4.启动后进行测试
启动后进行测试
使用nginx进行反向代理
start nginx --启动
nginx -s stop --停止
nginx -s reload --重启
反向代理多个端口
upstream pet{server 127.0.0.1:10009;server 127.0.0.1:10002;}
server里面设置
location / {proxy_pass http://pet;}
cmd命令启动nginx
运行日志查看
查看运行的日志文件
根据日志修改配置文件
再次启动,运行成功
启动关闭重启
分布式情况下synchronized失效
synchronized锁代码
@Overridepublic synchronized HttpResp<?> killStart(Integer bookId) { // 方案1:加锁KillBook killBook = (KillBook)redisTemplate.opsForHash().get("killBook",bookId +"");if (killBook !=null && killBook.getKillNum() > 0){killBook.setKillNum(killBook.getKillNum()-1);log.debug("当前库存-->>>"+killBook.getKillNum());redisTemplate.opsForHash().put("killBook", bookId+"", killBook);return HttpResp.ok();}else {return HttpResp.fail();}}
启动tomcat两个端口
nginx反向代理
反向代理链接
JMeter高并发测试
1.端口,路径,参数设置
路径设置
2请求头设置
添加请求头jwt
3.进行抢购的测试
!出现锁失效的情况
总结
1.在idea中启动tomcat两个服务-Dserver.port=8083;
2.nginx进行反向代理多个url的配置;
3.synchronize锁代码,启动tomcat两个端口+nginx反向代理,用JMeter高并发测试,验证分布式情况下,synchronize锁失效情况;