Heartbeat-Erkennung von JAVA-WEB-Anwendungen verschiedener Anwendungsserver (wie Tomcat, Jetty) und WEB-Servern (wie Apache, Nginx).
Wie erreichen?
Verwenden Sie HttpClient, um eine Anfrage an die angegebene Server-URL (Anwendungsinstanz) entsprechend der Häufigkeit (10 Sekunden, 20 Sekunden ...) zu initiieren und die Antwortinformationen aufzuzeichnen (Verbindungszeit, ob die Verbindung erfolgreich ist, ob es Ausnahmen gibt, Antwort). Paketgröße), Wenn eine Anomalie erkannt wird (der Antwortcode ist nicht 200, eine Ausnahme wird ausgelöst...), wird eine E-Mail an die angegebene Adresse gesendet und eine Erinnerungs-E-Mail gesendet, wenn die Erkennung wieder normal ist.
In Zukunft werden weitere Echtzeit-Erinnerungsschnittstellen hinzugefügt, beispielsweise WeChat und SMS.
2.0.0 und höher werden mithilfe des Spring-Boot-Frameworks überarbeitet, um näher an Microservices heranzukommen.
JDK-1.8
Spring Boot-1.5.9.RELEASE
Flache Benutzeroberfläche
Maven-3.1.0
1. Kein Eindringen, unabhängige Bereitstellung
2. Kann mehrere Anwendungsserver gleichzeitig überwachen
3. Die Anforderungsmethode unterstützt GET und POST; die URL unterstützt http und https. Sie können den Anforderungsinhaltstyp angeben und Anforderungsparameter hinzufügen (feste Parameter oder zufällige Parameter).
4. Fügen Sie Sicherheitseinstellungen hinzu, um die Benutzerregistrierung zu steuern, Benutzerberechtigungen festzulegen usw.
5. Einfach und flexibel zu verwenden
6. Erinnerungsmethoden sind aktuell und vielfältig (derzeit wurden E-Mail-Erinnerungen und WeChat-Erinnerungen implementiert; SMS-Erinnerungen usw. werden in Zukunft hinzugefügt)
JRE 1.8+
MySQL 5.6+
Tomcat 8+
1. Das Projekt wird von Maven verwaltet. Sie müssen Maven (die Nummer für die Entwicklung ist 3.1.0) und MySql (die Nummer für die Entwicklung ist 5.6) auf dem Computer installieren.
2. Laden Sie das Projekt lokal herunter (oder klonen Sie es).
3. Erstellen Sie eine MySQL-Datenbank (Standarddatenbankname: heart_beat) und führen Sie das entsprechende SQL-Skript aus (die Skriptdatei befindet sich im Verzeichnis „others/database“).
Die Reihenfolge der Ausführung des Skripts: HeartBeat.ddl -> quartz_mysql_innodb.sql -> initial-db.ddl (dieses DDL erstellt das anfängliche Administratorkonto/Passwort: hb/heart_beat)
4. Ändern Sie die Datenbankverbindungsinformationen (einschließlich Benutzername, Passwort usw.) in application.properties (im Verzeichnis src/main/resources).
HINWEIS: Um sicherzustellen, dass Sie Erinnerungs-E-Mails erhalten können, konfigurieren Sie bitte mail.develop.address in der Konfigurationsdatei als Ihre E-Mail-Adresse. Wenn Sie sich in einer Produktionsumgebung befinden, ändern Sie bitte den Wert von mail.develop.environment in false (true). weist auf eine Entwicklungsumgebung hin)
5. Importieren Sie das lokale Projekt in die IDE (z. B. Intellij IDEA), konfigurieren Sie Tomcat (oder einen ähnlichen Server mit Servlet-Ausführung) und starten Sie Tomcat (der Standardport ist 8080).
Eine andere: Sie können das Projekt auch über den Maven-Paketbefehl in eine WAR-Datei (hb.war) kompilieren, den WAR in Tomcat platzieren und starten (Hinweis: Diese Methode erfordert das Hinzufügen von application.properties zum Klassenpfad und die korrekte Konfiguration der Datenbankverbindung Information) .
Oder verwenden Sie zum Ausführen den Befehl java -jar hb.war --spring.config.location=application.properties (beachten Sie, dass der Pfad zu application.properties korrekt sein muss).
Oder laden Sie das Installationspaket direkt aus dem Verzeichnis „dist“ des Projekts herunter.
6. Nachdem HeartBeat ausgeführt wurde, können Sie für die erste Anmeldung das Standardadministratorkonto/Passwort verwenden: hb/heart_beat. Wenn dies fehlschlägt, müssen Sie die anfängliche SQL-Skriptdatei initial-db.ddl (Verzeichnis „others/database“) ausführen die Datenbank und verwenden Sie die MD5-Verschlüsselung für das Kontokennwort.