Solr In Action 中文版 第一章(三)

  1. 1.1              为何选用Solrios

在本节中,咱们但愿能够提供一些关键信息来帮助于你判断Solr是不是贵公司技术方案的正确选择。咱们先从Solr吸引软件架构师的方面提及。web

  1. 1.1              软件架构师眼中的Solr服务器

在评估一项新技术时,软件架构师必需要考虑一系列的因素,其中就包括系统的稳定性,可伸缩性,还有容错性。Solr在这三方面的得分都很不错。架构

         说到稳定性,Solr是一个由活跃的开源社区和经验丰富的代码提交者共同维护的一项成熟技术。SolrLucene的新用户们一般会惊讶于项目的发布方式,可能他们之前都是等待某个项目的官方Release版,没据说过这种从分支上直接pull下来的方式。无论你的公司是否接受这种方式,咱们并非建议你这么作,咱们想代表的是,LuceneSolr项目中自动测试模块的测试深度和宽度是值得信任的。简单来讲,若是你从分支上拿到了一个nightly build,若是全部的自动测试都能经过,那你就能够放心的确定全部的核心功能都是ok的了。负载均衡

         咱们在1.2.6节中已经接触到了Solr实现可伸缩性扩展的方法,在1.2.7节中也讨论了容错性的问题。做为一个架构师,你可能最好奇的是Solr的可伸缩性功能和容错性功能的局限到底在哪里。首先,你须要知道在Solr4中,分片功能和复制备份功能都被重写了,在鲁棒性和易于管理方面都有很大提升。新的扩展方式被称为SolrCloud。其底层实现上,SolrCloud使用了Apache ZooKeeper来管理Solr集群上的配置同步,并监控集群的运行状态。这里列出了一些Solr全新的SolrCloud功能的亮点:分布式

·中心化的配置学习

·分布式的索引,避免单点失败(SPoF测试

·自动容错,自动产生新的主分片ui

·任意节点都可触发覆盖整个集群全部分片的分布式全查询,且已经集成了自动容错和负载均衡spa

可是这并非说Solr的可伸缩性就没有提升的空间了。SolrCloud在两方面还有待提升。首先,不是全部功能都能工做在分布式模式下。好比 joins链接功能。其次,一旦索引创建,索引的分片数目就不能再动态调整,要想改变分片数的话只能从新对全部文档创建索引。咱们在第16章会详细讨论SolrCloud的方方面面,可是咱们但愿确保软件架构师们可以意识到Solr的可伸缩性过去几年中已经走过了很长的路,并且从此还将继续不断地改进下去。

  1. 1.2              系统管理员眼中的Solr

做为一名系统管理员,在考虑开始使用像Solr这样的一种新技术时,最优先考虑的是新技术是否可以很好地和已有系统进行配合。对于Solr来讲对这个问题能够很轻松的回答YESSolr 彻底是基于JAVA开发的,能够在任意一个装有J2SE 6.x/7.x JVM虚拟机的操做系统上运行。并且Solr还自带了Oracle提供的开源Java Servlet引擎Jetty,拿来就能用。另外一方面,Solr是一个标准的Java Web应用,能够很方便的在JBoss或是Oracle AS之类的Java web应用服务器上进行部署。

Solr的全部操做均可以经过HTTP请求来完成, 而且Solr在设计时就考虑到了同Squid或是Varnish这样的HTTP反向代理协同工做。Solr同时也支持JMX,因此你能够把Solr挂载到你喜欢的监控程序(好比Nagios)之下进行监控。

最后,Solr提供了一个不错的管理控制台, 能够用于检查配置,查看统计信息,发起测试查询,以及监控SolrCloud的健康状况等等。图1.4展现了Solr4 管理控制台的一个截屏,咱们会在第二章中详细的学习管理控制台的使用。

  1. 1.2.1        公司CEO眼中的Solr
    尽管CEO之类的人物是不太可能看这本书的,咱们仍是要写几点关键的,以便于万一CEO在大厅里叫住你聊聊的时候你能够拿这几点去忽悠他。首先,管理层的人喜欢听到他们今天对技术作出的一笔投资将会在从此很长一段时间内都产生效益。具体到Solr,你能够强调一下许多公司至今还在靠着Solr 1.4运行公司的产品,这但是2009年发布的老版本,这说明Solr是有着成功的商用案例的,而且一直持续在改进。

此外,CEO们喜欢可控可预测的技术。正如你在接下来的章节里所要看到的那样,Solr很好用,你能够在几分钟以内就搭起一个简单的Solr服务。另外一个疑问是若是万一负责Solr的那个员工跳槽或是跑路了,咱们公司的业务会受到影响吗?不会所以整个服务当掉把?Solr的技术确实比较复杂,可是其开源社区很是的活跃,这意味着你只要上去求助基本上都能及时获得帮助。并且,你是直接能够看到源码的呀,有的时候你发现一个地方写的有问题那你能够直接本身fix掉就好了。另外也有许多商业化的服务商能够帮你规划,实现和维护你的Solr系统,其中不少服务商还提供Solr相关的培训课程。

接下来这一点可能CFO更关心,就是使用Solr的投资花费问题。投资使用Solr其实花不了多少钱。咱们不用知道你的运营环境的规模大小就能够很自信的说,你能够在几分钟以内就搭起一个简单的Solr服务,而且很快就能够创建文档的索引。如今搭在云端的一个服务器能够在亚秒级(译者注:即不到一秒的时间以内)就处理完上百万的文档请求。

相关文章
相关标签/搜索