CRMEB Java版单商户
首页
官网
技术社区
开源地址
📖 序言
📰 系统简介
快速了解
管理端思维脑图
Docker预览
App功能脑图
2.0 功能详情表
2.0 商业和开源差异表
🏭 搭建教程
本地开发环境
2.0之后本地开发环境 开源代码参见
2.0之前历史版本安装部署
服务器及域名设置
服务器购买&设置
域名&解析
SSL证书申请&设置
部署服务
部署前辅助服务
宝塔中配置和站点
打包Jar包并启动
WEB PC 管理端打包
H5商城部署
系统配置
账号要求
应用配置
微信公众号配置
公众号基础配置
公众号开发配置
公众号模版消息
微信小程序&视频号配置
微信小程序基础配置
WEBPC管理端配置
微信小程序打包上传
小程序交易组件
视频号上传商品
微信小程序客服
微信小程序订阅消息
APP(Android&IOS)
支付配置
微信公众号支付
微信小程序支付
支付宝支付
一号通
一号通账号申请
一号通短信
一号通商品采集
一号通物流查询
一号通电子面单
第三方服务
云存储
为什么需要云存储
阿里云对象存储
腾讯云对象存储
七牛云存储
复制第三方平台商品
客服_腾讯云智服
客服_蚂蚁智能客服
小票打印
使用说明
📄 运营前必读
📈 运营&统计
控制台
商品统计
用户统计
交易统计
🧱 商品&分类管理
商品管理
商品分类
商品规格
商品评论
📞 一号通
商品采集
物流查询
电子面单
短信通知
优惠券
发布优惠券
领取及使用
会员等级
等级说明
分销
佣金提现
分销员管理
分销规则说明
分销配置
拼团
拼团列表
拼团规则
提现
发起提现
后台审核
提现规则
文章管理
发布文章
文章界面
新闻资讯
发布文章
文章界面
普通产品
产品热门搜索
产品详情
前台页面
发布商品
商品规格
商品评价
砍价
砍价活动
砍价规则
秒杀
秒杀商品维护
秒杀配置维护
积分
积分使用
积分来源
积分设置
订单管理
后台订单处理
订单退款
账户管理
账号信息
账户资金
邮费说明
商城运费设置
运费模板
邮费组成
配置说明
第三方接口设置
物流查询
页面设计
一键换色
页面设计
文件上传配置
物流配置
余额充值配置
提货点
门店自提及添加核销员
核销订单
库存说明
新手入门
视频号管理
草稿列表
审核后商品列表
App打包
基础配置
开发调试
App打包
打包上线
App升级
v2.0版
开发和部署手册
集群部署
小程序
CRMEB后台配置
前端提交审核
微信平台配置
生成海报失败
确认发布
视频号-微信交易组件
支付
公众号支付
小程序支付
支付宝支付
支付配置
服务器及系统搭建
创建站点
域名解析
域名购买(已有域名则跳过)
宝塔配置
服务器购买
服务器配置
配置检查(非常重要)
第三方
云存储平台和申请
阿里云存储
七牛云存储
腾讯云存储
复制第三方平台商品
客服_腾讯云智服
客服_蚂蚁智能客服
小程序客服
小程序订阅消息
WEBPC管理端运行和打包
移动端运行和打包
数据字典
常见问题
WEB PC管理端
后台管理系统登录问题
粒子效果
图片素材
页面刷新404
Java项目常见问题
刷新404
退款问题
项目部署在同一个nginx下通过目录区分
Win服务器出现乱码
Java项目日志
sql数据库问题
图片问题
一键换色
支付相关
商户平台添加支付授权目录
支付成功但订单显示失败
源码问题
1.3.7更新
代码怎么下载和更新
swagger
npm镜像问题
start.sh启动报错
业务常见问题
宝塔redis设置密码
版权
公众号网页分享给朋友或朋友圈出现只有url, 没有卡片的情况
二开锦囊
集成第三方SDK
阿里
短信
交易统计
商品统计
用户统计
首页看板
前端说明
个人中心
分类页
首页
打包Jar包并启动
# Crmeb Java 项目打包可运行jar文件 本地已经运行过的同学直接配置prod环境的yml文件后直接mvn install 打包即可。 ## ⏬下载的源码,并导入开发工具 解压后的代码包内容  解压后导入idea开发工具,初次导入会自动根据pom文件下载对应的jar包。  ## 🔗正确导入java项目并配置mysql和redis链接  配置数据库连接和  打包之前修改环境配置文件,分别在crmeb-admin 和 crmeb-front包下的 yml,每个环境中的端口都不一样,这里默认admin为20000front为20001 上传到服务端口转发会用到,也可以根据自己要求调整,不要不冲突即可。 crmeb-admin Admin服务 打包后产出Crmeb-admin.jar crmeb-comm 公共服务 会打包到admin和front中 crmeb-front 商城服务 打包后产出Crmeb-front.jar crmeb-service 公共业务 会打包到admin和front中 crmebiamge 素材包 线上部署时需要上传到服务器,将路径配置到java 配置文件中 ✅打包成功  打包后在对应目录获取到Crmeb-admin.jar 和 Crmeb-front.jar 并发布到宝塔创建的两个api.xxx的域名下。 上传代码到服务端可以使用自己趁手的工具,ftp或者ssh 这里为了统一,都是用宝塔面板操作。  上传打包好的两个jar文件到创建好的站点根目录  如下图,以admin服务为例 上传Crmeb-admin.jar ,启动jar的shell,和初始化素材包 shell文件和素材包都在压缩包中。  > 注意: shell脚本在执行时可能会出现格式不正确的问题,可以在本地修改好在bt面板中创建.sh文件直接粘贴进去就好。 ⚠️素材说明:上图中crmebimage目录需要在admin 对应环境的 yml中提前配置好,目录层级到crmebimage的第一层目录。 点击start.sh文件修改路径,stop.sh 一般不需要重启直接执行start.sh文件,停止时一般手动kill,如果需要stop.sh脚本同样配置目录即可。  同样front也上传jar和脚本到对应目录即可,素材自在admin端配置。 万事俱备,开始启动jar程序。 链接SSH客户端  执行启动命令  ☕️admin.jar 启动成功,这里不再列举front的上传和启动,和admin一样的操作即可,front不用配置素材的差异其他一致。  ### 设置代理 对外提供api服务 在没有设置代理之前的api站点访问是这样的,如果不是,需要确认域名解析和宝塔中创建站点哪个环节出了问题。   设置Admin服务代理端口  访问admin swagger文档:访问方式 | http://域名/doc.html  同样访问front api 需要和admin jar 一样正确部署并且启动后,设置代理端口 默认20001 如果有修改以自己修改的端口为准。  以上步骤已经将java全部服务启动成功! # **宝塔单机nginx负载均衡集群部署 如果需要** 1. 添加站点(此处不做详述) 2. 站点设置—网站目录,关闭防跨转攻击  3. 站点设置—添加反向代理  4. 站点设置—配置文件 此处因为是本地测试,使用IP+端口,需要在之前的项目同级目录下创建front2目录,再起一个移动端项目,下图的端口就是原front1,与front2的启动端口,启动端口可以在项目中application-*.yml文件中的server:port:端口,这里修改  5. 配置文件确认(确认upstream 后的区块名称是否一致) ```shell 1. /www/server/panel/vhost/nginx/站点域名.conf文件,点击编辑 ```  ```shell 2. /www/server/panel/vhost/nginx/proxy/站点域名文件夹/文件,点击编辑 ```  6. 配置完成,为确保生效可以重启nginx 7. 解决nginx负载均衡后,font的Swagger文档访问问题 在/www/server/panel/vhost/nginx/proxy/站点域名文件夹/文件,点击编辑,加入如下代码  例: ``` location ~* ^(/v2|/webjars|/swagger-resources|/doc.html) { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; #proxy_set_header Host $host:$server_port; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Port $server_port; proxy_pass http://000.00.111.22:8081; # 后端服务地址} ``` #### 附录: 扩展nginx的五种负载算法及扩展 1. 轮询(默认),每个请求按时间顺序逐一分配到不同的后端服务器,如果后端某台服务器死机,故障系统被自动剔除,使用户访问不受影响。 2. Weight,指定轮询权值,Weight值越大,负载的权重就越大。分配到的访问机率越高,主要用于后端每个服务器性能不均的情况下。 例: ``` upstream my_server { server 192.168.0.14 weight=10; server 192.168.0.15 weight=10;} ``` 3. ip_hash,每个请求按访问IP的hash结果分配,这样来自同一个IP的访客固定访问一个后端服务器,有效解决了动态网页存在的session共享问题。 例: ``` upstream my_server {ip_hash;server 192.168.0.14:88;server 192.168.0.15:80;} ``` 4. fair(第三方) 比上面两个更加智能的负载均衡算法。根据后端服务器的响应时间来分配请求,响应时间短的优先分配。Nginx本身是不支持fair的,如果需要使用这种调度算法,必须下载Nginx的upstream_fair模块。 例: ``` upstream my_server { server 192.168.0.14; server 192.168.0.15;} ``` 5. url_hash(第三方) 按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,可以进一步提高后端缓存服务器的效率。Nginx本身是不支持url_hash的,如果需要使用这种调度算法,必须安装Nginx 的hash软件包。 在upstream中加入hash语句,server语句中不能写入weight等其他的参数,hash_method是使用的hash算法 例: ``` upstream my_server { server 192.168.0.14:80; server 192.168.0.15:80; hash $request_uri; hash_method crc32;} ``` #### Tips: ``` upstream bakend{ #定义负载均衡设备的Ip及设备状态 ip_hash; server 1192.168.0.14:80 down; server 192.168.0.15:80 weight=2; server 127.0.0.1:8081; server 127.0.0.1:7070 backup;} ``` 👍👍👍👍👍👍👍👍 打包过程中如果出现错误等问题环境论坛提问 [Java系统 - CRMEB社区](https://www.crmeb.com/?categoryId=122&sequence=0)
本页目录