day82淘淘商城项目15项目的总结+项目中的问题匠心笔记黑泽君

第一天:学习电商行业的背景,电商模式:B2B、B2C、B2B2C、O2O。分布式,集群的理解,系统的架构,基于SSO的架构。使用Maven搭建后台工程,及SVN的使用。

SSM的整合,逆向工程,商品列表展示,分页插件的使用,Easyui的使用(datagrid的使用查询商品列表)。学习dubbo的架构及4个角色,如何在spring使用。dubbo的使用贯穿于整合项目,有服务层和表现层的交互就需要使用dubbo。

第三天:商品类目的选择,使用EasyUI的tree控件。传统图片上传功能,上传到某一个tomcat,在集群环境下,上传之后,有可能由另一台服务器提供服务,图片不存在,所以需要单独建立图片服务器FastDFS(tracker、storage)。在集群环境下使用FastDFS来存储图片(会使用FASTDFS客户端上传下载图片即可)。还有富文本编辑器KindEditor的使用(纯js实现的)。富文本编辑器:引入JS、定义好数据源(textarea)、表单提交之前、同步数据、将富文本编辑器中的内容同步到textarea中。

第四天:商城首页系统(portal)的搭建,使用伪静态URL拦截形式:*.html。(SEO:搜索引擎优化)首页的数据应当动态展示,需要有一个CMS系统来动态维护(CMS:内容管理系统),就是内容和内容分类管理。轮播图的动态展示。首页访问压力很大,需要做缓存redis。

第五天:在首页中的访问压力特别大,需要解决高并发的问题,使用缓存技术,学习了redis技术,并使用redis的java客户端Jedis在内容获取时的服务层中添加缓存及缓存同步。redis:就是一种以KEY-VALUE形式存储数据在内存中的技术(主要用于缓存)。

setgetexpireincrkeys*redis五种存储数据类型:stringhashlistsetsortedsetsortedset用于做排行榜,有序,并且不重复。redis的持久化方案:RDB、AOF。RDB:快照。AOF:(appendonlyfile)redis中的每一个操作都记录起来。一旦重启,就可以将原来数据恢复。需要手动开启AOF持久化方案,默认是开启RDB。

redis服务器的搭建及集群搭建(奇数结点)因为:redis集群中有投票机制,半数以上投票。注意:添加缓存的逻辑不能影响正常的业务逻辑。应用最多的数据类型是string和hash。

索引流程及搜索流程。学习入门程序:索引流程的代码实现。luke的使用。学习入门程序:搜索流程的代码实现。索引域及文档的域,以及Field域的说明(是否分词、是否索引、是否存储)

分词的过程:分词(英文单词,按空格分词)-->过滤(标点符号去掉)-->大写转小写-->去掉停用词。

中文分词器的IKAnalyzer的使用:1、jar包添加到工程buildpath2、配置文件(xx.cfg.xml、扩展词典、停用词词典)放入classes下3、定义业务域特点:可以扩展、可以维护、支持中文分词。

第九天:taotao商城的solr服务在linux的搭建,搜索服务层系统的搭建,表现层搭建,并使用solr实现商品搜索功能(中文分析器的配置、业务域定义、入数据到索引库、索功能的实现)。solr分页:通过solrj设置start,设置rows,默认查询是10条。查询的时候需要指定默认的搜索域。

第十一天:索引库需要同步时,可以使用异步消息的中间件(activemq)来实现索引库的同步。

Activemq的使用场景:不需要同步等待时的系统之间的通信使用。比如:订单系统。

产生订单后,需要发送响应给客户,提示成功。但不需要等待用户点击确定后才继续产生订单。订单系统只需要产生订单后,异步发送一个消息,又继续执行下一个产生订单逻辑而不需要再等待页面响应。同步索引库。同步缓存。生成静态页面。

传递消息的类型:PTP-->queue-->默认缓存在mq服务器上,只能被一个消费者接收。publish/subscribe-->topic默认是不缓存,可以被多个消费者接收。(需要消费者先订阅)

消息的格式(JMS的规范)6种格式。TxtMessage、ObjectMessage、ByteMessage、……1、一般是和spring进行整合使用。2、发送端:JMSTemplate发送消息。3、接收端:使用设置一个监听容器-->指定监听器(MessageListener)。

