REST -Anwendung für die Benutzerberatung mit FLS (Volltextsuche).
Führen Sie
$ docker -vdurch, um die Installation zu überprüfen.
Klon das Repository ( $ git clone [email protected]:gustavo-flor/find-user-service.git );
Besuchen Sie den geklonten Ordner ( $ cd find-user-service )? ️;
Führen Sie den Anwendungsbau aus ( $ ./mvnw clean install -DskipTests=true );
Den Service und seine Abhängigkeiten besteigen ( $ docker compose up );
Wir sind bereit, die Anwendung über Endpunkt http://localhost:8080/search zu verwenden?
Greifen Sie auf die "Produktions" -Enumgebung zu, um die Anwendung zu testen.
Es ist wichtig zu beachten, dass es sich nicht um einen speziellen Host handelt, daher werden Lentidons oder Einschränkungen von Refukes erwartet. Im ersten Zugang kann eine Verzögerung zur Reaktion auftreten.
Holen Sie sich | /search?query={terms} | json
Benutzer, die auf der Grundlage der gesendeten Bedingungen gefunden wurden, wurden gemäß den Relevanz und Kompatibilität der Benutzer mit den Bedingungen bestellt.
Begriffe : Jedes von einem Raum getrennte Wort wird als Begriff berücksichtigt (wenn es zur Suche nach einem bestimmten Satz verwendet werden muss, senden Sie den Satz nur zwischen den Doppelzitaten).
Beispiele:
query=Pedro Gabriel : Die Anwendung sucht nach Benutzern, die den Begriff "Peter" oder "Gabriel" (oder seine Derivate, ich erkläre dies im Thema "Details + Ziele ...");
query="Pedro Gabriel" : Die Anwendung sucht Benutzer, die genau den Begriff "Pedro Gabriel" betrachten.
query="Pedro" Gabriel : Die Anwendung sucht Benutzer, die genau den Begriff "Peter" oder "Gabriel" (oder deren Derivate) nachdenken.
| Parameter | Beschreibung | Obligatorisch |
|---|---|---|
| Abfrage | Begriffe für die Suche. | Ja |
| Aus | Seite, Seitenzahl beginnt bei 0. Standardwert: 0. | NEIN |
| Größe | Benutzer begrenzen pro Seite. Standardwert: 15. | NEIN |
| debuggen | Fügt zur Rückkehr der Benutzer zur Relevanz- und Kompatibilitätsnotiz mit den gesendeten Bedingungen hinzu. Standardwert: Falsch, zulässige Werte [True, False]. | NEIN |
Beispiel:
$ curl http://localhost:8080/search ? query=%22pedra%22 {
"from" : 0 ,
"size" : 15 ,
"data" : [
{
"id" : "9f64853b-f164-4b13-a3d7-1fdb9977e516" ,
"name" : "Jeferson Pedra" ,
"username" : "jeferson.pedra"
} ,
{
"id" : "b4026e35-932c-4943-b0db-7dd31eca5597" ,
"name" : "Stefane Pedra Zimiani" ,
"username" : "stefane.pedra.zimiani"
}
]
}Benutzerrückgabe mit
debug: true
{
"textScore" : 1.5 ,
"id" : "482c46f3-a27c-4f1a-abd0-3039ede21fdd" ,
"name" : "Gustav Berghahn" ,
"username" : "gustav.berghahn" ,
"relevance" : 3
} Die Notwendigkeit bestand darin, eine skalierbare und leistungsstarke Anwendung zu erstellen, die durch einen oder mehrere Benutzer einer bestimmten Datenbank suchen und sie nach ihrer Relevanz bestellen konnte. Zu wissen, dass dies ausgewählt wurde, um eine Spring + MongoDB -Anwendung zu erstellen.
Wir haben keinen Endpunkt, um neue Benutzer einzubeziehen. Sie sind beim Klettern der Anwendung auf der Grundlage der Dateien im Ordner Java Project
resourcesenthalten.
Was waren die Motivationen für die Verwendung des Frühlings?
Zunächst und am wichtigsten ist die Vertrautheit mit dem Framework, aber auch die einfache Erstellung und Konfiguration einer API -Ruhe sowie mit der Konfiguration mit MongoDB und anderen Heroku -Plattformen (Heroku).
Was waren die Motivationen für die Verwendung von MongoDB?
Wenn wir unser Bedürfnis wissen, können wir erkennen, dass wir uns in unserer Datenbank nicht um eine Beziehung kümmern müssen. Das wäre ein guter Grund, aber der Hauptgrund, warum ich nicht lügen kann: P war Ihre Text -Suchfunktion ... fts tadãã !!!
Vor- und Nachteile der Volltextsuchung ...
Durch die Indexierung der Suchtexte für die Suche bringt FTS im Vergleich zu Optionen wie "Like" eine große Leistung mit. Diese Lösung ist auf die Suche nach Begriffen spezialisiert, sodass die Suche so oft viel richtig und schneller ausführen kann.
Sein größter Nachteil und Feind ist: FTS ist kein "Gefällt mir", und zunächst ist es schwierig, dies zu verstehen, wir können nicht die Hälfte einer Amtszeit senden und glauben, dass die Suche nach wie erwarten wird.
Wenn Sie dies für eine noch richtigere Suche wissen, ist es ideal, alle Möglichkeiten zu kennen, die uns die FTS durch ihre Dokumentation geben.
Repository mit einer Webanwendung, um diesen Dienst zu konsumieren, Find-User-Web [in der Entwicklung].
Fühlen Sie sich frei, Verbesserungen für diese Lösung zu erzielen. ⚗, große Umarmung!