solr(一): 整合 tomcat

前面 lucene 初探
都是为solr打基础的. 虽然lucene 的filter 没有提到, 但是打基础,
差不多够用了.

于学习.NET以来,优雅的编程风格,极度简单的但是扩展性,足够强劲开发工具,极小之上曲线,让自身对之平台发生了深厚的兴味,在办事以及读书着为积累了有些开源之机件,就时想到的先期整理为此,如果更想到,就延续加就篇日记,日积月累,就可知形成一个谈得来的机件经验库。

一. solr 和 lucene 的区别

分布式缓存框架:

Microsoft Velocity:微软自家分布式缓存服务框架。

Memcahed:一仿照分布式的高速缓存系统,目前吃不少网站采取以提升网站的访问速度。

Redis:是一个胜似性能的KV数据库。 它的出现非常非常程度上了Memcached在一些方面的阙如。

EnyimMemcached:访问Memcached最了不起的.NET客户端,集成不错的分布式均衡算法。

这边我就是因故自己的晓的话了, 可能未统, 但是相应足够了,
网上会搜到法定一点之.

开源之.NET系统推荐:

OXITE:微软ASP.NET MVC案例演示框架。

PetShop:微软ASP.NET宠物商店。

Orchard:国外一个MVC开源的博客系统。

SSCLI:微软以NET Framework 2.0一代的开源代码。

DasBlog:国外一个基于ASP.NET的博客系统。

BlogEngine.NET:国外相同放缓免费开源之博客系统。

Dotnetnuke.NET:一模仿好良好之依据ASP.NET的开源门户网站程序。

Discuz.NET:国内开源的论坛社区系统。

nopCommerce和Aspxcommerce:国外相同仿高质量的开源B2C网站系统。

JumboTCMS和DTCMS:国内个别迟迟开源的网站管理体系:

首先, solr 是因 lucene的. 就像是 springmvc 基于 servlet 一样. 只是solr
对lucene进行了扩大和优化.

日记记录非常处理:

Log4Net.dll:轻量级的免费开源.NET日志记录框架。

Enterprise Library Log Application Black:微软企业库日志记录。

Elmah:实现最盛的ASP.NET应用非常日志记录框架。

NLog:是一个简短利落的日志记录类库,性能于Log4Net高,使用以及保障难度小。

从, lucene是平等模拟检索引擎工具确保,  并无是一模一样仿完整的全文检索引擎,
目的是供一个工具确保, 让开发者能够充分便宜的当系遭到落实全文检索功能.

关于NoSQL数据库:

Mongodb:分布式文件存储数据库。

Membase:家族之一个初的重量级的积极分子。

    solr 是 一效仿企业级的全文检索服务器. 是得单独运行起来的. 

自行任务调度框架

Quartz.NET:开源的功课调度以及机动任务框架。

Topshelf:另一样栽创建Windows服务之开源框架

 

依注入IOC容器框架:

Unity:微软patterns&practicest团队开之IOC依赖注入框架,支持AOP横切关注点。

MEF(Managed Extensibility
Framework):是一个因此来放展.NET应用程序的框架,可出插件系统。

Spring.NET:依赖注入、面向方面编程(AOP)、数据看抽象,、以及ASP.NET集成。

Autofac:最盛的仗注入和IOC框架,轻量且大性能,对品种代码几乎无任何侵入性。

PostSharp:实现静态AOP横切关注点,使用简便,功能强大,对目标拦截的艺术无论需外改动。

Ninject:基于.NET轻量级开源的借助注入IOC框架

二. solr 整合 tomcat

常用之几个ORM框架:

EF(ADO.NET Entity Framework):微软根据ADO.NET开发之ORM框架。

Nhibernate:面向.NET环境的轻量级的ORM框架。

SqlMapper.cs:用于小品种的通用的C#数据库访问类。

AutoMapper:流行的目标映射框架,可减大气硬编码,很小巧灵活,性能表现也只是接受。

SubSonic:优秀之开源的ORM映射框架,同时提供可本人要之代码生成器。