第十二天:商品详情的系统搭建(参考京东,访问商品详情时,域名已经变化)。使用jsp和redis实现页面的高性能动态展示。如果高并发量:需要实现网页静态化来提升响应速度。

第十六天:订单提交的功能实现。项目的部署,mysql的linux的安装,系统的网络拓扑图,服务器的域名规划,服务器的数量规划及部署。使用tomcat的热部署,反向代理的配置。

PS:以下描述若与就业老师所说有冲突,请以就业老师为准,另外参考简历一定要改,切不可拿来主义

1、淘淘商城简历中的描述参考简历。注意:在真实的开发项目中,开发工程师不可能开发所有的模块,只会负责某几个模块,大家所要描述的是:你所负责的模块(一般3到4个模块)。

2、淘淘网站的并发量大概:说5000左右也行。(此处要问怎么来的,可以说经过压力测试出来的,自己没做过,但是知道。有些情况下,并不是所有的事情都是由你来做,由面试官决定用不用你,你把所知道的说清楚就行)可以满足目前的业务需求。由于我们的系统是分布式架构,支持水平扩展,如果将来并发量提高的话,可以增加服务器来提高并发量。

3、淘淘商城人员的配置产品经理:3人,确定需求及给出产品原型图。项目经理:1人,项目管理。前端团队:5人,根据产品经理给出原型制作出静态页面(当然也包括UI)。后端团端:20人,实现产品的功能(你们就属于后端团队)。测试团队:5人,负责测试产品的所有的功能。

4、开发周期现在开发采用敏捷开发,快速迭代,开发周期大概6-8个月,后期一般采用迭代的方式开发,一般迭代的周期为一个月左右。(迭代就是所谓的一个小版本的开发)

5、SKU表示唯一确定唯一的商品的单位(最小库存单位)SKU==商品ID例如:对于京东的一款商品:一种颜色,一种配置,一种配送方式,就唯一确定一个商品,这种就叫做一个SKU。类似于下图:

7、你前台系统portal采用4服务器做集群部署,前台系统的并发量提升上去,那对于数据库会不会造成一个瓶颈,这一块你们是怎么处理的?portal在高并发的情况下,可以通过部署集群来提高并发量,这种时候,如果每次都访问数据,确实会对数据库造成很大的压力,那么这时候,我们就采用在服务层增加缓存,使用redis实现,这样客户端请求到达时,先从缓存中读取,如果存在数据则直接返回,而不会再从数据库查询,如果缓存中没有,则从数据库查询,这样就可减少数据库的访问,达到提升数据的访问瓶颈。

9、你们商城是通过什么来做搜索的?因为系统要使用站内搜索功能,数据量很大,需要使用solr。solr是(基于lucene)搜索引擎,可以独立部署,来实现搜索功能、高亮显示、性能优化,可以解决高并发的搜索需求。例如:我们系统就是用solr做商品搜索。-->怎么做的呢?solr是一个服务器,需要搭建,需要先定义好Field和FieldType,定义中文分词器,再使用。通过solr的Java客户端solrj连接solr服务,它提供丰富的操作索引的方法,可以通过这个客户端来实现搜索功能。你们索引库一般有多少数据?答:几百万如果数据量特别大?怎么办?答:做集群。索引库是如何同步?答:activemq异步消息队列。

11、你们使用activemq应用在哪种业务场景中,既然都是系统通信,和其他的系统通信有什么区别?我们使用activemq应用在生成商品详情,同步索引库。activemq是一个消息中间件,异步发送消息,而其他通信技术:比如dubbo,是同步等待。比如:使用activemq在商品服务模块,添加商品并不需要等待索引库同步完成后才能继续添加下一个商品,只需要异步发送一个消息告诉索引服务,索引服务通过商品ID查询商品更新索引。再有:面试中,要淡定,如果有面试官问:数据库设计这样做正确吗?你不清楚的情况下,你就说我们公司就是这么解决的。其他的我不知道。有些面试官,可能他也不知道,他也想知道。

13、你们的商城的秒杀方案是什么?1、将商品的数量放入redis中。2、秒杀时,可以使用decr命令将商品的数量减一。如果不是负数说明抢到。3、如果返回的是负数,说明商品已经抢完。

