yapi搭建
接口管理工具
yapi启动服务两部分构成:数据库和服务
第一步:安装mongo
docker run -d --name mongo-yapi mongo
第二步:拉取yapi
docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi
第三步:初始化管理员账号和服务
docker run -it --rm \
–link mongo-yapi:mongo \
–entrypoint npm \
–workdir /api/vendors \
registry.cn-hangzhou.aliyuncs.com/anoy/yapi \
run install-server
第四步:初始化管理员账号和服务
启动 YApi 服务
docker run -d \
–name yapi \
–link mongo-yapi:mongo --workdir /api/vendors \
-p 3002:3000 \
registry.cn-hangzhou.aliyuncs.com/anoy/yapi \
server/app.js
ymfe.org
第五步:访问 http://ip:3002
初始化管理员账号成功,账号名:admin@admin.com 密码:ymfe.org
yapi基础使用
yapi实质是mock
yapi高级功能说明
文件的导入和导出,统计报表
swagger转换成文件地址
http://localhost:8023/v2/api-docs
postman接口导入到yapi
https://blog.csdn.net/weixin_40744265/article/details/83112175
yapi在线运行测试
来源文档:https://cloud.tencent.com/developer/article/1517980
yapi插件下载:
链接:https://pan.baidu.com/s/1YMW23zKSTfeMqusRDavUiQ
提取码:9v6d
安装步骤:
- 下载完成后,解压压缩包
- 进入到Chrome的【扩展程序】页面,首先开启【开发者模式】,一定要先开启开发者模式
在Chrome菜单中选择【扩展程序】->【加载以解压的扩展程序】->【选中压缩包内容】-> 【选中3.0.0的目录】进行插件安装,安装完成后重启Chrome就可以正常使用了。
docker图形化工具:portainer
安装运行portainer
docker run -d -p 9000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data --name prtainer-test portainer/portainer
访问地址:http://ip:9000
设置账户和密码:admin testfan123456
进入容器内部:containers-》点击容器名-》_Console
partainer图形工具安装redis
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0wgNApPH-
redis数据创建完成
redis客户端远程连接
客户端工具下载连接:
链接:https://pan.baidu.com/s/1FsnuvQTheS5Ul5bm1GkYIg
提取码:6n3i
安装方式:
选中.jar文件,右键–》打开方式–》Java™ Platform SE binary
docker搭建redis数据库
docker run --name myredis -p 6379:6379 --restart=always -d redis
java -jar xxx.jar
get set
性能压测
性能命令 10 万次请求 并发 50
redis-benchmark -n 100000 -q
只测指定的性能
redis-benchmark -t set,lpush -n 100000 -q
性能跟redis内存有一定关系
redis与springboot整合
依赖架包
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
连接redis配置文件application.properies,注意修改redis数据库配置信息
spring.redis.database=0
spring.redis.host=192.168.21.XXX
spring.redis.password=
spring.redis.port=6377
spring.redis.timeout=3000
## \u8fde\u63a5\u6c60\u4e2d\u7684\u6700\u5927\u7a7a\u95f2\u8fde\u63a5\uff0c\u9ed8\u8ba4\u503c\u4e5f\u662f8\u3002
#spring.redis.pool.max-idle=500
##\u8fde\u63a5\u6c60\u4e2d\u7684\u6700\u5c0f\u7a7a\u95f2\u8fde\u63a5\uff0c\u9ed8\u8ba4\u503c\u4e5f\u662f0\u3002
#spring.redis.pool.min-idle=50
## \u5982\u679c\u8d4b\u503c\u4e3a-1\uff0c\u5219\u8868\u793a\u4e0d\u9650\u5236\uff1b\u5982\u679cpool\u5df2\u7ecf\u5206\u914d\u4e86maxActive\u4e2ajedis\u5b9e\u4f8b\uff0c\u5219\u6b64\u65f6pool\u7684\u72b6\u6001\u4e3aexhausted(\u8017\u5c3d)\u3002
#spring.redis.pool.max-active=2000
## \u7b49\u5f85\u53ef\u7528\u8fde\u63a5\u7684\u6700\u5927\u65f6\u95f4\uff0c\u5355\u4f4d\u6beb\u79d2\uff0c\u9ed8\u8ba4\u503c\u4e3a-1\uff0c\u8868\u793a\u6c38\u4e0d\u8d85\u65f6\u3002\u5982\u679c\u8d85\u8fc7\u7b49\u5f85\u65f6\u95f4\uff0c\u5219\u76f4\u63a5\u629b\u51faJedisConnectionException
#spring.redis.pool.max-wait=1000
redis结合junit
package com.testfan;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;
import javax.annotation.Resource;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springf