Softonic
10.0
1 Rezensionen
4.4
Android OS
Über Softonic
Softonic ist die weltweit größte App zum APK-Download.
Softonic ist die weltweit größte Software- und App-Discovery-Plattform und eine der meistbesuchten Websites der Welt. Sie sind wahrscheinlich auf ihrer Website gelandet, wenn Sie etwas herunterladen müssen - und Sie sind nicht der Einzige. Über 100 Millionen Nutzer erreichen Softonic - pro Monat. Es ist ein App-Leitfaden, der Ihnen hilft, die besten Anwendungen für Ihr Gerät zu entdecken, und bietet Ihnen Rezensionen, Neuigkeiten, Artikel und kostenlose Downloads.
CloudAMQP bietet gehostete RabbitMQ-Cluster in den größten Rechenzentren der Welt und Softonic ist einer unserer vielen Kunden. Wir haben Riccardo Piccoli, einen Entwickler bei Softonic, auf dem RabbitMQ Summit 2018 in London getroffen, wo er freundlicherweise die Kundengeschichte von Softonic mit uns geteilt hat.
Dieser Artikel ist in zwei Teile gegliedert; Der erste Teil ist ein Überblick über das System, der einfache RabbitMQ-Anwendungsfälle einer ereignisbasierten Architektur zeigt. Der zweite Teil ist ein tiefer Einblick in die interne Architektur von Softonic – Plugins, die sie verwenden, und Beispiele für Ereignisse, die sie senden.
Ein einfacher RabbitMQ-Anwendungsfall
Benutzer können Dateien zu Softonic hochladen. Alle hochgeladenen Dateien werden auf Viren gescannt und Informationen über die Datei werden gesammelt, bevor die Datei an andere Benutzer verteilt wird. Die neuen Binärdaten werden zunächst in einem dedizierten Dienst persistiert und eine Benachrichtigung über das Hochladen an einen Ereignisbus gesendet. Andere Dienste sammeln diese Informationen, die am Ende der Website hinzugefügt werden. In diesem Fall wird der Benutzer direkt benachrichtigt, nachdem der Upload erfolgreich war, und ein Scan-Ereignis wird einfach auf einem Ereignisbus platziert, damit andere Dienste es verarbeiten können. Ein Event-Bus, auch Message Queue genannt, ermöglicht es Webservern, schnell auf Anfragen zu reagieren, anstatt gezwungen zu sein, einen ressourcenintensiven Prozess an Ort und Stelle durchzuführen, und anstatt den Benutzer warten zu lassen.
Der Scanvorgang ist einer dieser Dienste. Die Virensuchanwendung nimmt eine Nachricht des Ereignisbusses, beispielsweise einen „ScanFile“-Befehl, und beginnt mit der Verarbeitung der Datei. Gleichzeitig können andere Benutzer neue Dateien zu Softonic hochladen und Verarbeitungsaufgaben stapeln sich nur in der Warteschlange. Das Ereignis „FileScanned“ wird dem Ereignisbus wieder hinzugefügt, sobald die konsumierende Anwendung das Ereignis verarbeitet hat.
Das Software- und App-Entdeckungsportal Softonic wird von über 100 Millionen Benutzern pro Monat erreicht, liefert mehr als 2 Millionen Downloads pro Tag und hat einen konstanten Fluss von Ereignissen und Befehlen zwischen seinen Diensten. CloudAMQP hat sich mit Softonic getroffen, um ihre Geschichte darüber zu hören, wie RabbitMQ als Event-Bus zwischen Microservices zu einer zuverlässigen, schnellen und effektiven Architektur beiträgt, die perfekt für ihren Zweck ist.
Eine solche Architektur schafft zwei einfache Anwendungen und eine geringe Kopplung zwischen Sender und Empfänger. Benutzer können weiterhin Dateien hochladen, auch wenn die Scananwendung ausgelastet ist oder gewartet wird.
Verschiedene Ereignisse oder Befehle werden an den Ereignisbus veröffentlicht, z. B. ein „ScanFile“-Befehl.
Softonic verwendet RabbitMQ als Event-Bus, Events oder Befehle werden einfach in die Warteschlange eingefügt.
Die verarbeitende Anwendung ruft das Ereignis ab und beginnt mit der Verarbeitung des Ereignisses. Einige Daten werden in der Datenbank gespeichert und weitere Ereignisse werden möglicherweise in einer anderen Ereigniswarteschlange veröffentlicht (mehr dazu unter „Interne Struktur von RabbtiMQ“).
Die verbrauchende Anwendung speichert viele Informationen in einer Datenbank (MySQL).
Wenn ein Microservice ein Ereignis empfängt, kann er seine eigenen Geschäftsentitäten aktualisieren, was dazu führen kann, dass mehr Ereignisse veröffentlicht werden, und genau das ist hier der Fall.
Interne Struktur von RabbitMQ
Es ist Zeit für einen tiefen Einblick in die interne Architektur von RabbitMQ und in die Softonic-Anwendung. Zwei RabbitMQ-Konzepte müssen beschrieben werden, falls Sie damit noch nicht vertraut sind. Softonic verwendet das konsistente Hash-Exchange-Plugin und RabbitMQ-Sharding.
asynchron Ereignis 0 wird sofort verarbeitet, Ereignis 1, 2 und 3 werden erneut in der Warteschlange veröffentlicht, damit andere Sharding-Konsumenten sie verarbeiten können.
What's new in the latest 2.8.48
Softonic APK -Informationen
Superschnelles und sicheres Herunterladen über die APKPure-App
Ein Klick zur Installation von XAPK/APK-Dateien auf Android!