FluentData:开源的基于Fluent API的链式查询ORM轻量级框架。

Dapper:轻量级高性能基于EMIT生成的ORM框架。

EmitMapper:性能于高之ORM框架,运行时经EMIT动态生成IL代码,并非以反射机制。

solr 是起于带 jetty 服务器的, 但是豪门用tomcat比较多. 具体是吧啥,
我为非是殊清楚. 

格式和数据类型转换

Newtonsoft.Json:目前.NET付出被最流行的JSON序列化库,为新本子的WebApi库提供基础。

System.JSON.dll:微软自己付出之JSON序列化组件(需要独自下载)

DataContractJsonSerializer 和
DataContractXmlSerializer
:微软于WCF中行使的序列化器。

JavaScriptSerializer:微软默认针对WEB开发者提供的JSON格式化器。

iTextSharp、PDFsharp 和 PDF.NET:通过.NET处理及生成PDF文档的机件。

SharpZipLib.dll:免费开源之ZIP和GZIP文件解压缩组件。

Math.NET:强大的数学运算、微积分、解方程和对运算。

DocX:不需装word软件,通过C#操作word文件。

SharpSerializer:开源XML和、二进制、JSON、压缩和优化框架。

今组合的是单机版, 后面有机遇的话, 会搭建集群.

照和动态语言

Clay dynamic:开源的动态语言dynamic框架让您形如javascript的法子创建对象。

ExposedObject:在类的外部通过动态语言dynamic的点子访私有成员。

PrivateObject:微软单元测试框架中便在外表调用类内部私有成员的一个接近。

第一下载工具包

跨越平台跟运转时解决方案

MONO.NET:跨平台的.NET运行条件,让.NET跨平台运行成为可能。

DotGnu Portable.NET:类似于MONO.NET的跨平台运行时。

Phalanger:将PHP编译成.NET,可实现PHP与.NET互操作。

VMDotNet:中国移动飞信所祭了之.NET运行时。

Unity3D:微软大力支持的机遇C#跟JavaScript的跨平台游戏支付框架。

Cassini、IIS Express和Cassinidev:开源的ASP.NET执行环境。

Katana:微软基于OWIN规范落实的非IIS寄宿ASP.NET和MVC等。

IKVM.NET:基于.NET的JAVA虚拟机,让JAVA运行在.NET之上。

图片 1

WEB开发同规划

Jumony Core:基于.NET开发的HTML引擎。

Microsoft.mshtml.dll、Winista.HtmlParser.dll 和
HtmlAgilityPack.dll
:解析处理HTML文档的框架。

JavaScript.NET和ClearScript(微软产品):基于.NET开发的JavaScript引擎。

NCrawler:其HTML处理引擎htmlagilitypack的底开源网络爬虫软件。

AntiXSS:微软官方预防跨站XSS脚本入侵攻击的开源类库,它经过白名单机制进行内容编码。

YUICompressor.NET、Microsoft Ajax Minifier 和 Google Closure
Compiler
:JavaScrip和CSS压缩器。

NancyFx:是一个不利的轻量级开源.NET
WEB框架。如果想快开个简易的WEB应用。

AspNetPager:国内知名的ASP.NET分页控件,支持多分页方式。

NOPI.dll:导出Excel报表的插件(基于微软OpenXml实现)(nopi.css.dl通过css设置样式)

Enterprise Library:微软本着企业级应用开发的极品实践组件。

PowerCollections:国外一个牛人写的高等开源集合。

solr下载地址 : http://mirror.bit.edu.cn/apache/lucene/solr/

活动互联网跟称计算

PushSharp:通过.NET向各种走平台推送消息。

mono for android:用.NET语言开发安卓应用:

MonoTouch:用.NET语言开发IOS应用。

PhoneGap和AppCan:跨平台基于HTML5的位移开平台。

Cordova:PhoneGap贡献给Apache后底开源项目,是让PhoneGap的为主引擎。

下载了晚, 解压到一个文书夹中.