14、dubbo服务使用流程,运行流程?zookeeper注册中心的作用?使用流程:第一步:要在系统中使用dubbo应该先搭建一个注册中心,一般推荐使用zookeeper。第二步:有了注册中心然后是发布服务,发布服务需要使用spring容器和dubbo标签来发布服务。并且发布服务时需要指定注册中心的位置。第三步:服务发布之后就是调用服务。一般调用服务也是使用spring容器和dubbo标签来引用服务,这样就可以在客户端的容器中生成一个服务的代理对象,在action或者Controller中直接调用service的方法即可。Zookeeper注册中心的作用:主要就是注册和发现服务的作用。类似于房产中介的作用,在系统中并不参与服务的调用及数据的传输。

15、redis为什么可以做缓存?项目中使用redis的目的是什么?redis什么时候使用?1、Redis是key-value形式的nosql数据库。可以快速的定位到所查找的key,并把其中的value取出来。并且redis的所有的数据都是放到内存中,存取的速度非常快,一般都是用来做缓存使用。2、项目中使用redis一般都是作为缓存来使用的,缓存的目的就是为了减轻数据库的压力提高存取的效率。3、在互联网项目中只要是涉及高并发或者是存在大量读数据的情况下都可以使用redis作为缓存。当然redis提供丰富的数据类型,除了缓存还可以根据实际的业务场景来决定redis的作用。例如使用redis保存用户的购物车信息、生成订单号、访问量计数器、任务队列、排行榜等。

16、AcitveMQ的作用、原理?(生产者。消费者。p2p、订阅实现流程)Activemq的作用就是系统之间进行通信。当然可以使用其他方式进行系统间通信,如果使用Activemq的话可以对系统之间的调用进行解耦,实现系统间的异步通信。原理就是生产者生产消息,把消息发送给activemq。Activemq接收到消息,然后查看有多少个消费者,然后把消息转发给消费者,此过程中生产者无需参与。消费者接收到消息后做相应的处理和生产者没有任何关系。

17、ActiveMQ在项目中如何应用的?Activemq在项目中主要是完成系统之间通信,并且将系统之间的调用进行解耦。例如在添加、修改商品信息后,需要将商品信息同步到索引库、同步缓存中的数据以及生成静态页面一系列操作。在此场景下就可以使用activemq。一旦后台对商品信息进行修改后,就向activemq发送一条消息,然后通过activemq将消息发送给消息的消费端,消费端接收到消息可以进行相应的业务处理。

18、ActiveMQ如果数据提交不成功怎么办?Activemq有两种通信方式,点到点模式和发布订阅模式。如果是点到点模式的话,如果消息发送不成功此消息默认会保存到activemq服务端直到有消费者将其消费,所以此时消息是不会丢失的。如果是发布订阅模式的通信方式,默认情况下只通知一次,如果接收不到此消息就没有了。这种场景只适用于对消息送达率要求不高的情况。如果要求消息必须送达不可以丢失的话,需要配置持久订阅。每个订阅端定义一个id,在订阅时向activemq注册。发布消息和接收消息时需要配置发送模式为持久化。此时如果客户端接收不到消息,消息会持久化到服务端,直到客户端正常接收后为止。

20、当技术面试官问到你某个技术点更深层次研究时,自己没有深入了解怎么回答?如果没有深入研究就直接回答不知道就可以了。

22、solr的原理Solr是基于Lucene开发的全文检索服务器,而Lucene就是一套实现了全文检索的api,其本质就是一个全文检索的过程。全文检索就是把原始文档根据一定的规则拆分成若干个关键词,然后根据关键词创建索引,当查询时先查询索引找到对应的关键词,并根据关键词找到对应的文档,也就是查询结果,最终把查询结果展示给用户的过程。

23、solr里面IK分词器的原理IK分析器的分词原理本质上是词典分词。现在内存中初始化一个词典,然后在分词过程中逐个读取字符,和字典中的字符相匹配,把文档中的所有的词语拆分出来的过程。

24、业务如何说?先说业务、说表、说具体实现?先说总体的业务流程,然后再说具体业务的实现方法及使用的技术。最后说你在系统中负责的内容。不需要说表结构。

