Installieren Sie .NET
Laden Sie dieses Projekt herunter.
Laufen
cd FTServer
dotnet run -c Release
Öffnen Sie http://127.0.0.1:5066/
Drücken Sie zum Herunterfahren [Strg+C].
Geben Sie eine vollständige URL ein, um die Seite zu indizieren, und suchen Sie dann.
Bewegen Sie die Seite weiter, indem Sie die Seite neu indizieren.
[Wort1 Wort2 Wort3] => Text hat Wort1 und Wort2 und Wort3
["Wort1 Wort2 Wort3"] => Text hat als Ganzes "Wort1 Wort2 Wort3".
Suchen Sie nach [https] oder [http] => erhalten Sie fast alle Seiten
Laden Sie Visual Studio Code herunter
iBoxDB
AngleSharp
Semantische Benutzeroberfläche
Die Reihenfolge der Ergebnisse basiert auf der id() -Nummer in der Klasse PageText in absteigender Reihenfolge.
Eine Seite hat viele Seitentexte. Wenn Sie nicht mehrere Texte benötigen, ändern Sie Html.getDefaultTexts(Page) und geben Sie nur einen PageText zurück (nur den Seitenbeschreibungstext, Config.DescriptionOnly=true ).
Die Page.GetRandomContent()-Methode wird verwendet, um sicherzustellen, dass sich der Suchseiteninhalt ständig ändert, und hat keinen Einfluss auf die tatsächliche PageText-Reihenfolge.
Verwenden Sie die ID-Nummer, um die Reihenfolge zu steuern, anstatt alle Seiten in den Speicher zu laden.
Suche (... String-Schlüsselwörter, lange Start-ID , lange Anzahl )
startId => Welche ID (die ID, als Sie PageText erstellt haben) soll starten. Verwenden Sie (startId=Long.MaxValue), um von oben in absteigender Reihenfolge zu lesen
count => Zu lesende Datensätze, wichtiger Parameter . Die Suchgeschwindigkeit hängt von diesem Parameter ab, nicht davon, wie groß die Daten sind.
Legen Sie die Start-ID als letzte ID aus den Suchergebnissen minus eins fest
startId = search ( " keywords " , startId , count ) ;
nextpage_startId = startId - 1 // this 'minus one' has done inside search()
.. .
//read next page
search ( " keywords " , nextpage_startId , count )
Meistens wird die nextpage_startId vom Client-Browser gepostet, wenn der Benutzer das Ende der Webseite erreicht hat, und der Standardwert nextpage_startId=Long.MaxValue wird festgelegt. In Javascript muss die große Zahl als String ("'" + nextpage_startId + "'") geschrieben werden.
Offen
public Page Html . Get ( String url ) ;
Legen Sie Ihren privaten Website-Text fest
Page page = new Page ( ) ;
page . url = url ;
page . title = title ;
page . text = bodyText
page.. . = .. .
return page ;
Index Readonly Cache (Readonly_MaxDBCount) aus FTServer/Code/Config.cs festlegen.
[user@localhost ~ ]$ cat /proc/sys/fs/file-max
803882
[user@localhost ~ ]$ ulimit -a | grep files
open files (-n) 500000
[user@localhost ~ ]$ ulimit -Hn
500000
[user@localhost ~ ]$ ulimit -Sn
500000
[user@localhost ~ ]$
$ vi /etc/security/limits.conf
* hard nofile 500000
* soft nofile 500000
root hard nofile 500000
root soft nofile 500000
[user@localhost ~ ]$ firewall-cmd --add-port=5066/tcp --permanent
Warum verbraucht Tracker Ressourcen auf meinem PC?
[user@localhost ~ ]$ tracker daemon -k
[user@localhost project]$ tracker reset --hard
Transplantation aus der Java JSP-Version der Volltextsuche