创新实训(34)——有关前后端交互的优化以及后端错误的处理(续)

根据订阅信息获取文章的接口出错

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
和昨天的问题一样,传入sql的数组不能为空,所以要加个判断
在这里插入图片描述

后端莫名其妙断开管道的问题

这个问题不管什么方法,偶尔请求会有这个问题,昨天也遇到了,就是没有解决,今天解决一下。
在这里插入图片描述
查阅了半天资料,说的是tcp超时的异常,导致的连接被断开

参考博客:https://blog.csdn.net/zqz_zqz/article/details/52235479

所以接下来准备使用cache缓存来优化程序的读取速度

空指针异常

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
发现是如果用户没有提交博客,所以根据userId获取不到对应提交的博客id,为null所以出错,所以在获取时加一层判断。
在这里插入图片描述

对Mahout使用的模型进行提前的初始化

由于每次给用户基于协同过滤进行推荐时,都需要构建模型,然后计算用户之间或者物品之间的相似度,所以使用 @PostConstruct注解,让他在项目初始化时就进行初始化,之后只需要调用即可。

   public static DataModel userCategoryDataModel;
    public static DataModel userTagDataModel;
    public static UserSimilarity userCategoryUserSimilarity ;
    public static ItemSimilarity userCategoryItemSimilarity ;
    public static UserSimilarity userTagUserSimilarity ;
    public static ItemSimilarity userTagItemSimilarity ;
   //定时的初始化
    @PostConstruct
    public void postConstruct() throws IOException, TasteException {
        userCategoryDataModel = new FileDataModel(new File(USER_CATEGORY_MODEL_FILE_NAME));
        userTagDataModel = new FileDataModel(new File(USER_TAG_MODEL_FILE_NAME));
        userCategoryUserSimilarity = new PearsonCorrelationSimilarity(userCategoryDataModel);
        userCategoryItemSimilarity = new PearsonCorrelationSimilarity(userCategoryDataModel);
        userTagUserSimilarity =new PearsonCorrelationSimilarity(userTagDataModel);
        userTagItemSimilarity = new PearsonCorrelationSimilarity(userTagDataModel);
        System.out.println("模型初始化完成");
    }

这些模型只需要一次性的初始化,程序执行时就不用改变了,下一次初始化时在定时抽取完成之后

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值