34、第一个是当两个客户同时买一件商品时库存只有一个了,怎么控制?可以使用mysql的行锁机制,实现乐观锁,在更新商品之前将商品锁定,其他用户无法读取,当此用户操作完毕后释放锁。当并发量高的情况下,需要使用缓存工具例如redis来管理库存。

35、对数据库只是采用了读写分离,并没有完全解决数据库的压力,那么有什么办法解决?如果数据库压力确实很大的情况下可以考虑数据库分片,就是将数据库中表拆分到不同的数据库中保存。可以使用mycat中间件。

37、solr的索引查询为什么比数据库要快?Solr使用的是LuceneAPI实现的全文检索。全文检索本质上是查询的索引。而数据库中并不是所有的字段都建立的索引,更何况如果使用like查询时很大的可能是不使用索引,所以使用solr查询时要比查数据库快。

38、solr索引库个别数据索引丢失怎么办?首先Solr是不会丢失个别数据的。如果索引库中缺少数据,那就向索引库中添加。

39、Lucene索引优化直接使用Lucene实现全文检索已经是过时的方案,推荐使用solr。Solr已经提供了完整的全文检索解决方案。

THE END
1.如何设置顺手买一件商品搭配和类目搭配如果搭配规则中有多个商品,则算法介入在指定的商品池中寻找最可能成交的商品进行推荐。 B、类目搭配设置方法: 1、在顺手买一件设置首页寻找到“设置类目搭配规则”按钮。 2、点击【新增一条规则】。 3、已授权的类目将展示出来,可选择多个或一个类目匹配一个类目形成策略,点击设置策略并生效后这条规则将生效。 https://www.5pao.com/theuser/hydetail-68239.html
2.数据纵横中哪些内容属于经营分析(速卖通通关知识)D. 橱窗推荐个数 如何发布一个商品 (不定项选择,共4题,每题2分,共8分) 1、关于产品类目说法正确的是 (正确答案:ABCD) A. 错误的类目选择会影响曝光 B. 必须选择类目之后才能进入产品发布页面 C. 类目在产品排序中很重要 D. 错误的类目选择会受到平台处罚 ...https://www.niaogebiji.com/article-494206-1.html
1.淘宝店铺只做一个类目吗?一个类目可以上多少产品?淘宝一个商品怎么设置多个类目? 在淘宝上,一个商品只能选择一个主类目进行归类,但可以选择多个次类目。以下是设置一个商品的多个类目的步骤: 1、登录淘宝卖家后台:使用你的淘宝卖家账号登录淘宝卖家后台。 2、进入商品编辑页面:找到需要设置多个类目的商品,在商品管理中选择编辑,进入商品编辑页面。 https://m.maijia.com/article/565063
2.淘宝考试题目与答案规则频道右侧栏目是下列哪一项不是信用评价和店铺评分的区别?信用评价中的好评会使得被评价人累计一分信用积分,而店铺评分不累计信用积分。 9、卖家违规累计扣到多少分,会被执行节点处罚?十二分 10、《淘宝规则》的违规积分如何清零?每年一次 11、下列哪些类目的商品不需要具备特殊资质就能出售?服装类目 ...https://blog.csdn.net/wcqlwyt/article/details/80631776
3.《我在阿里做运营》读书笔记(我在阿里做运营)书评一个企业最核心的能力是什么?是做同样的事情,你比别人做得更好。在大平台工作三年内,创业公司工作一年内,都不要谈战略,而是要把老板交给你的每一件事情,尽快验证老板的战略。1.2.1 区别:运营是侦察兵,营销是轰炸机营销的主要工作是扩大品牌影响力、开源、引流、吸引新用户,从大层面上去影响用户,但不重视转化和...https://book.douban.com/review/10230258/
4.淘宝天猫商城电子商务运营考试试题2、“搭配套餐”可以使一件商品搭配不超过几件的其他商品来进行捆绑销售?( B ) A、1件 B、4件 C、不限 3、淘宝的每一家店铺有多少个友情链接位?( B ) A、10个 B、35个 C、不限 4、一件商品最多可以添加到多少个店铺类目里?( B ) A、1个 B、10个 C、20个 ...https://m.oh100.com/kaoshi/peixun/375296.html
5.阿里巴巴电子商务认证测试题国际站6.每位中国供应商都会获得一个专用域名B A. http://***.alibaba.com B. http://***.en.alibaba.com C. http://***.en.alibaba.com.cn D. http://***.alibaba.com.en 7.能在不同类目下发布的是B A. 私人产品 B. 供求信息 C. 公司信息 ...https://www.unjs.com/zuixinxiaoxi/ziliao/20170723000008_1402960.html
6.帮助中心一、点击“提问”,如下图: 点击上图中“提问”按钮,接下来,您进入到一个问题详细设置页面,在这里您可以输入您提问的问题。 在提问输入框中输入您的问题,例如: 输入“冬天装修应注意哪些问题?”,并点击“我要提问”按钮。 二、问题的详细设置 接下来,您进入到一个问题详细设置页面,在这里您可以进一步对您的...https://www.tongyi.com/index.php/helpp/search
7.供应商档案管理制度(通用12篇)国家档案局的《工业企业档案分类试行规则》第四条规定:“工业企业档案分类设置十个一级类目……有些档案难以归入上述十大类目时,可根据实际需要增设一级类目”。所以,我们认为根据《工业企业档案分类试行规则》相关规定和工业科技知识产权活动的特点,应当把知识产权档案作为一个新的企业档案一级类目;在此一级类目下,把...https://www.yjbys.com/zhidu/4414885.html
8.淘宝云客服75题考试题目和答案的内容淘宝云客服的考试与淘宝客服考试是一样的,只是一个是通过线上考试,一个是通过面对面考试,虽然考试方式不同,但是考试内容基本上是相同的,以下是淘宝云客服考试中常见的75道考题,您可以参考一下。 做淘宝云客服也是要考试的,其考试内容主要包括单选题、多选题、判断题和简答题,下面下编为大家简单分享一下。 https://www.mmker.cn/article/5869.html
9.商品属性的前世今生:你所不了解的知识点指的是能唯一确定商品的属性。关键属性可以是一个属性,也可以是一群属性的集合。他能确定某一商品的集合,而不是单独的商品。 比如手机类目,品牌和型号可以看做关键属性,两者放在一起后你就能确定某个商品集合(SPU);就像华为mate30就是商品集合,华为是品牌,mate30是系列,但是我们无法知道该商品的具体信息,其实华为...https://maimai.cn/article/detail?fid=1623306184&efid=yEfw2cV0dbTvxbezlQAS1w
10.对不起,汽车电商没有捷径汽车频道问题在哪儿?模式太浅,没涉及到供应链、交易、交付这些环节,根本到不了电商的层面,经销商把客户截胡,说没成交,媒体的线索就白忙活了。所以这种东西最大的价值就是收个线索钱。天花板,就是4S店市场部的营销费的一部分。 第二波,直接卖车。 自己搞个B2C或天猫这类挂商品,客户下单,找个门店交付。 https://auto.hexun.com/2021-07-02/203889123.html
11.淘宝重复铺货的定义各类目重复铺货判定案例店铺运营3、同种商品允许按照不同颜色分别发布展示,但是如果一件宝贝主图或标题或描述已包含了各种颜色或者各种颜色的销售属性,然后又以此不同颜色分别发布展示,属于重复铺货。 七、网游物品:网游物品 >游戏币 1、该类目一个区服下发布商品数量不能超过5件,否则,多余的商品作为重复铺货处理。 https://m.jb51.net/dianshang/186217.html
12.一手货源平台(一手货源怎么找)14、郭煌网一个大型批发平台,也是一个外贸网站。类目比较多,如电子产品,配件,化妆品,服装,珠宝,玩具等,也都支持一件代发的。15、货源之家网站货源丰富,不管是服饰箱包、珠宝首饰、小商品、家居日用、食品等等还是美容护肤这里都有。16、53货源网53货源网主要推荐免费淘宝网店代理代销货源信息,产品包括女鞋、饰品、...http://www.tjkongcheng.com/news/6814.html
13.最新Shopee虾皮新手卖家考试大全(试题+答案)D.卖家整体预售商品占比小于10% A.40马币 B.60马币 C.20马币 D.80马币 A.每个月的第一天清零上个月的惩罚分数 B.第个季度(1/4/7/10)的第一周周一,会清零上一季度的惩罚分数 C.每个月的最后一天清零本月的惩罚分数 D.不会清零,一直累积 ...https://www.yoojia.com/ask/17-11716505750805958266.html