# one_code_pass **Repository Path**: littlenight/one_code_pass ## Basic Information - **Project Name**: one_code_pass - **Description**: 采用不同结构实现一码通的效果对比。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-01-12 - **Last Updated**: 2022-01-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # one_code_pass #### 介绍 采用不同结构实现一码通的效果对比。 从简单到复杂一步一步升级 #### 软件架构 软件架构说明 不同分之实现不同的功能 master 分支采用最简单的模式 fenbiao_1 采用数据库分表存储的方式 1库31 表 fenku_fenbiao_1 采用过分库分表的方式实现 3库每一个库10个表 添加上redis 后的结构 (还未做,后续补充) fenbiao_1_redis_1 采用分表添加上redis fenku_fenbiao_1_redis 分库分表添加redis 采用springboot mysql 最简单的一种模式 #### 安装教程 1. git clone https://gitee.com/littlenight/one_code_pass.git 2. 配置数据库的数据,运行db 下的数据库结构数据,user_base.sql 3. 编译打包 mvn clean package -DskipTests -T 20 4, 生成测试数据 ,运行单测试类 DataCreateTest createIdCardNo 方法,一次生成100w 数据 大概100~200s(如果采用批量插入方法更快,后续补充) 5, 项目运行 cd target java -jar demo.jar 6, 默认使用8080 端口 http://localhost:8080/index/getDataByIdCardNo?idCardNo=540427200412292023 (xxxx 生成的card_no 从数据拿一个) 7, 返回示例:User{id=15634064, name='zhang**', cardNo='540427200412292023', phoneNo='17299681474', createDate=null, updateDate=null, healthStatus=1, remark='null'} #### 使用说明 1. 单机模式 ------ 1个应用 所有的数据一个库一表,一个redis 的模式 2. 单机模式 -------1个应用 采用1个库31 个表,1个redis 每一个表的数据量是总表的 1/31 3, 单机模式 -------1个应用 采用3个库每一个库10个表 单表数据1/30 4. 集群模式 模式是1 ,采用ng #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md ####压测 http_load 请求命令 http_load -p 30 -s 30 tmp.txt 548238 fetches, 30 max parallel, 5.64685e+07 bytes, in 30 seconds 103 mean bytes/connection 18274.6 fetches/sec, 1.88228e+06 bytes/sec msecs/connect: 0.126845 mean, 12.098 max, 0.014 min msecs/first-response: 1.22716 mean, 209.621 max, 0.197 min HTTP response codes: code 200 -- 548238