业务一:邮轮模块的开发
1.比较复杂的是数据库的设计——每种邮轮下对应不同的邮轮,每个邮轮又有不同的子业务,关系比较复杂,所以使用了Solr进行分布式的搜索,提高搜索的速度。新建一个实体类继承Solr抽象实体类,它主要放一些ID索引。还有一个服务类是用来对Solr实体进行一些操作。这样我们可以通过Solr进行快速查询,然先将查询到数据返回前端进行下一步操作。
业务二:
1.景点门票这块,我们是通过接入第三方API进行二次销售。通过他们的API文档,传入API所需的参数,返回给我们数据,我们提取出所需数据导入数据库。这边做了一个定时器用于接口频次的控制,我们是控制在一分钟300次来保证数据的实时性。这边的下单也是接入他们的接口,由他们返回的信息来验证用户是否下单成功。
项目背景:该a项目使用了SSH + jQuery框架,并整合了Memcached、Solr进行缓存和分布式搜索。
工作任务及完成情况:完成了邮轮旅游板块下的Web开发,并接入第三方的接口提供门票的售卖。
相关问题
1.什么是Solr——全文搜索平台,Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。
2.反向索引:即可以根据apple这个单词(索引),从而找出所有出现这个单词的所有书籍,此时,单词是key,书是value(详细内容看这里https://blog.csdn.net/wangxuelei036/article/details/106421313?utm_medium=distribute.pc_feed_404.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecase&depth_1-utm_source=distribute.pc_feed_404.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecas)
3.关键词的实现:采用了词元匹配和切分词。举个例子:厦门-日本----luncence切分词:厦门 日本 厦日 日门 等等这些分词。所以我们搜索的时候都可以检索到。
4.实时索引:从索引一个文档直到这个文档能够被搜索到有一个轻微的延迟(通常是1秒)。