旅游项目day07

目的地攻略展示

根据目的地和主题查询攻略

攻略条件查询

攻略排行分析

  • 推荐排行榜:点赞数+收藏数 取前十名

  • 热门排行榜:评论数+浏览数 取前十名 浏览数跟评论数差距过大,可设置不同权重,例如:将浏览数权重设置为0.3,评论数权重设置为0.7。

    如果是小表,以上的sql没太大问题。
    但是,,如果表的数据量非常大?
    排序,运算会导致mysql性能大大降低。
    如何解决性能问题?
  • mysql性能优化。
    1. 给需要排序的字段,加索引

      但是,对索引列做任何运算,(concat + - * /)等操作,都会导致索引失效,仍会出现性能问题。

      但是因为必须要用到的算法,所以必须要做运算。如何解决?如何优化?
      不实时! 排行榜不是实时更新,比如半个小时更新一次。

      把实时查询的数据,变成不实时的数据。

      半个小时查询一次后,将数据放到另外一张表,或者放到redis。

      优化方案:将原本实时查询的数据,变成每10分钟统计一次,将统计后的数据放到一张更新的表中,之后查询排行榜信息时,直接查询新的表即可。

      新的表如何设计?

      id,dest_id,dest_name,strategy_id,strategy_title,num,type,status_time

      统计数量 统计时间

      如何实现每10分钟去做一个事情?
      定时任务。

      定时统计方案:

      1. TimerTask | ScheduledThreadPoolExecutor:JDK自带的定时任务类 不支持分布式

      2. Spring Scheduled:任务调度组件,quartz

      3. 分布式任务调度组卷:xxl-job,elastic-job 需要引入额外的服务

      如何抉择?
      Spring的定时任务。

      Spring定时任务示例代码:每个两秒打印一次时间

      每隔一段时间。

      需要新创建一个服务。为什么?

      如果在文章服务开启定时任务,会导致占用一定的cpu,对性能有一定的影响。

      故新创建一个数据服务(travel-data-server)。新建一个定时任务类,@Component交给Spring容器管理。

      启动类加@EnableScheduling

      定时任务类方法加@Scheduled()注解。

      corn表达式,是linux里面的一个机制。秒,分钟,小时,月中某日,月,周中某日

      corn表达式口诀: "秒分时日月周"

bash 复制代码
Cron表达式用于指定计划任务(如在Unix、Linux和Spring框架中的定时任务)的执行时间。
要创建一个在每个工作日(星期一到星期五)凌晨两点执行的Cron表达式,你可以使用以下格式:

0 2 * * 1-5

这个表达式的各部分意义如下:

- `0` 分钟:表示在小时的开始时刻(即每小时的第0分钟)。
- `2` 小时:表示凌晨2点。
- `*` 日:表示每天。
- `*` 月:表示每个月。
- `1-5` 星期:表示星期一到星期五。

所以,这个Cron表达式代表着"在每个月的每天,
如果是星期一到星期五,那么在凌晨2点执行任务"。这正符合你的要求。

示例:


不一定非要去琢磨透corn表达式,工具是为我们提高效率而服务的,可借助corn表达式生成工具去生成。

实现:

改写为函数式编程:

如何排序?

相关推荐
2501_948106915 天前
计算机毕业设计之jsp-智慧旅游分享平台
java·开发语言·spark·汽车·课程设计·旅游
paopaokaka_luck6 天前
基于Springboot3+vue3的旅游景区点评系统(AI审核、webSocket聊天、协同过滤算法、Echarts图形化分析)
websocket·网络协议·旅游
森普智慧农业9 天前
邛崃大梁酒庄:以酒旅融合赋能乡村振兴的示范样板
大数据·科技·生活·旅游
TuCoder14 天前
市县级全域旅游智慧导览电子地图制作实操(五)基于 ebmap Tour 制作交互地图(下)
旅游·景区导览·电子导览·地图制作·景区地图·全域旅游地图制作·全域旅游智慧导览
2601_9624408415 天前
计算机毕业设计之jsp旅游网站管理系统
java·开发语言·算法·课程设计·旅游·推荐算法
酒旅Agent开发实战17 天前
AI 旅行规划助手如何接入真实酒旅数据:从自然语言到酒店预订的全流程 MCP 实战
人工智能·ai·旅游·skill·酒店api·机票api
2601_9624408418 天前
计算机毕业设计之健身房管理系统的设计与实现
java·开发语言·课程设计·旅游·宠物
第***月1 个月前
免费双人旅游卡批发,一张起批
旅游
道可云1 个月前
5A景区智慧导览服务:从评审标准到技术实践——解析“道可云”智能导览系统如何以“VR+轻量化”重塑文旅体验
人工智能·旅游
第***月1 个月前
云南跟团行:在山水与烟火间读懂远方
科技·生活·旅游·美食·风景