SharePoint Search之(四)Promoted Results—让搜索结果置顶

本文介绍如何在SharePoint2013中使用Promoted Results功能来优化搜索结果展示,包括不同级别的设置及其作用范围。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当使用搜索引擎的时候,用户希望匹配的结果能够在第一条显示。

 

在SharePoint2013里也提供了类似的功能Promoted Results。这个功能在SharePoint 2010里叫best bets,在SharePoint 2013里变了名称,但是功能并没有什么改变。


在SharePoint 2013 里,要设置Promoted Results, 根据你的权限,可以在不同的地方设置。

如果是Search Services Application的管理员,可以在CentralAdministration中,找到Search Service Application,管理页面,点击Query Rules.

另外两个级分别是在Site Collection Settings->Site Query Rules 和 SiteActions->Query Rules.

 

在不同的级别设置,作用域也不一样。比如在site 级别设置的Promoted Results, 在其他Site Collection以及本site collection的其他site是看不见的。但是在Search Service Application设置的,会在所有关联了这个SearchServices Application的Web Applications中有效。

 

点击Query Rules, 输入Rule Name,在Context部分,输入匹配的关键字,如果有多个,用分号分隔。


站在Actions部分,点击Add Promoted Results。在弹出页面输入目标地址的信息。如果选中Render the URL as a banner instead of as a hyperlink,那么在显示结果的时候,SharePoint会把目标结果的网页显示出来。

 

信息填好之后,点击保存,在父页面点击保存。

 

这时候再搜索,就会把刚才设置的URL放在第一位显示了。

 

Question:如果分别在Search ServiceApplication级别,Site collection级别,Site级别都设置Promoted Results 会是什么效果呢?

Answer: 效果会叠加。比如在Site级别搜索,SearchService Application级别,Site collection级别符合条件的Promoted Result 都会置顶显示。

在 Android 系统中,`PROMOTED_ONGOING` 是与进程优先级和任务调度相关的一个状态标识,通常用于描述某些具有较高重要性且需要持续运行的前台任务。该状态主要用于系统对应用进程进行资源管理和调度决策,确保关键任务获得更高的系统资源优先级。 ### 作用 `PROMOTED_ONGOING` 的核心作用是提升特定任务的优先级,使其更不容易被系统回收或降级。当一个任务或服务被标记为 `PROMOTED_ONGOING` 时,它会被视为正在进行的重要操作,从而影响系统的 OOM(Out Of Memory)调整策略。这种状态常见于需要保持活跃状态的任务,例如: - 长时间运行的前台服务 - 某些系统级操作(如备份、恢复等) - 与其他高优先级组件交互的关键任务 通过将任务标记为 `PROMOTED_ONGOING`,系统可以更好地判断哪些进程应当保留,避免因内存压力而被过早终止[^1]。 ### 使用场景 1. **前台服务**:当应用启动了一个前台服务(Foreground Service),系统可能会将其标记为 `PROMOTED_ONGOING`,以确保其不被轻易杀死,尤其是在资源紧张的情况下。 2. **系统关键任务**:一些系统组件在执行关键操作时会使用此状态,比如设备恢复出厂设置、OTA 升级过程中的数据迁移等。 3. **跨进程通信中的关键事务**:当某个任务正在等待来自另一个高优先级进程的结果时,系统可能将其提升为 `PROMOTED_ONGOING`,以防止其提前终止导致死锁或中断。 4. **Activity 启动过程中的中间状态**:在 Activity 启动过程中,如果涉及到多个组件的协同工作,系统可能会临时将某些进程标记为 `PROMOTED_ONGOING`,以保障启动流程顺利完成[^1]。 ### 示例代码片段 以下是一个简化的示例,展示如何在系统源码中检查一个任务是否被标记为 `PROMOTED_ONGOING`: ```java if ((taskInfo.flags & ActivityManager.LOCK_TASK_FLAG_PROMOTED_ONGOING) != 0) { // 任务已被标记为 PROMOTED_ONGOING Slog.d(TAG, "Task is promoted as ongoing"); } ``` 此类标志位通常由系统框架根据当前任务状态自动设置,并参与 OOM 调整策略的计算。 ### 进程优先级的影响 当进程被标记为 `PROMOTED_ONGOING` 时,它的 `oom_adj` 值会被调整为更低(即更高优先级),这使得它在内存不足时更不容易被 Low Memory Killer(LMK)机制杀死。这种调整机制有助于维持用户体验,特别是在执行关键操作期间[^1]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值