10款相似圖片搜尋引擎

很多時候不知道該使用什麼樣的關鍵詞來搜尋自己想要的圖片,卻經常這樣“我想要張這樣的圖片。”傳統圖片搜尋引擎很難這樣的需求,相似圖片搜尋引擎應運而生。1. Picitup一個相似圖片搜尋引擎, 很簡單, 輸入關鍵詞搜尋, 似乎沒什麼好說的. 但它的搜尋過程真的是讓人覺得非常專業, 比如我輸入”android”進行圖片搜尋, 可以在搜尋結果頁通過”面部”, “風景”, “產品”和”顏色”來進行過濾.在過濾後的圖片搜尋結果頁面又可以通過點擊某張圖片下面的”Similar

Struts2使用24 — 異常處理

 在開發web應用時,需要處理不同種類的異常。有些異常是特定於服務或者正在調用的業務對象的——這些無法進行聲明式處理,只能通過編程來處理它們。但是還有另外一些異常:l         無法處理,需要把使用者重新導向到一個錯誤頁面,直到問題解決為止。這些常常是系統層級或者資源層級的問題,和Web應用的邏輯無關。因網路問題而導致的資料庫連接失敗就是這樣一個例子。l        

使用Solr快速實現Django的全文檢索搜尋

 使用Solr快速實現Django的全文檢索搜尋。http://fzuslideblog.appspot.com/2010/03/25/django_solr_search.html原文地址Django本身並沒有提供全文檢索搜尋的功能,而自己給Django添加全文檢索搜尋的功能選擇也有很多,可以用Sphinx,Lucene,Xapian等等來做。這裡我們選用基於Lucene的全文檢索搜尋伺服器Solr來快速的搭建Django的全文檢索搜尋應用。需要用到的開源項目:Solr:http://luce

1GB 的4位元組整數,記憶體排序時間為多少?

      拿到這個問題,我們往往會計算CPU運算次數,如快排的運算次數為1.4 * N * log(N),其中1.4為快排的係數,再根據CPU的運算頻率計算出排序耗時。不過這種方法很土也不是很准,Jeff Dean告訴我們可以這樣估算:排序時間 = 比較時間(分支預測錯誤) + 記憶體訪問時間。快排過程中會發生大量的分支預測錯誤,所以比較次數為2^28 * log (2^28) ≈ 2^33,其中約1/2的比較會發生分支預測錯誤,所以比較時間為1/2 * 2 ^ 32 * 5ns = 21s,

CachingWrapperFilter實現Lucene的二次搜尋

 利用lucene的Filter,具體可以查看lucene的api中的org.apache.lucene.search.CachingWrapperFilter,它可以緩衝上次的搜尋結果,從而實現在結果中的搜尋。測試執行個體:import java.io.IOException;import org.apache.lucene.analysis.SimpleAnalyzer;import org.apache.lucene.document.Document;import org.apache.

Nutch的命令詳解

 Nutch採用了一種命令的方式進行工作,其命令可以是對區域網路方式的單一命令也可以是對整個Web進行爬取的分步命令。主要的命令如下:1. CrawlCrawl是“org.apache.nutch.crawl.Crawl”的別稱,它是一個完整的爬取和索引過程命令。使用方法:Shell代碼$ bin/nutch crawl <urlDir> [-dir d] [-threads n] [-depth i] [-topN] 參數說明:<urlDir>:包括URL列表的文字檔,

Tokyo Tyrant參數最佳化

文章作者:孫立  連結:http://www.cnblogs.com/sunli/  啟動參數介紹    ttserver命令可以啟動一個資料庫執行個體。因為資料庫已經實現了Tokyo Cabinet的抽象API,所以可以在啟動的時候指定資料庫的配置類型。支援的資料庫類型有:記憶體hash資料庫記憶體tree資料庫hash資料庫B+ tree資料庫,  命令通過下面的格式來使用,‘dbname’制定資料庫名,如果省略,則被視作記憶體hash資料庫。ttserver [-host name] [-

基於ProActive的分布式並行Web Spider的設計與實現

 摘要:由於互連網具有海量資訊並且快速增長,提高搜尋引擎的資訊採集器Web Spider的資料擷取和更新速度有重要意義。本文利用ProActive網格網路並行分布計算中介軟體提供的主動對象(Active Object)技術、網路並行計算技術、自動部署機制等設計和實現了一個名為P-Spider的分布式並行Web Spider,實驗表明該Web Spider方便管理和部署,並且比多線程Web Spider具有更高的採集速率。關鍵字:Web

Lucene 的 Scoring 評分機制

Lucene 評分體系/機制(lucene scoring)是 Lucene 出名的一核心部分。它對使用者來說隱藏了很多複雜的細節,致使使用者可以簡單地使用 lucene。但個人覺得:如果要根據自己的應用調節評分(或結構排序),十分有必須深入瞭解 lucene 的評分機制。Lucene scoring 組合使用了 信 息檢索的向量空間模型 和 布爾模型 。首先來看下 lucene 的評分公式(在 Similarity 類裡的說明)score(q,d)   =   coord(q,d)

