java商城项目面试问题「电商秒杀java面试题」
今天给大家普及一下java商城项目面试问题「电商秒杀java面试题」相关知识,最近很多在问java商城项目面试问题「电商秒杀java面试题」,希望能帮助到您。
目前Java市场竞争力度大家都是有目共睹的,但是相对而言有竞争也就意味着高薪。不过如此大的竞争中你要怎么样才能脱颖而出你有考虑过么?如果没有的话那你要抓紧时间考虑一下了。
项目实战在面试这一关里面是必不可少的,今天分享一下我之前面试遇到的电商项目相关的面试题,由于内容比较多,所以分几部分发布。感兴趣的朋友记得关注一下小编,第二部来了持续更新中。
什么是SolrCloudSolrCloud是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用SolrCloud。当一个系统的索引数据量少的时候是不需要使用SolrCloud的,当索引量很大,搜索请求并发很高,这时需要使用SolrCloud来满足这些需求。SolrCloud是基于Solr和Zookeeper的分布式搜索方案,它的主要思想是使用Zookeeper作为集群的配置信息中心。
它有几个特色功能:1)集中式的配置信息2)自动容错3)近实时搜索4)查询时自动负载均衡
solr怎么设置搜索结果排名靠前(得分)?可以设置文档中域的boost值,boost值越高计算出来的相关度得分就越高,排名也就越靠前。此方法可以把热点商品或者是推广商品的排名提高。
SpringMVC全局异常处理整个系统只有一个,使用方法:1)需要实现一个接口HandlerExceptionResolver2)需要在springmvc中配置。处理逻辑:捕获整个系统中发生的异常。1) 异常写入日志文件2) 及时通知开发人员。发邮件、短信。展示一个错误页面,例如:您的网络故障,请重试。
网页静态化好处1.有利于搜索引擎优化好处2.提高访问速度好处3.解决高并发
静态文件生成的时机:当后台添加、编辑商品时生成静态网页1) mq发送消息2) 接收到消息,生成静态页面3) nginx访问静态页面。
什么是sso系统单点登录是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。
登录的处理流程:1、登录页面提交用户名密码。2、登录成功后生成token。Token相当于原来的jSessionid,字符串,可以使用uuid。3、把用户信息保存到redis。Key就是token,value就是TbUser对象转换成json。4、使用String类型保存Session信息。可以使用“前缀:token”为key5、设置key的过期时间。模拟Session的过期时间。一般半个小时。6、把token写入cookie中。
如何判断是否登录1.从cookie中取token2.取不到未登录3.取到token,到redis中查询token是否过期4.如果过期,为登录状态5.没有过期,登录状态
实现购车商品数据同步1、要求用户登录。2、把购物车商品列表保存到数据库中。推荐使用redis。3、Key:用户id,value:购车商品列表。推荐使用hash,hash的field:商品id,value:商品信息。4、在用户未登录情况下写cookie。当用户登录后,访问购物车列表时,a)把cookie中的数据同步到redis。b)把cookie中的数据删除c)展示购物车列表时以redis为准。d)如果redis中有数据cookie中也有数据,需要做数据合并。相同商品数量相加,不同商品添加一个新商品。5、如果用户登录状态,展示购物车列表以redis为准。如果未登录,以cookie为准。
浏览器跨域问题跨域是指从一个域名的网页去请求另一个域名的资源。浏览器出于安全的考虑,不允许不同源的请求
JSONP解决AJAX跨域问题:JSONP是服务器与客户端跨源通信的常用方法。最大特点就是简单适用,老式浏览器全部支持,服务器改造非常小。它的基本思想是,网页通过添加一个<script>元素,向服务器请求JSON数据,这种做法不受同源政策限制;服务器收到请求后,将数据放在一个指定名字的回调函数里传回来。
海量数据的存储问题如今随着互联网的发展,数据的量级也是呈指数的增长,从GB到TB到PB。对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求。这个时候NoSQL的出现暂时解决了这一危机。它通过降低数据的安全性,减少对事务的支持,减少对复杂查询的支持,来获取性能上的提升。但是,在有些场合NoSQL一些折衷是无法满足使用场景的,就比如有些使用场景是绝对要有事务与安全指标的。这个时候NoSQL肯定是无法满足的,所以还是需要使用关系性数据库。如果使用关系型数据库解决海量存储的问题呢?此时就需要做数据库集群,为了提高查询性能将一个数据库的数据分散到不同的数据库中存储。