自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 问答 (1)
  • 收藏
  • 关注

原创 畅购—— 页面详情静态化(Thymeleaf)

电商项目——CG一.分析流程一.分析流程准备工作page模块导入thymeleaf坐标,开箱即用。修改yml配置具体步骤定义canal和mq监听tb_spu表的status状态,0—>1 即为上架,以spuId发送消息到对应的消息队列。page模块定义监听类,监听此消息队列,拿到spuId调用业务层。业务层注入模板引擎TemplateEngine,根据spuId拿到所有的spu信息存入map中创建context对象,将map集合放进去,定义输出流out,创建文件,以sp

2020-10-11 22:13:48 10

原创 畅购07,08—— 商品搜索模块(ElasticSearch)

电商项目——CG商品搜索分为三大模块1 数据同步ES1.1 ElasticSearch全文检索1.2 商品上下架同步到ES实现思路具体操作2 商品搜索条件封装2.1 基本分为6个条件2.2 步骤3 Thymeleaf实现动态渲染3.1 Thymeleaf基本语法商品搜索分为三大模块1 数据同步ES1.1 ElasticSearch全文检索面试题:百度,淘宝为什么查询快?都采用了ES全文检索技术。全文检索技术,查询快的原因?ES使用倒排索引,对搜索内容进行分词,一个词对应多个id。当然,

2020-10-11 21:12:29 31

原创 畅购06—— 广告数据同步(Canal和MQ技术)

电商项目——CGcanal原理ElasticSearch全文检索缓存广告的更新canal原理  canal模拟mysql slave的交互协议,伪装自己为mysql slave,向mysql master发送dump协议mysql master收到dump请求,开始推送binary log给slave(也就是canal)canal解析binary log对象(原始为byte流)ElasticSearch全文检索面试题:百度,淘宝为什么查询快?都采用了ES全文检索技术。全文检索技

2020-10-11 19:11:07 26

原创 畅购05—— 首页加载方案(nginx+lua+redis)

电商项目——CG1.首页为什么用nginx部署?2.实现步骤(首页广告)3.数据库改变,如何保证实时预热操作?1.首页为什么用nginx部署?首页的并发量高,且有些许的变动tomcat部署可能不是一个很好地选择所以使用nginx+lua+redis进行预热缓存2.实现步骤(首页广告)后台数据通过后台管理系统对mysql中的首页内容(广告等)进行维护。定义广告内容,表中设计了 position 位置字段 ,标识广告图片的显示位置。将首页页面部署到nginx中。通过lua脚本对广告指定位

2020-10-10 16:20:39 9

原创 畅购04——商品管理(分布式ID)

为何使用分布式ID我们学过UUID是唯一的,但是它是字符串,查询效率低。无法保证递增的趋势,不可读。也可用Redis来生成ID。这主要依赖于Redis是单线程的,所以也可以用生成全局唯一的ID。可以用Redis的原子操作 INCR和INCRBY来实现,但是网络传输会造成性能下降。而雪花算法(snowflake)的其核心思想是:使用前41bit作为毫秒数,中间10bit作为机器的ID(5个bit是数据中心,5个bit的机器ID),后12bit作为毫秒内的流水号(意味着每个节点在每毫秒可以产生 4096

2020-10-07 19:24:38 32

原创 畅购03——微服务网关限流&鉴权JWT

电商项目——CG微服务网关Gateway微服务网关跨域配置微服务网关过滤器网关限流令牌桶算法配置和代码BCrypt密码加密BCrypt介绍BCrypt用法管理员登录业务代码JWT 实现微服务鉴权JWT组成代码测试网关过滤器验证token微服务网关Gateway微服务网关跨域配置spring: application: name: sysgateway cloud: gateway: globalcors: cors-configurations:

2020-09-26 14:59:38 29

原创 畅购02——分布式文件存储

电商项目——CG业务模块根据商品分类名称查询品牌列表根据商品分类名称查询规格列表分布式文件存储-FastDFS业务模块根据商品分类名称查询品牌列表分析:品牌和商品分类有中间表,从此下手代码:dao层:@Select("SELECT name,image FROM tb_brand WHERE id IN (SELECT brand_id FROM tb_category_brand WHERE category_id IN (SELECT id FROM tb_categor

2020-09-25 21:59:27 13

原创 java框架面试题————详细回答

1.Spring常见面试题总结(超详细回答)2.SpringBoot面试题(HR用)

2020-09-25 21:24:34 14

原创 畅购01——工程搭建

畅购01——项目介绍和工程搭建项目介绍  畅购是B2C架构,用户在线浏览商品,搜索商品,加入购物车从而下单购买,同时支持微信支付,用户还可以参与低价商品秒杀的购物网站。  本网站采用了微服务架构,采用了SpringCloud技术栈,基于SpringBoot构建,采用SpringCloud GateWay将各个微服务的功能串联起来。系统设计项目模块本网站前后端分离开发,基本分为×个模块技术选型系统架构图项目构建项目结构创建一级父工程创建父工程 changgou_parent,po

2020-09-25 21:23:09 1424

原创 RabbitMQ高级特性——理解RabbitMQ 应用问题,搭建RabbitMQ 集群

RabbitMQ高级消息可靠性投递配置文件定义rabbitmq connectionFactory 时需要:publisher-confirms="true"publisher-returns="true"confirm代码提供者: 回调方法判断交换机是否收到,重写confirm方法,ack判断交换机是否收到,cause是失败的原因。具体代码如下:消费者: 手动签收必须让监听器继承ChannelAwareMessageListener,在方法重写时才有Channel参数。bas

2020-09-13 22:48:43 19

原创 SpringBoot高级——————自动配置

前言:  相信大家在学完SpringBoot之后,都会有这样一个感慨:“真牛X”。都知道SpringBoot最D的地方在于它的起步依赖和自动配置,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能。那么,今天小编就来说说它的自动配置。一起来看看吧…引导类最神奇,最核心的地方就是引导类。引导类有两大关键所在:run方法run方法(还未深挖),概括就是创建SpringApplication对象和创建context对象,并且通过自动配置实例化出所有的对象。提一嘴:想了解这个应该需要先了

2020-09-12 16:34:19 61 1

原创 SpringBoot基础知识————初学者

基础篇SpringBoot功能自动配置   在程序启动时才决定Spring用哪个配置,这个过程是自动配置的.起步依赖   起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能。配置:<!--基本开发的起步依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spr

2020-09-07 22:57:06 61

原创 java编程实战源码及常用工具类

java编程工具类

2020-08-21 10:52:09 46

原创 itcast_health

itcast_healthday01项目构建:day02检查项的CRUD问题(已解决)day03检查组的CRUD问题(已解决)day01项目构建: 1. 封装了数据库数据对应的实体类 2. 封装返回结果的实体类Result 3. 封装分页查询的实体类PageResult 4. 封装条件查询参数的实体类QueryPageBeanday02检查项的CRUD **增加操作**:在前端拿到表单数据,后端参数通过@RequestBody注解拿到CheckItem对象,调用业务层的save方法,再调

2020-08-19 18:30:31 186

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除