Struts2使用25 — 聲明

      不知不覺在兩天內,發布了24個strut2系列文章,希望能對大家的學習有一定的協助。      首先,我要說明一下,這些內容都不是我原創的,而是我自己整理的,我整理成了一個word文檔,然後發在部落格裡。我主要參考了《深入淺出Struts2》、《Struts2.0中文教程》以及張冰老師的視頻教程,這裡藉機很感謝他們,大家可以在網上收到這些資料,當然可以向我索要,我會很樂意給大家的。當然我不認為這是最好、最全的學習strut2的資料。這裡還有很多地方不夠健全,甚至會有錯,我會繼續更新。

Google搜尋引擎的工作原理

PPCblog.com呈現給我們一幅由Jess

詳解Nutch外掛程式系統

   nutch系統架構的一個亮點就是外掛程式,借鑒這個架構我們可以設計出自己的靈活的系統架構,下面就來解析Nutch的外掛程式系統是怎麼回事。    關於nutch,在這裡瞭解:http://lucene.apache.org/nutch/,目前最新版本是1.0:    23 March 2009 - Apache Nutch 1.0 Released    Nutch is open source web-search software. It builds on Lucene Java,

CONSISTENT HASHING演算法實現

   在做伺服器負載平衡時候可供選擇的負載平衡的演算法有很多,包括:  輪循演算法(Round Robin)、雜湊演算法(HASH)、最少串連演算法(Least Connection)、響應速度演算法(Response Time)、加權法(Weighted )等。其中雜湊演算法是最為常用的演算法.    典型的應用情境是: 有N台伺服器提供快取服務,需要對伺服器進行負載平衡,將請求平均分發到每台伺服器上,每台機器負責1/N的服務。    常用的演算法是對hash結果取餘數 (hash()

如何做好一個垂直搜尋引擎

本文先引用幾句話:1.“確解使用者之意,切返使用者之需。”2.“門戶網站都想著是怎樣省錢,而不是怎樣花錢來買技術。”3.“搜尋引擎不是人人都能做的領域,進入的門檻比較高。”4.“只是優秀還不夠,最好的方式是將一件事情做到極致。”(google十大真理)5.“做搜尋引擎需要專註” “對於一項排到第四的業務,門戶很難做到專註。”6.“使用者無法描述道他要找什麼,除非讓他看到想找的東西。”7.

大流量、高並發的網站的底層系統架構

 Live App,是相對於網站靜態內容而言, 是指以c/c++、php、Java、perl、.net等 伺服器端語言開發的網路應用軟體,比如論壇、網路相簿、交友、BLOG等常見應用。Live App系統通 常與資料庫系統、緩衝系統、分布式儲存系統等密不可分。大型Live App系統平台主要是針對於大流 量、高並髮網站建立的底層系統架構。大型網站的運行需要一個可靠、安全、可擴充、易維護的應用系統平台做為支撐,以保證網站應用程式的平穩運行。大型Live App系統又可分為幾個子系統:l      

Hibernate學習4 — hibernate對應檔1 — hibernate-mapping元素

hibernate對應檔包含一個hibernate-mapping元素,這個元素包括一些可選的屬性,例如:(1) schema (可選): 資料庫schema的名稱。(2) catalog (可選): 資料庫catalog的名稱。(3) default-cascade (可選 - 預設為 none): 預設的級聯風格。(4) default-access (可選 - 預設為 property): Hibernate用來訪問所有屬性的策略。可以通過實現PropertyAccessor介面 自訂。(

Hibernate學習6 — hibernate對應檔3 — id元素

被映射的類必須定義對應資料庫表主鍵欄位。大多數類有一個JavaBeans風格的屬性, 為每一個執行個體包含唯一的標識。<id> 元素定義了該屬性到資料庫表主鍵欄位的映射。(1) name (可選): 識別屬性的名字。(2) type (可選): 標識Hibernate類型的名字。(3) column (可選 - 預設為屬性名稱): 主鍵欄位的名字。(4) unsaved-value (可選 - 預設為一個切合實際(sensible)的值):

Hibernate學習1 — 概述

1. 介紹Hibernate是一個開放原始碼的對象關係映射架構,它對JDBC進行了非常輕量級的對象封裝,使得Java程式員可以隨心所欲的使用對象編程思維來操縱資料庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的用戶端程式使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成資料持久化的重任。1.1. 總體概況1.2.

Hibernate學習5 — hibernate對應檔2 — class元素

使用class元素來定義一個持久化類:1) name (可選): 持久化類(或者介面)的Java全限定名。 如果這個屬性不存在,Hibernate將假定這是一個非POJO的實體映射。2) table (可選 - 預設是類的非全限定名): 對應的資料庫表名。3) discriminator-value (可選 - 預設和類名一樣): 一個用於區分不同的子類的值,在多態行為時使用。它可以接受的值包括 null 和 not null。4) mutable (可選,預設值為true):

設計模式學習1 — 概念

   概念模式提供了一個解決方案,它是一種設計方法,而不是一種編程技術。作用主要有兩方面:  l         降低耦合性  l         增加靈活性 設計模式的分類    其實,模式的數量多少並不重要,重要的是那些模式對我們實際應用的作用。    模式主要分為三類:  l         建立模式:建立對象,         主要有:      n         Factory、Builder、Singleton  l         組合模式:組合對象         主要有:  

總頁數: 61357 1 .... 21551 21552 21553 21554 21555 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.