Heim Technologie-Peripheriegeräte IT Industrie Eine neue Version der plattformübergreifenden Terminaldatenbank WCDB von WeChat ist Open Source und bietet neue Unterstützung für C++ und Kotlin

Eine neue Version der plattformübergreifenden Terminaldatenbank WCDB von WeChat ist Open Source und bietet neue Unterstützung für C++ und Kotlin

Apr 09, 2024 pm 04:16 PM
linux git 数据库 c++ wcdb WeChat Open Source Tencent Open Source

Laut Nachrichten vom 9. April handelt es sich bei WCDB um eine Terminaldatenbank, die auf SQLite Open Source basiert und vom WeChat-Team bereitgestellt wird. Seit der Open-Source-Veröffentlichung im Juni 2017 wurden mehr als zehn Versionen veröffentlicht.

Als eine der am häufigsten genutzten Apps in China und sogar weltweit deckt WeChat intern Datenbanken für verschiedene Unternehmen ab und die Anzahl der gespeicherten Nachrichten kann Millionen oder sogar mehrere zehn Millionen erreichen. Diese riesige Datenmenge und die immer umfangreicheren Anwendungsszenarien haben zu ständig aktualisierten Anforderungen und Herausforderungen für WCDB geführt, und das ursprüngliche Code-Framework ist nach und nach schwer zu bewältigen.

Daher hat WeChat ab 2019 beschlossen, die Abwärtskompatibilität der Schnittstelle aufzugeben und alle Anstrengungen zu unternehmen, um eine neue und leistungsfähigere Version von WCDB zu erstellen. Nach mehreren Iterationen wurden die Schnittstellenschicht und die Kernlogikschicht von WCDB umfassend verbessert und es wurden auch viele neue Funktionen hinzugefügt.

Jetzt hat WeChat angekündigt, dass die neue Version von WCDB, ein großes Upgrade, Open Source sein wird Zu den wichtigsten Änderungen und Aktualisierungen gehören:

  • Umfangreichere Unterstützung für Entwicklungssprachen: zusätzliche Unterstützung für C++, vollständige Unterstützung für Java und Kotlin-Sprachen ORM, das mehr Terminalplattformen abdeckt;

  • Leistungsstärkere SQL-Ausdrucksfunktionen: Winq wurde neu geschrieben, gestärkt usw.;

  • Flexiblere Datenerweiterungsfunktionen: Datenmigration, Datenkomprimierung usw.;

  • Detailliertere Leistungsoptimierungsfunktionen: FTS5-Optimierung, unterbrechbare Transaktionen usw.

  • WCDB Version 1.0 unterstützt drei Entwicklungssprachen: Objective-C, Swift und Java. Mit Ausnahme der drei Sprachen von WCDB, die dieselbe Version von SQLite und denselben Satz an Sicherungs- und Reparaturlogik verwenden Der Code wird unabhängig entwickelt.

  • Während WCDB weiter iteriert, werden viele der neuen Funktionen von WCDB online in der ObjC-Version entwickelt und verifiziert. Die Swift- und Java-Versionen befinden sich im Grunde in einem Zustand, in dem die Iteration gestoppt wird, und die Unterschiede zwischen ihnen werden immer größer. Im Idealfall sollte WCDB in verschiedenen Sprachversionen über die gleichen Fähigkeiten verfügen. Wenn die neue Logik der ObjC-Version jedoch in Swift und Java erneut implementiert wird, ist dies nicht nur eine hohe Arbeitsbelastung, sondern auch fehleranfällig. Es muss noch einmal online verifiziert werden, was nicht ganz der Realität entspricht.

Glücklicherweise ist die Kernlogik der

ObjC-Version von WCDB in C++ implementiert, und ObjC wird nur zur Implementierung der Schnittstellenschichtlogik verwendet

. Viele Bibliotheken, die mehrere Entwicklungssprachen unterstützen, verwenden die Sprache C++ zur Implementierung der Kernlogik, während andere Sprachen nur zur Implementierung der Schnittstellenschicht verwendet werden, beispielsweise die sehr beliebte clientseitige NoSQL-Datenbankkomponente realmDB. WCDB kann auch nach dieser Idee entworfen werden, sodass die ObjC-Version von WCDB nur geringfügige Anpassungen erfordert und die Kernlogik vollständig in C++ implementiert ist. Swift und Java greifen über die Bridging-Methode auf die C++-Kernlogik zu.

Um die Datenbankentwicklungsanforderungen verschiedener Szenarien auf jeder Seite von WeChat vollständig zu unterstützen, hat WCDB außerdem seine Unterstützung für C++ und Kotlin erweitert und deckt damit die gängigen Sprachen für die Terminalentwicklung vollständig ab.

Auf Schnittstellenebene unterstützt die neue Version von WCDB vollständig die fünf wichtigsten Terminalentwicklungssprachen C++, Java, Kotlin, Swift und ObjC und deckt die vier wichtigsten Terminalplattformen Android und iOS ab , Windows und Linux. Gleichzeitig hat WeChat auch Winq neu geschrieben und verbessert, „um es Entwicklern zu ermöglichen, beliebiges SQL mit nativer Syntax in verschiedenen Sprachen zu schreiben“.

