5 ,es 与 solr 的区别 ,购物车 ,单点登录 ,消息队列

一 ,es 与 solr 的区别

1 ,相同点 :

  1. es 和 solr 都是基于 lucene 的搜索服务器。
  2. 高性能 : 他们都基于分词技术构建的倒排索引。
  3. 开发语言 : 都是 java 开发的。

2 ,不同点 :

  1. 建立实时索引时 :
    1 ,solr 会产生 io 阻塞
    2 ,es 不会,es 性能好
  2. 不断的动态添加数据的时候 :
    1 ,solr 效率低下
    2 ,es 不会有波动
  3. 分布式管理 :
    1 ,solr 用 zookeeper 管理分布式
    2 ,es 自身就可以
  4. 部署 :solr 需要部署在 web 服务器上 ( 例如 tomcat ),solr 的本质是一个动态的 web 项目
  5. 支持的数据格式 :
    1 ,solr 支持 : xml ,json ,csv …
    2 ,es 支持 : json
  6. 应用
    1 ,solr 是传统的搜索应用,对已有数据检索的时候,效率更好。
    2 ,适合实时搜索,实时变化的时候,es 更好。
  7. 官网提供功能 :
    1 ,solr 功能多。
    2 ,es 只关注核心功能,如果想要更多功能,需要第三方插件。

二 ,购物车实现过程 :

1 ,购物车跟用户的关系 :

  1. 一个用户必须对应一个购物车
    孙 : 一个用户不管买多少商品,都会存在属于自己的购物车中。
  2. 开发过程中 :
    单点登录一定在购物车之前。

2 ,跟购物车有关的操作有哪些 :

  1. 添加商品到购物车。
  2. 展示购物车

3 ,添加商品到购物车 :用户未登录状态

  1. 添加到什么地方 :
    1 ,redis
    2 ,cookie
  2. 例子 :
    1 ,京东 : 保存在 redis 。
    2 ,很多其他的小商城 : 保存在 cookie 中
  3. 如果用户禁用了 cookie
    可以保存在 localStorage 中

4 ,添加商品到购物车 :用户已登录状态

  1. 存储在哪里 : redis 中
  2. 为了保证数据的安全性 : mysql 中也存储一份

5 ,展示购物车 :未登录状态

  1. 直接从 cookie 中取数据

6 ,展示购物车 :已登录状态

  1. cookie 数据 + redis 数据
  2. 如果 redis 出问题了,就 = cookie 数据 + mysql 数据

三 ,单点登录

1 ,什么是单点登录 :

  1. 一处登录,多出使用
  2. 孙 : 一个系统,由多个项目组成,多个项目之间,都共有一个用户系统

2 ,应用 :

分布式系统

3 ,架构图 :

在这里插入图片描述

4 ,例子 :

参观动物园流程:
检票员=认证中心模块
1.我直接带着大家进动物园,则会被检票员拦住【看我们是否有门票】,没有[售票处买票]
登录=买票
2.我去买票【带着票,带着大家一起准备进入动物园】检票员check【有票】
Token=piao
3.我们手中有票就可以任意观赏动物的每处景点。
京东:单点登录,是将token放入到cookie中的。
案例:将浏览器的 cookie 禁用,则在登录京东则失败!无论如何登录不了!

5 ,智慧的地方 :

如果 cookie 不好用,就用 localStorage

四 ,消息队列 :

1 ,技术产生背景 :

在高并发的环境下,来不及同步处理用户发送的请求,则会导致请求发生阻塞。比如说,大量的insert,update之类的请求同时到达数据库MYSQL,直接导致无数的行锁表锁,甚至会导致请求堆积很多。从而触发 too many connections 错误。

2 ,消息队列的弊端:

消息的不确定性

3 ,解决 :

延迟队列,轮询技术

4 ,推荐使用 :

activemq

5 ,功能 : 异步 ( 快速响应 )

在这里插入图片描述

6 ,功能 : 并行 ( 快速处理 )

在这里插入图片描述

7 ,功能 : 排队 ( 业务需要 :有序 )

在这里插入图片描述

8 ,例子: ( 快速响应 )

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值