test

1.相家项目结构说明

添加时间:2018年12月11日14:59:24

1.1项目划分模块的作用_如下图所示

xiangjia-web:相家后台  统一对外test访问ip:http://jia-test.lbadvisor.com/editing/  线上访问:https://jia.lbadvisor.com/
接口对外访问testIp:http://52.80.126.45:8081/swagger-ui.html 线上Ip:http://52.80.75.65:8081/swagger-ui.html
xiangjiaapi:是对外提供http 接口的模块(mvc中的controller模块)
community:社区模块
opencv:图片识别模块,提供户型的识别划线打点等功能
xiangjiacommon:公共jar包模块
xiangjiahouse:户型and城市模块
xiangjiauser:用户登录模块
xiangjiaweapp:小程序模块(主要是和微信小程序官方提供的api相结合)
xiangjiaweixin:微信登录和注册and绑定模块
grabbag:测算接口的业务功能

1.2项目属性文件配置

1.2.1:整个项目是用maven3+springboot+dubbo+mybatis+idea 搭建开发完成.
1.2.2:项目打包运行启动上线在采用shell脚本一键完成,无需手动上传.(test: ./start_idea_opencv_dev.sh ./startup_idea_dev.sh)
 online:(./start_idea_opencv_online.sh ./start_user_online.sh ./start_api_online.sh)前者是test服务器,后者是线上
1.2.3:项目的搭建和配置 如下图所示
1:最外层的pom文件中的<modules>把每个模块中的<artifactId> 包含其中
2:每个模块的结构(利用maven打包是根据参数的设置启动不同的springboot 的application-xxx.properties文件的配置)具体代码有写
3:每个application-xxx.properties文件中会有 1:tomcat内置启动的port 2:dubbo的port3:zookeeper的registry.address 
4:本架构采用的是alibaba.druid.pool.DruidDataSource连接的数据库.设置了数据库监控各个参数的配置但线上目前没有启动
5:日志采用的是logback-spring.xml 配置 每天会在当前的jar运行的目录根据日期log/user/spring-boot.%d{yyyy-MM-dd}.log生成,
线上每天会有定时任务放到s3(类似hdfs:分布式文件存储系统)

2服务器环境相关

开发:
opencv:环境的搭建和安装 https://github.com/LProDreamAll/opencv/blob/master/README.md
开发:ssh -i ~/.ssh/dev_xs.pem ubuntu@52.80.34.110
业务模块:ssh -i ~/.ssh/dev_xs.pem ubuntu@52.80.126.45
zookeeper 在本机启动standlone模式
线上:
opencv:ssh -i ~/.ssh/dev_xs.pem ubuntu@52.81.41.90
zookeeper:ssh -i ~/.ssh/xs1711.pem ubuntu@54.223.226.157
模块API,grabbag,xiangjiahouse ssh -i ~/.ssh/dev_xs.pem ubuntu@52.80.75.65
模块xiangjiauser,community,xiangjiaweapp,xiangjiaweixin:ssh -i ~/.ssh/dev_xs.pem ubuntu@52.80.226.215
以上:在登录服务器后进入 /usr/local目录下 有个脚本直接运行 项目就启动完成了.

3小程序登录

相家小程序、AI看风水小程序的用户登录是source-[0:AI看风水;1:相家小程序;2:相家APP]来区别的.
原理:在微信中同一个用户在微信下各个app(微信,小程序属于不同的app)的openId不同但是union_id全部是相同的.
开发者根据微信用户登录小程序或者app时可以区分开来:开发者每次请求微信的api获取相关的信息的时候是需要一个access_token.自己维护更新
代码在com.lbadvisor.xiangjia.user.task.QuartzRefreshAccessTokenService类中的refreshAccessToken方法.
(代码相关问题可以问leo)

4社区模块

本人参与的功能开发涉及的主要表:xj_user_knowledge_text(回答||文章表) ,xj_user_praise(点赞表),xj_forum_collection(收藏表)
xj_forum_topic(主题表)
对外访问接口:查看 http://52.80.75.65:8081/swagger-ui.html#/304562347823567312432420731038213062716922359

5户型测算流程说明

5.1户型测算 /v1.1/api/analysis/house/analysis/t/new 
表:xj_fs_house_analysis , xj_fs_house_analysis_history ,
业务逻辑 : 1:根据八卦的缺角面积的大小来生成分析结果,2:根据八卦的缺角面积生成飞星,根据飞星组织户型评价3:生成用户的历史记录4:户型信息可以分享的url,5:生成推荐物品
(建议结合代码结合线上接口理解)
基于Spring Boot搭建的一个多功能在线学习系统的实现细节。系统分为管理员和用户两个主要模块。管理员负责视频、文件和文章资料的管理以及系统运营维护;用户则可以进行视频播放、资料下载、参与学习论坛并享受个性化学习服务。文中重点探讨了文件下载的安全性和性能优化(如使用Resource对象避免内存溢出),积分排行榜的高效实现(采用Redis Sorted Set结构),敏感词过滤机制(利用DFA算法构建内存过滤树)以及视频播放的浏览器兼容性解决方案(通过FFmpeg调整MOOV原子位置)。此外,还提到了权限管理方面自定义动态加载器的应用,提高了系统的灵活性和易用性。 适合人群:对Spring Boot有一定了解,希望深入理解其实际应用的技术人员,尤其是从事在线教育平台开发的相关从业者。 使用场景及目标:适用于需要快速搭建稳定高效的在线学习平台的企业或团队。目标在于提供一套完整的解决方案,涵盖从资源管理到用户体验优化等多个方面,帮助开发者更好地理解和掌握Spring Boot框架的实际运用技巧。 其他说明:文中不仅提供了具体的代码示例和技术思路,还分享了许多实践经验教训,对于提高项目质量有着重要的指导意义。同时强调了安全性、性能优化等方面的重要性,确保系统能够应对大规模用户的并发访问需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值