微信全平台终端数据库 WCDB 全新版本开源,新增支持 C++ 和 KotlinAuf funktionaler Ebene wurde mit der neuen Version von WCDB eine neue Datensicherungs- und Reparaturlösung eingeführt, die die Datenreparaturrate verbessert und den Leistungsverbrauch der Datensicherung auf ein vernachlässigbares Maß reduziert.
Darüber hinaus hat WeChat zwei neue Funktionen eingeführt: Datenmigration und Datenkomprimierung, die es Entwicklern ermöglichen, durch einfache Konfiguration die beiden Hauptprobleme übermäßiger Datenaggregation und übermäßiger Datenerweiterung in komplexen Unternehmen zu bewältigen. Die neue Version von WCDB führt außerdem neue Funktionen wie FTS5-Optimierung und unterbrechbare Transaktionen ein, sodass Entwickler in bestimmten Szenarien eine extremere Leistungsoptimierung erreichen können.

Die neue Version von WCDB ist Open Source auf Github

. Die Projektadresse ist dieser Website beigefügt:

https://github.com/Tencent/wcdb

Das obige ist der detaillierte Inhalt vonEine neue Version der plattformübergreifenden Terminaldatenbank WCDB von WeChat ist Open Source und bietet neue Unterstützung für C++ und Kotlin. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So starten Sie Apache So starten Sie Apache Apr 13, 2025 pm 01:06 PM

Die Schritte zum Starten von Apache sind wie folgt: Installieren Sie Apache (Befehl: sudo apt-Get-Get-Installieren Sie Apache2 oder laden Sie ihn von der offiziellen Website herunter). (Optional, Linux: sudo systemctl

Was tun, wenn der Port Apache80 belegt ist Was tun, wenn der Port Apache80 belegt ist Apr 13, 2025 pm 01:24 PM

Wenn der Port -80 -Port der Apache 80 besetzt ist, lautet die Lösung wie folgt: Finden Sie den Prozess, der den Port einnimmt, und schließen Sie ihn. Überprüfen Sie die Firewall -Einstellungen, um sicherzustellen, dass Apache nicht blockiert ist. Wenn die obige Methode nicht funktioniert, konfigurieren Sie Apache bitte so, dass Sie einen anderen Port verwenden. Starten Sie den Apache -Dienst neu.

So starten Sie den Apache -Server neu So starten Sie den Apache -Server neu Apr 13, 2025 pm 01:12 PM

Befolgen Sie die folgenden Schritte, um den Apache -Server neu zu starten: Linux/MacOS: Führen Sie sudo systemCTL RESTART APache2 aus. Windows: Net Stop Apache2.4 und dann Net Start Apache2.4 ausführen. Führen Sie Netstat -a | Findstr 80, um den Serverstatus zu überprüfen.

Wie man Debian Syslog lernt Wie man Debian Syslog lernt Apr 13, 2025 am 11:51 AM

In diesem Leitfaden werden Sie erfahren, wie Sie Syslog in Debian -Systemen verwenden. Syslog ist ein Schlüsseldienst in Linux -Systemen für Protokollierungssysteme und Anwendungsprotokollnachrichten. Es hilft den Administratoren, die Systemaktivitäten zu überwachen und zu analysieren, um Probleme schnell zu identifizieren und zu lösen. 1. Grundkenntnisse über syslog Die Kernfunktionen von Syslog umfassen: zentrales Sammeln und Verwalten von Protokollnachrichten; Unterstützung mehrerer Protokoll -Ausgabesformate und Zielorte (z. B. Dateien oder Netzwerke); Bereitstellung von Echtzeit-Protokoll- und Filterfunktionen. 2. Installieren und Konfigurieren von Syslog (mit Rsyslog) Das Debian -System verwendet standardmäßig Rsyslog. Sie können es mit dem folgenden Befehl installieren: sudoaptupdatesud

So lösen Sie das Problem, dass Apache nicht gestartet werden kann So lösen Sie das Problem, dass Apache nicht gestartet werden kann Apr 13, 2025 pm 01:21 PM

Apache kann aus den folgenden Gründen nicht beginnen: Konfigurationsdatei -Syntaxfehler. Konflikt mit anderen Anwendungsports. Berechtigungen Ausgabe. Aus dem Gedächtnis. Prozess -Deadlock. Dämonversagen. Selinux -Berechtigungen Probleme. Firewall -Problem. Software -Konflikt.

So upgraden Sie die Zookeeper -Version auf Debian auf So upgraden Sie die Zookeeper -Version auf Debian auf Apr 13, 2025 am 10:42 AM

Das Upgrade der Zookeeper -Version auf Debian -System kann die folgenden Schritte ausführen: 1. Wenn Sie die vorhandenen Konfiguration und Daten vor einem Upgrade unterstützen, wird dringend empfohlen, die vorhandenen Zookeeper -Konfigurationsdateien und Datenverzeichnisse zu sichern. sudocp-r/var/lib/zookeeper/var/lib/zookeper_backupsudocp/etc/zookeper/conf/zoo.cfg/etc/zookeeper/conf/zookeeper/z

Was sind die Schritte, um GitLab in Debian zu installieren? Was sind die Schritte, um GitLab in Debian zu installieren? Apr 13, 2025 am 10:33 AM

Die Schritte zur Installation von GitLab im Debian-System sind wie folgt: Aktualisieren Sie das Systempaket: Sudoapt-Getupdate-Installationsabhängigkeiten: sudoapt-getinstall-ycurlopenssh-serverca-CertificatestZDataperl add Gitlab offizielle Repository: curlhttps: //packages.gitlab.com/install

So beheben Sie Apache Schwachstellen So beheben Sie Apache Schwachstellen Apr 13, 2025 pm 12:54 PM

Schritte zur Behebung der Apache -Sicherheitsanfälligkeit umfassen: 1. Bestimmen Sie die betroffene Version; 2. Anwenden von Sicherheitsaktualisierungen; 3. Starten Sie Apache neu; 4. Überprüfen Sie die Fix; 5. Sicherheitsfunktionen aktivieren.

See all articles