Hibernate Search 3.0.0.GA offers two back ends

本文介绍了Lucene在非集群及集群环境下两种不同的工作模式:直接更新Lucene索引目录和通过JMS队列进行更新。前者简单易用,变化内容能即时在查询中体现;后者适合高吞吐量场景,通过主从模式确保更新的一致性和可靠性。
2.2.1. Lucene
In this mode, all index update operations applied on a given node (JVM) will be executed to the Lucene directories (through the directory providers) by the same node. This mode is typically used in non clustered environment or in clustered environments where the directory store is shared.

[img]http://www.hibernate.org/hib_docs/search/reference/en/shared/images/lucene-backend.png[/img]

This mode targets non clustered applications, or clustered applications where the Directory is taking care of the locking strategy.

The main advantage is simplicity and immediate visibility of the changes in Lucene queries (a requirement is some applications).

此模式适用于非集群应用程序,或者集群化的应用程序处理了共享索引文件的文件锁策略。此实现方式主要的优势是简单,可以立即在集群的任何服务器的Lucene搜索请求中见到被索引的内容

2.2.2. JMS
All index update operations applied on a given node are sent to a JMS queue. A unique reader will then process the queue and update the master Lucene index. The master index is then replicated on a regular basis to the slave copies. This is known as the master / slaves pattern. The master is the sole responsible for updating the Lucene index. The slaves can accept read as well as write operations. However, they only process the read operation on their local index copy and delegate the update operations to the master.

[img]http://www.hibernate.org/hib_docs/search/reference/en/shared/images/jms-backend.png[/img]

This mode targets clustered environments where throughput is critical, and index update delays are affordable. Reliability is ensured by the JMS provider and by having the slaves working on a local copy of the index.

所有在各个应用服务器节点索引的更新操作都被发送到JMS队列。一个唯一的阅读器将处理这个队列,更新这个lucene索引。接下来主索引将被拷贝到从索引中。就是所谓的主从模式。主索引服务器是唯一负责更新Lucene索引的。从夫妇其可以接收读和写操作。可是他们值处理读操作在它们的本地索引拷贝,并且代理更新操作到主服务器。

Note
Hibernate Search is an extensible architecture. While not yet part of the public API, plugging a third party back end is possible. Feel free to drop ideas to hibernate-dev@lists.jboss.org.


支持同步异步索引策略,但是建议先使用同步策略,当同步出现性能问题时,使用异步策略,但是要proper benchmark([b]not a lonely cowboy hitting the system in a completely unrealistic way[/b])需要模拟一个真实的环境来考察。

看到这里,感觉hibernate的lucene还是有些诱惑力的。已经解决了前端应用服务器集群的索引问题。但是相对于使用solr这样的独立索引服务器(solr是否支持索引服务器集群?),似乎这个分布式体系需要重新考虑了。
还是功能划分,索引服务交给独立的索引服务器,前端的应用服务器需要时可以调用索引服务器的内容。

如何合理的实现一个大型系统,是让每一台服务器成为全能型选手,还是分别成为某一方面的专家?参考人类社会,服务器分工应该是最终的解决方式吧.

[url]http://www.hibernate.org/hib_docs/search/reference/en/html_single/#d0e403[/url]
内容概要:本文深入研究了基于最优滑模控制的永磁同步电机(PMSM)调速系统模型,重点利用Simulink工具搭建并仿真了该控制系统的动态响应特性。文章系统阐述了最优滑模控制策略的设计原理,突出其在削弱传统滑模控制固有抖振现象、增强系统鲁棒性方面的显著优势。通过与传统滑模控制方法的对比实验,充分验证了所提出方法在调速精度、抗外部干扰能力以及动态响应速度等方面的优越性能。研究内容涵盖PMSM数学建模、滑模面构造、最优控制律推导、Lyapunov稳定性分析、参数整定及Simulink仿真验证等完整环节,形成了一套严谨的控制算法设计与实现流程。; 适合人群:具备自动控制原理、现代控制理论基础和MATLAB/Simulink仿真操作能力,从事电机驱动控制、电力电子与电力传动、运动控制或自动化等相关领域研究的工程技术人员及高校研究生。; 使用场景及目标:① 深入掌握滑模控制理论及其在高性能电机调速系统中的具体应用方法;② 学习如何设计并实现能够有效抑制抖振的最优滑模控制器,以提升系统整体鲁棒性和控制品质;③ 利用Simulink平台独立完成从理论建模到仿真验证的全过程,服务于科研课题、课程设计或实际工程项目。; 阅读建议:建议读者务必结合MATLAB/Simulink环境动手复现文中模型,重点关注滑模切换面的设计准则、控制律的数学推导过程以及控制器参数的调节规律,并通过施加不同的负载扰动、设定多种转速指令等方式全面测试系统的动态与稳态性能,从而深刻理解最优滑模控制的核心机理与工程应用价值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值