C#開源搜索引擎 Iveely Search Engine 0.2.0 的發布
Iveely Search Engine 是一款純C#實現的搜索引擎。Iveely的中文翻譯:愛為您。英文全稱:I void everything , enjoy loving you! 希望更多的搜索引擎愛好者加入進來,感受分享的快樂。Iveely目標是:不是給用戶一堆結果讓用戶去發現最適合自己的,我希望是返回的就是用戶最想要 的,用戶完全無需篩選,所以Iveely Search Engine 永遠沒有分頁,更希望它能嵌入機器人思維中,成為人類的良師益友。當然現在依然處于文本搜索階段。我對搜索引擎的觀點是:
搜 索引擎應該是互聯網的學習者,我們應該制定一個規則,讓它從一個不識字的孩子逐漸成為一個知識豐富的青年,逐步讓它具有人的思維。這不是科幻,而是未 來,I Believe!今后為人類服務的各式機器人,要擁有先進知識和靈活思維處理能力,也許只有搜索引擎能夠賦予它這些。
在上個月ISE的0.1.0發布,恰隔一個月,ISE的0.2.0今天也和大家見面了,感謝大家的支持,在開源社區已經有20位朋友follow了 ISE,感謝他們,當然ISE畢竟只是一個初級版本,它的價值與大家的期望,依然存在一定的差距,希望今天帶給大家的0.2.0能讓大家喜歡,如果能參與 進來就最好,開源主頁:http://iveelyse.codeplex.com。
Iveely Search Engine 的0.2.0版本最大的特點就是“
任務驅動式一鍵式運行”,簡單的說就是,在無人監督的情況下,設定好您的參數,一個本地化的完整搜索引擎就可以利用起來,包含數據、索引更新等等都自動化完成。相對于0.1.0它在以下方面有一定的提升:
1. 添加“幫您推薦” 功能。在搜索結果顯示的時候,當命中最佳的網頁時,該網頁將會為您推薦它覺得其它最好的網頁。例如:您到一家餐館吃飯,這家餐館非常適合您的口味,那么它將推薦它覺得最好的其它餐品給您。就是這個道理。
2. 添加“緩存處理”功能。在0.1.0的搜索過程中,所有的每次請求,都將從索引中選出合適的網頁編號,然后根據網頁編號提取出數據,這實際是不合算的,在 0.2.0種,添加了緩存策略,在最近搜索過的關鍵字中直接提取上次的結果緩存,無需從頭至尾到數據中提取。主要采用數據結構:哈希雙鏈表。
3. 添加項目IveelySE.Run.Task,主要是講所有的執行任務以任務機器的方式,選擇間隔時間執行以及定期更新數據。例如:爬蟲任務,可設定每次 完成任務之后,6小時候再重新爬行一次。還有索引系統,定期更新系統,定期更新緩存等等,都即將依賴于IveelySE.Run.Task運行。
4. IveelySE.Web,新建了IveelySE.InternetService,IveelySE.Web是我們搜索的展示,但是我們將其移出,采 用網絡服務的方式,你需要查看搜索結果,將不再依賴于網頁,只需要瀏覽器中輸入http://127.0.0.1:8088/query=您的關鍵字,即 可。
以上是ISE 0.2.0 相對于0.1.0版本的不同之處。
下面我們來看一下,V0.2.0的更具體的情況,我們的一鍵運行主要是針對IveelySE.Run.Task.exe,在您運行此程序后,您無需關心其它事情。正常情況應該是這樣:

您會看到在任務機的驅動下,各個程序按照一定的時間點在執行,但是,你會看到第二行和第四行執行的是相同內容,但是時間上相差10min,這就是設定 的,搜索服務每10分鐘重新執行一次,原因是對新的索引的重新加載,以達到盡快的搜索到新收錄的信息,而不需要人工參與。當搜索服務啟動好之后,就可以執 行搜索。也許您在猶豫,我在哪兒搜索呢?打開瀏覽器輸入:http://127.0.0.1:8088/query=%E5%BE%AE%E8%BD %AF 您就會看到搜索結果。query=之后的數據就是您的關鍵詞。搜索結果如下:
、
搜索信息全部來自博客園,也許您會發現,界面為什么比0.1.0版本丑多了,這也是此版本的改進,在服務啟動的時候,提供了搜索服務url,以及最簡單的 搜索結果,沒有更多的CSS去裝飾,讓UI開發人員與搜索開發人員脫離,做出更好的UI,當然你也可以進行一定的CSS美工處理,完全可以達到下面的結果 :
外表只是一層皮而已,最實質的內容是我們最關心的問題。
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!