纱通信以及网络协议

SuperSocket:基于.NET轻量级的不过扩大的Socket开发框架。

SuperWebSocket:通过.NET实现TML5 WebSocket框架。

XProxy:支持插件的功底代理程序集,内置NAT、加解密、反向、直接与间接代理。

 

图表和图像处理框架

Paint.NET:基于.NET小巧灵活有力的图形处理开源项目。

Imagemagick.NET:用C#本着开源图像处理组件Imagemagick的卷入。

Skimpt:基于.NET开源的屏幕截图软件。

ImageGlue.NET:商业的图像处理组件,支持的格式列了同等分外堆。

Sprite and Image Optimization
Framework
:微软CSS精灵,多图合成一张大图和CSS样式。

  1. 创建solrhome 文件夹

桌面应用程序框架

DevExpress:一个世界知名的桌面应用程序UI控件库。

Prism:微软出之针对性WPF和Silverlight的MVVM框架,通过功能模块化的思考,来讲复杂的工作职能与UI耦合性进行分离。

WPFToolkit 和 Fluent Ribbon Control
Suite
:开发近乎于Office风格的Ribbon菜单。

图片 2

测试和性质评估方面

Faker.Net:方便生成大批量测试数据的框架。

Nunit:一个轻量级的单元测试框架。

Moq:非常流行的Mock框架,支持LINQ,灵活且赛性能。

xUnit:比NUnit更好之单元测试框架,升级改良版本的Nunit框架。

MiniProfiler和Glimpse:基于MVC的简单款款性能事件监控框架。

将 solr-6.6.2\server\solr 文件夹下之备文件, 拷贝到 solrhome
文件夹下去. 

作业以及分布式事务支持

KtmIntegration:一个支持NTFS文件系统的事情开源类。

NET Transactional File
Manager
:对文件系统操作(复制、移动与去)加入工作支持。

于solrhome文件夹下, 新建一个文本夹, 名称可以自拟. 我此为core1.
configsets 文件夹可以不考过去. 

分词、全文检索和摸索引擎

Lucene.net:流行大性能的全文索引库,可用来为各类信息提供强大的检索功能。

Lucene.Net.Analysis.PanGu:支持Lucene.Net最新版本的天神中文分词扩展库。

图片 3

数码说明组件整理

FluentValidation for .NET:基于LINQ表达式方法链Fluent接口验证组件。

Microsoft.Practices.EnterpriseLibrary.Validation.dll:微软企业库验证程序块。

CuttingEdge.Conditions:基于Fluent接口方法练接口的契约编程组件。

DotNetOpenAuth:让网站有支持OpenID、OAuth、InfoCard等身份认证的能力。

 进入这里的 configsets\basic_configs 文件夹着, 将conf文件夹拷贝出来,
放到 core1 文件夹下去.

开源图表统计控件:

Visifire:一模仿效果很好之WPF图表控件,支持3D绘制、曲线、折线、扇形、环形和梯形。
SparrowToolkit:一仿WPF图表控件集,支持绘制动态曲线,可绘制示波器、CPU使用率和波。
DynamicDataDisplay:微软起源之WPF动态曲线图,线图、气泡图和热力图。

 

