一、缘起
文件上传在系统中用的很频繁,所以我们需要将上传的文件进行存储,传统的将文件上传到本机已不适用分布式系统。自己搭建文件服务器有复杂性和维护成本。所以我们可以采用市面上成熟的文件存储服务,如阿里云的OSS对象存储服务。
每个 OSS 的用户都会用到上传服务。Web 端常见的上传方法是用户在浏览器或 APP 端上传文件到应用服务器,应用服务器再把文件上传到 OSS。具体流程如下图所示。
文件上传在系统中用的很频繁,所以我们需要将上传的文件进行存储,传统的将文件上传到本机已不适用分布式系统。自己搭建文件服务器有复杂性和维护成本。所以我们可以采用市面上成熟的文件存储服务,如阿里云的OSS对象存储服务。
每个 OSS 的用户都会用到上传服务。Web 端常见的上传方法是用户在浏览器或 APP 端上传文件到应用服务器,应用服务器再把文件上传到 OSS。具体流程如下图所示。
本篇主要内容如下:
项目中我们总是用 Kibana
界面来搜索测试或生产环境下的日志,来看下有没有异常信息。Kibana
就是 我们常说的 ELK
中的 K
。
上篇我们讲到了 Elasticsearch 全文检索的原理《别只会搜日志了,求你懂点原理吧》,通过在本地搭建一套 ES 服务,以多个案例来分析了 ES 的原理以及基础使用。这次我们来讲下 Spring Boot 中如何整合 ES,以及如何在 Spring Cloud 微服务项目中使用 ES 来实现全文检索,来达到搜索题库的功能。
Elasticsearch 搜索引擎内置了很多种分词器,但是对中文分词
不友好,所以我们需要借助第三方中文分词工具包。
悟空哥专门研究了下 ik
中文分词工具包该怎么玩,希望对大家有所帮助。
本文主要内容如下:
代码准备
将renren-fast-vue代码copy到自己的前端项目中
安装node_module
cnpm install
上一篇我们讲到题目类型功能,这一篇我们来讲解题目维护功能。
所有表字段添加del_flag字段
del_flag tinyint(1) DEFAULT 0 COMMENT '删除标记(0-正常,1-删除)',
MyBatisPlus配置逻辑删除
修改实现类QuestionServiceImpl
的queryPage
方法
原方法:
public PageUtils queryPage(Map<String, Object> params) {
IPage<QuestionEntity> page = this.page(
new Query<QuestionEntity>().getPage(params),
new QueryWrapper<QuestionEntity>()
);
return new PageUtils(page);
}
总共有5个微服务数据库:内容、学习、渠道、用户、题目
管理后台使用人人开源的后台管理框架,完成快速搭建。
https://gitee.com/renrenio/renren-fast.git