可扩展消息队列路,如:Kafka是同等栽分布式的,基于发布/订阅的音信网。主要设计目标如下:
以时复杂度为O(1)的法子提供信息持久化能力,即使对TB级以上数据也能确保常数时间复杂度的看性能。
赛吞吐率。即使在老大廉价的商用机器及啊能不辱使命单机支持各国秒100K条以上信息之传输。
支持Kafka
Server间的音信分区,及分布式消费,同时保证每个Partition内的信息顺序传输。
而支持离线数据处理及实时数据处理。
Scale out:支持在线水平扩展。
RabbitMQ
RabbitMQ是采取Erlang编写的一个开源的音队列,本身支持广大底合计:AMQP,XMPP,
SMTP,
STOMP,也正因如此,它充分重量级,更可给企业级的付出。同时落实了Broker构架,这意味着消息在殡葬给客户端时先以主导队列排队。对路由,负载均衡或者数持久化都生良好之支撑。
Redis
Redis是一个基于Key-Value对的NoSQL数据库,开发保护非常欢。虽然它们是一个Key-Value数据库存储系统,但它本身支持MQ功能,所以完全好用作一个轻量级的队服务来以。对于RabbitMQ和Redis的入队以及出队操作,各执行100万次等,每10万不成记录一致不成施行时间。测试数据分为128Bytes、512Bytes、1K跟10K季个不等尺寸的数额。实验表明:入队时,当数码较小时Redis的性质要高于RabbitMQ,而若数额大小超过了10K,Redis则慢的无法忍受;出队时,无论数额大小,Redis都见来非常好的性能,而RabbitMQ的出队性能则颇为小于Redis。
ZeroMQ
ZeroMQ号称太抢之音讯队列系统,尤其针对大吞吐量的要求状况。ZeroMQ能够落实RabbitMQ不善于的高档/复杂的序列,但是开发人员需要自己成又技艺框架,技术达到的复杂度是对准当下MQ能够以成的挑战。ZeroMQ具有一个破例之非中间件的模式,你莫待设置和运转一个信服务器或中件,因为若的应用程序将装这个服务器角色。你就待简单的援ZeroMQ程序库,可以以NuGet安装,然后您便好喜的于应用程序之间发送信息了。但是ZeroMQ仅提供非持久性的班,也就是说要宕机,数据以见面丢掉。其中,Twitter的Storm
0.9.0先的本子中默认使用ZeroMQ作为数据流的导(Storm从0.9版开始又支持ZeroMQ和Netty作为传输模块)。
ActiveMQ
ActiveMQ是Apache下的一个子项目。
类似于ZeroMQ,它能够为代表和沾对点之技能实现队列。同时类似于RabbitMQ,它少量代码就得快捷地实现高级应用场景。
Kafka/Jafka
Kafka是Apache下的一个子项目,是一个胜性能跨语言分布式发布/订阅消息队列系统,而Jafka是当Kafka之上孵化而来之,即Kafka的一个升级版。具有以下特征:快速持久化,可以于O(1)的系出下开展信息持久化;高吞吐,在平贵一般的服务器上既好达成10W/s的吞吐速率;完全的分布式系统,Broker、Producer、Consumer都原生自动支持分布式,自动实现负载均衡;支持Hadoop数据交互加载,对于如Hadoop的如出一辙的日志数据和离线分析体系,但还要要求实时处理的限制,这是一个有效之缓解方案。Kafka通过Hadoop的相加载机制统一了在线与离线的音讯处理。Apache
Kafka相对于ActiveMQ是一个好轻量级的信息网,除了性能大好外,还是一个做事出色的分布式系统。

图片 4

这里的managed-schema 在配置core的时候, 会用到. 

 

  1. 拷贝webapp 到 tomcat中

2.1 将solr-6.6.2\server\solr-webapp\webapp文件夹拷贝到 
apache-tomcat-8.5.24\webapps 文件夹下去, 然后以拷贝过来的 webapp
文件夹又命名吧 solr

图片 5

2.2 在tomcat solr web-inf 文件夹下, 新建classes文件夹.
将log4j文件拷贝过来

 图片 6

2.3 修改 web.xml 文件

 图片 7

修改env-entry-value 为 新建的 solrhome 路径

图片 8

 将 web.xml 文件最底端的 security-constraint 注释掉

 图片 9

2.4 导入 jar 包

图片 10

 

三. 启动tomcat

完了地方的操作之后, 就得启动tomcat了

地址: http://localhost:8080/solr/index.html

图片 11

首先不好开行的时段, 图片 12 里面是没core的,
这里要自己新增

图片 13

name 和 instanceDir 写成之前新建文件夹 core1. 

schema 写成  managed-schema.xml , 就是前方提到过之公文

 然后点击add就足以了.

图片 14

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注