Heim Java javaLernprogramm Hardcore-Sachen: eine Reise zur Rekonstruktion von mehr als 30.000 Codezeilen in einem Kernsystem

Hardcore-Sachen: eine Reise zur Rekonstruktion von mehr als 30.000 Codezeilen in einem Kernsystem

Jul 26, 2023 pm 03:48 PM
系统

Da gibt es diese Passage im klassischen Buch „Refactoring“:
Am Anfang ging es bei den Refactorings, die ich durchgeführt habe, nur um Details. Wenn der Code prägnanter wird, sehe ich einige Dinge auf Designebene, die ich vorher nicht verstehen konnte. Ohne Refactoring wäre ich nicht in der Lage, diese Ebene zu erreichen.
Refactoring ist wirklich eine spannende Sache für Programmierer.
Zu Beginn dieses Jahres hat unser Team die Rekonstruktion eines komplexen Projekts abgeschlossen, das den Kernbestandteil des Werbesystems darstellt. Es umfasst etwa 300 Dateien und mehr als 30.000 Zeilen Code.
Vom Entwurf der technischen Lösung bis zur endgültigen vollständigen Einführung vergingen nur etwa 1 Monat, und es gab keine Unfälle.
Dies sollte das größte und erfolgreichste Refactoring-Projekt sein, das ich je in meiner 8-jährigen Programmierkarriere erlebt habe: Die Geschwindigkeit ist schnell genug, der Plan ist umfassend und die Qualität ist akzeptabel.

01 Lassen Sie uns zunächst über den historischen Ballast dieses Systems sprechen

Unsere Werbemaschine durchlief vor dieser Rekonstruktion etwa eineinhalb Jahre der Iteration. In der Anfangsphase war sie auf Suchszenarien ausgerichtet, mit einem Einzelgeschäft und klare Prozesse.

Ab 2019 begann das Werbegeschäft des Unternehmens schnell zu expandieren, wobei der Umsatz nahezu exponentiell wuchs. In diesem Prozess stand unsere Werbemaschine vor zwei Herausforderungen:

1. Die Geschäftsszenarien wurden zunehmend komplexer. Zusätzlich zur Suchmaschinenwerbung musste sie auch Informationsflussempfehlungen und ähnliche Empfehlungsszenarien unterstützen.

2. Der Werbeverkehr beginnt rasant zuzunehmen. Neben der Erfüllung der funktionalen Anforderungen muss auch die Leistung berücksichtigt werden.

Nach dem Aussortieren kann der größte Teil der Logik der gesamten Engine gemeinsam genutzt werden, daher haben wir ein Hauptgerüst definiert und die erweiterbaren Teile abstrahiert. Auf diese Weise kann jedes Szenario entsprechend den Besonderheiten seines eigenen Unternehmens bestimmte öffentliche Schnittstellen implementieren. Darüber hinaus haben wir aus Performance-Sicht die Lesbarkeit des Codes geopfert und einige Logik parallelisiert.

Mit der Geschäftsentwicklung begann das Suchszenario in eine Phase schneller Iteration einzutreten, in der immer mehr neue Strategien hinzugefügt wurden und unser Hauptrahmen zu diesem Zeitpunkt allmählich unflexibel wurde.

Wenn Sie den Hauptrahmen ändern, müssen andere Szenen als die Suche entsprechend rekonstruiert werden. Während der Zeit der schnellen Geschäftsentwicklung ist der Bauzeitplan überhaupt nicht zulässig, sodass wir die Patch-Entwicklung nur auf dem vorhandenen Framework durchführen können. Dies führt zu zwei offensichtlichen Problemen:

1 Um mit der speziellen Suchlogik kompatibel zu sein, müssen wir in anderen Szenarien verschiedene Wenn-Urteile hinzufügen, um diese Logiken zu umgehen.

2. Es gibt immer mehr Werbestrategien, insgesamt Dutzende. Wenn das Framework seine klare Struktur verliert, beginnt die Umsetzung einiger Strategien, es mangelt an hierarchischer Unterteilung und einem steckbaren abstrakten Design.

In diesem Zusammenhang begann der Code mit der Anhäufung von Änderungen von der ursprünglichen Absicht des Designs abzuweichen, und die technischen Schulden wurden immer schwerer. Wir konnten jedoch nie den richtigen Zeitpunkt für eine Umgestaltung finden.
Hardcore-Sachen: eine Reise zur Rekonstruktion von mehr als 30.000 Codezeilen in einem Kernsystem

Der Wendepunkt kam Ende 2019. Aufgrund der Besonderheiten des Werbegeschäfts begann der Verkehr natürlich zu sinken. Darüber hinaus konzentrierte sich das Produktbetriebsteam auf die Arbeitsplanung für das zweite Jahr , was uns sehr geholfen hat, mit dem Wiederaufbau zu beginnen.

Wir haben die Bauzeit auf 1 Monat festgelegt und am Ende war es nur einen Tag später als erwartet online. Obwohl zwei Online-Probleme auftraten, wurden diese rechtzeitig während der Graustufenphase entdeckt und behoben, und es gab keine Offline-Probleme Unfall verursacht wurden.

Im Allgemeinen handelt es sich um ein schwieriges und relativ erfolgreiches Refactoring-Projekt. Lassen Sie uns ausführlich über die wertvollen Erfahrungen sprechen, die ich aus diesem Projekt gewonnen habe.

02 Welche Vorbereitungen haben wir vor dem Refactoring getroffen?

Die Menge des dieses Mal überarbeiteten Codes ist sehr groß, mehr als 30.000 Zeilen, und es handelt sich um den Kernmotor des Werbesystems. Vor dem Start können wir mit folgenden Schwierigkeiten rechnen:

1. Widerstand auf der Unternehmensseite: Diese Umstrukturierung kann zwar langfristige F&E-Effizienz bringen Das Geschäftseinkommen kann nicht direkt verbessert werden, und der Entwicklungszyklus wird nicht zu kurz sein. Wie können wir Unterstützung von Kommilitonen aus der Wirtschaft erhalten?

2. Technische Bedenken: Sobald Refactoring einen Online-Unfall verursacht, verfügt das Unternehmen über ein Strafsystem, das alle leichtfertig in die Schlacht ziehen lässt. Wenn während des Rekonstruktionsprozesses sehr umfangreiche Geschäftsiterationen auftreten, kann gleichzeitig niemand die Lieferzeit garantieren und es wird schwierig, die Qualität zu kontrollieren.

Hardcore-Sachen: eine Reise zur Rekonstruktion von mehr als 30.000 Codezeilen in einem Kernsystem

Als Reaktion auf die Anliegen dieser beiden Parteien spielen meiner Meinung nach folgende Aufgaben eine Schlüsselrolle.

▍Lassen Sie alle die Schmerzpunkte sehen

Wie bereits erwähnt: Mit der Geschäftsiteration ist das Hauptgerüst unserer Werbemaschine verschwommen und Dutzende Werbestrategien sind in verschiedenen Geschäftsszenarien mit chaotischen Konfigurationen verstreut.

Als Reaktion auf diese beiden Schwachstellen haben wir einen Monat im Voraus begonnen, das bestehende Geschäft zu sortieren, alte Codes zu lesen und frühere Anforderungsdokumente durchzusehen. Schließlich haben wir die Kernprozesse und Werbestrategien verschiedener Szenarien in ein A eingeteilt klare Form.

Diese Tabelle ermöglicht es Technologie und Produkten zum ersten Mal, das Gesamtbild unseres Motorteils klar zu erkennen und die Komplexität des Geschäfts und die aktuellen technischen Engpässe zu verstehen.

▍Nachdem wir die Ziele und Werte des Refactorings geklärt hatten und jedem die Schwachstellen bewusst gemacht hatten, planten wir zwei Kernziele für dieses Refactoring:

1 des Hauptrahmens: Modularisieren Sie den Hauptprozess, definieren Sie die Protokolle der oberen und unteren Schicht neu und stellen Sie sicher, dass jede Ebene auch intern abstrahiert werden muss und eine gute Skalierbarkeit aufweist.

2. Flexible und konfigurierbare Strategien: Werbestrategien werden nach Geschäftsabsichten klassifiziert und abstrahiert, die Ausführungsbedingungen der Strategien sind dynamisch konfigurierbar und die Strategien können nach Belieben ein- und ausgeschaltet werden.

Darüber hinaus haben wir die erwarteten Vorteile verfeinert, die nach Erreichen dieser beiden Kernziele erzielt werden können:

1. Technische Vorteile: Die Codestruktur ist klarer, einfacher zu verstehen und zu warten; die Skalierbarkeit wird verbessert und die Effizienz der Engine-Entwicklung wird weiter verbessert.

2. Geschäftsvorteile: Strategien können eine detailliertere Konfiguration und Erweiterung ermöglichen und sind geschäftsfreundlicher. Eine verbesserte F&E-Effizienz kann die Geschäftsiteration weiter beschleunigen.

Nachdem der Wert des Wiederaufbaus für alle synchronisiert wurde, steigert er die Begeisterung aller weiter und gibt allen eine stärkere Motivation zur Teilnahme.

▍Kontrolle des Gesamtrhythmus

Die Kontrolle des Gesamtrhythmus ist ebenfalls ein sehr wichtiger Teil, damit jeder eine Zeitvorstellung für diese Angelegenheit haben kann.

Zunächst haben wir die Bauzeit auf 1 Monat festgelegt, einerseits auf die maximal akzeptable Durchlaufzeit, andererseits auf eine schnelle Lösung aus technischer Sicht Das Frühlingsfest rückt näher und wir müssen uns beeilen, bevor das Unternehmen geschlossen wird. Gehen Sie online, bevor Sie online gehen, und reservieren Sie einen Puffer von 1-2 Wochen, um unerwartete Situationen zu vermeiden.

Darüber hinaus haben wir mit der Unternehmensseite eine Vereinbarung getroffen: Während der Umbauzeit werden nicht dringende Anforderungen für den Motorteil nicht akzeptiert. Dadurch können parallele Entwicklungs- und Codekonflikte minimiert werden und das Team kann sich stärker konzentrieren.

03 Welche Erfahrungen können Sie während des Implementierungsprozesses teilen?

Dieses Refactoring verlief so reibungslos, dass ich 4 wertvolle Erfahrungen mit Ihnen teilen kann.

1. Hochwertige technische Designlösungen

Dies ist auf die täglichen Anforderungen zurückzuführen. Wir entwerfen technische Lösungen für Projekte mit einem Entwicklungszyklus von mehr als 3 Tagen. Diese Rekonstruktion ist sicherlich keine Ausnahme.

Die Gesamtarchitektur des Frameworks, das Protokolldesign zwischen Modulen und das Skalierbarkeitsdesign der Strategie stehen im Mittelpunkt dieser technischen Lösung, die das Team nicht weniger als dreimal besprach.

Nachdem der große Plan fertiggestellt war, verfeinerte das Team die öffentlichen Teile wie Datenbank, Schnittstellenfelder, Cache-Struktur, vergrabene Protokollpunkte usw. weiter. Da es sich um eine kollaborative Entwicklung mit mehreren Personen handelt, stimmte das Team zu, Dokumente als zu verwenden Die Kommunikationsschnittstelle und Dokumente bleiben immer mit Ihrem Code synchron.

Unter solch hohen Anforderungen erstellte das Team ein technisches Lösungsdokument mit mehr als 5.000 Wörtern und insgesamt 36 Seiten, das eine gute Grundlage für die allgemeine Qualitätssicherung legte.

2. Refactoring des Framework-Codes

Dieser PR ist sehr wichtig und der wichtigste Schritt von der Implementierung unserer technischen Lösung bis zum Code. Wir haben die rekonstruierte Paketstruktur, die Modulaufteilung, die API-Definition zwischen den einzelnen Schichten und die Abstraktion verschiedener Werbestrategien geklärt und dabei zunächst die Implementierungsdetails ignoriert.

Auf diese Weise wird im Grunde der Hauptcode gebildet, der unser ideales Framework klar darstellen kann. Anschließend organisierten wir mehrere zentrale Codeüberprüfungen und bildeten schließlich eine einheitliche Meinung.

Mit diesem Schritt kann sehr gut vermieden werden, dass man sich zu früh mit den Implementierungsdetails beschäftigt, was zu einer unzureichenden Aufmerksamkeit für das Hauptframework führt und eine spätere Überarbeitung tatsächlich die Effizienz beeinträchtigt.

3. Häufige Kommunikation und gepaarter Codeüberprüfungsmechanismus

Nach Eintritt in die detaillierte Implementierungsphase ist ein sehr wichtiger Punkt: Verständnis der vorhandenen Logik. Der Motorcode wurde anderthalb Jahre lang von vielen Menschen in der Geschichte entwickelt, aber dieses Mal beteiligten sich nur drei Studenten an der Rekonstruktion.

Wenn wir während des gesamten Prozesses auf unklare Codelogik stießen, haben wir wiederholt kommuniziert und überprüft und keine subjektiven Vermutungen angestellt. Diese Vorsicht ist tatsächlich sehr wichtig.

Darüber hinaus haben wir für die Codeüberprüfung Studenten zugewiesen, die mit diesem Geschäft vertraut sind und für jedes Modul verantwortlich sind. Sie werden paarweise gebildet und der Mechanismus ist flexibel.

4. Effektiver Testplan

Refactoring wurde nicht durchgeführt, zuerst testen. Dieses Prinzip wird im Buch „Refactoring“ hervorgehoben und steht auch im Mittelpunkt unserer Diskussion dieser technischen Lösung. Ich werde es hier im Detail hervorheben.

Zunächst haben wir in der Anfangsphase eine Vereinbarung getroffen: keinen alten Code anzufassen und ein komplett neues Paket für den Wiederaufbau zu erstellen. Dadurch ist es einfach, die Ergebnisse vor und nach der Rekonstruktion zu vergleichen und gleichzeitig Online-Graustufenexperimente durchzuführen.

In Bezug auf den Testplan lohnt es sich, aus den folgenden 4 Punkten zu lernen:

1. Durch dieses Refactoring werden keine funktionalen Anpassungen vorgenommen, also das Verhalten des Äußeren Wenn sich die API ändert, ist diese End-to-End-Testmethode die wichtigste Methode für F&E- und QS-Tests.

2. Rauchtest: QA-Studenten stellen Rauchfälle zur Verfügung und F&E-Studenten führen den Rauchtest durch. Vor dem F&E-Test müssen alle Rauchfälle bestanden werden. Das ist in den meisten Internetunternehmen nicht üblich, bei großen Projekten aber absolut effektiv.

3. Dual-Prozess-Überprüfung der Sandbox-Umgebung: Wie bereits erwähnt, bleibt der Code vor und nach unserer Rekonstruktion erhalten, sodass die Eingabeparameter der Online-Umgebung über Skripte als Fälle erfasst werden können und dann die API-Rückgaben zurückgegeben werden Auf automatisierte Weise werden die Felder einzeln verglichen.

4. Graustufenexperiment in der Online-Umgebung: Graustufen sind für die Rekonstruktion sehr wichtig. Wir verwenden die vorhandene ABTest-Plattform, um den Graustufenverkehr schrittweise von 5 % über 10 % auf 30 % und schließlich auf 100 % freizugeben Es wurde ein sehr vorsichtiges Tempo der Volumenexpansion festgelegt und anschließend durch Protokolle und die Überwachung von Geschäftsindikatoren überprüft.

Am Ende geschrieben


Überprüfung des gesamten Wiederaufbauprozesses, zusammengefasst in den folgenden 7 Schlüsselpunkten:

1. Nutzen Sie die Gelegenheit zur Umstrukturierung
2. Frühzeitiges Sortieren ist sehr wichtig, finden Sie zuerst die Ziele und Werte, um alle zu begeistern
ist nicht für den Langzeitbetrieb geeignet, es ist nicht geeignet. Parallel zum Geschäft sind hochwertige technische Lösungen erforderlich Seien Sie sorgfältig und verantwortlich für jede Codezeile. Der wichtigste Faktor sind natürlich die Menschen. Bei der Umgestaltung von Großprojekten wird die Zusammenarbeitsfähigkeit des Teams extrem auf die Probe gestellt .

Das obige ist der detaillierte Inhalt vonHardcore-Sachen: eine Reise zur Rekonstruktion von mehr als 30.000 Codezeilen in einem Kernsystem. 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ß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)

CUDAs universelle Matrixmultiplikation: vom Einstieg bis zur Kompetenz! CUDAs universelle Matrixmultiplikation: vom Einstieg bis zur Kompetenz! Mar 25, 2024 pm 12:30 PM

Die allgemeine Matrixmultiplikation (GEMM) ist ein wesentlicher Bestandteil vieler Anwendungen und Algorithmen und außerdem einer der wichtigen Indikatoren zur Bewertung der Leistung der Computerhardware. Eingehende Forschung und Optimierung der Implementierung von GEMM können uns helfen, Hochleistungsrechnen und die Beziehung zwischen Software- und Hardwaresystemen besser zu verstehen. In der Informatik kann eine effektive Optimierung von GEMM die Rechengeschwindigkeit erhöhen und Ressourcen einsparen, was für die Verbesserung der Gesamtleistung eines Computersystems von entscheidender Bedeutung ist. Ein tiefgreifendes Verständnis des Funktionsprinzips und der Optimierungsmethode von GEMM wird uns helfen, das Potenzial moderner Computerhardware besser zu nutzen und effizientere Lösungen für verschiedene komplexe Computeraufgaben bereitzustellen. Durch Optimierung der Leistung von GEMM

Das intelligente Fahrsystem Qiankun ADS3.0 von Huawei wird im August auf den Markt kommen und erstmals auf dem Xiangjie S9 eingeführt Das intelligente Fahrsystem Qiankun ADS3.0 von Huawei wird im August auf den Markt kommen und erstmals auf dem Xiangjie S9 eingeführt Jul 30, 2024 pm 02:17 PM

Am 29. Juli nahm Yu Chengdong, Huawei-Geschäftsführer, Vorsitzender von Terminal BG und Vorsitzender von Smart Car Solutions BU, an der Übergabezeremonie des 400.000sten Neuwagens von AITO Wenjie teil, hielt eine Rede und kündigte an, dass die Modelle der Wenjie-Serie dies tun werden Dieses Jahr auf den Markt kommen Im August wurde die Huawei Qiankun ADS 3.0-Version auf den Markt gebracht und es ist geplant, die Upgrades sukzessive von August bis September voranzutreiben. Das Xiangjie S9, das am 6. August auf den Markt kommt, wird erstmals mit dem intelligenten Fahrsystem ADS3.0 von Huawei ausgestattet sein. Mit Hilfe von Lidar wird Huawei Qiankun ADS3.0 seine intelligenten Fahrfähigkeiten erheblich verbessern, über integrierte End-to-End-Funktionen verfügen und eine neue End-to-End-Architektur von GOD (allgemeine Hinderniserkennung)/PDP (prädiktiv) einführen Entscheidungsfindung und Kontrolle), Bereitstellung der NCA-Funktion für intelligentes Fahren von Parkplatz zu Parkplatz und Aktualisierung von CAS3.0

Welche Version des Apple 16-Systems ist die beste? Welche Version des Apple 16-Systems ist die beste? Mar 08, 2024 pm 05:16 PM

Die beste Version des Apple 16-Systems ist iOS16.1.4. Die beste Version des iOS16-Systems kann von Person zu Person unterschiedlich sein. Die Ergänzungen und Verbesserungen im täglichen Nutzungserlebnis wurden auch von vielen Benutzern gelobt. Welche Version des Apple 16-Systems ist die beste? Antwort: iOS16.1.4 Die beste Version des iOS 16-Systems kann von Person zu Person unterschiedlich sein. Öffentlichen Informationen zufolge gilt iOS16, das 2022 auf den Markt kam, als eine sehr stabile und leistungsstarke Version, und die Benutzer sind mit dem Gesamterlebnis recht zufrieden. Darüber hinaus wurden die neuen Funktionen und Verbesserungen des täglichen Nutzungserlebnisses in iOS16 von vielen Benutzern gut angenommen. Insbesondere in Bezug auf die aktualisierte Akkulaufzeit, Signalleistung und Heizungssteuerung war das Feedback der Benutzer relativ positiv. Betrachtet man jedoch das iPhone14

Immer neu! Upgrade der Huawei Mate60-Serie auf HarmonyOS 4.2: KI-Cloud-Erweiterung, Xiaoyi-Dialekt ist so einfach zu bedienen Immer neu! Upgrade der Huawei Mate60-Serie auf HarmonyOS 4.2: KI-Cloud-Erweiterung, Xiaoyi-Dialekt ist so einfach zu bedienen Jun 02, 2024 pm 02:58 PM

Am 11. April kündigte Huawei erstmals offiziell den 100-Maschinen-Upgradeplan für HarmonyOS 4.2 an. Dieses Mal werden mehr als 180 Geräte an dem Upgrade teilnehmen, darunter Mobiltelefone, Tablets, Uhren, Kopfhörer, Smart-Screens und andere Geräte. Im vergangenen Monat haben mit dem stetigen Fortschritt des HarmonyOS4.2-Upgradeplans für 100 Maschinen auch viele beliebte Modelle, darunter Huawei Pocket2, Huawei MateX5-Serie, Nova12-Serie, Huawei Pura-Serie usw., mit der Aktualisierung und Anpassung begonnen, was bedeutet, dass dass es mehr Benutzer von Huawei-Modellen geben wird, die das gemeinsame und oft neue Erlebnis von HarmonyOS genießen können. Den Rückmeldungen der Benutzer zufolge hat sich das Erlebnis der Modelle der Huawei Mate60-Serie nach dem Upgrade von HarmonyOS4.2 in allen Aspekten verbessert. Vor allem Huawei M

Welche Computer-Betriebssysteme gibt es? Welche Computer-Betriebssysteme gibt es? Jan 12, 2024 pm 03:12 PM

Ein Computerbetriebssystem ist ein System zur Verwaltung von Computerhardware und -software. Es ist auch ein Betriebssystemprogramm, das auf allen Softwaresystemen basiert. Welche Computersysteme gibt es also? Im Folgenden erklärt Ihnen der Herausgeber, was Computer-Betriebssysteme sind. Das sogenannte Betriebssystem dient der Verwaltung von Computerhardware und Softwareprogrammen. Sämtliche Software wird auf Basis von Betriebssystemprogrammen entwickelt. Tatsächlich gibt es viele Arten von Betriebssystemen, darunter solche für den industriellen Einsatz, den kommerziellen Einsatz und den persönlichen Gebrauch, die ein breites Anwendungsspektrum abdecken. Im Folgenden erklärt Ihnen der Herausgeber, was Computer-Betriebssysteme sind. Welche Computer-Betriebssysteme sind Windows-Systeme? Das Windows-System ist ein Betriebssystem, das von der Microsoft Corporation in den Vereinigten Staaten entwickelt wurde. als die meisten

Unterschiede und Gemeinsamkeiten von cmd-Befehlen in Linux- und Windows-Systemen Unterschiede und Gemeinsamkeiten von cmd-Befehlen in Linux- und Windows-Systemen Mar 15, 2024 am 08:12 AM

Linux und Windows sind zwei gängige Betriebssysteme, die das Open-Source-Linux-System bzw. das kommerzielle Windows-System darstellen. In beiden Betriebssystemen gibt es eine Befehlszeilenschnittstelle, über die Benutzer mit dem Betriebssystem interagieren können. In Linux-Systemen verwenden Benutzer die Shell-Befehlszeile, während Benutzer in Windows-Systemen die cmd-Befehlszeile verwenden. Die Shell-Befehlszeile im Linux-System ist ein sehr leistungsfähiges Tool, das fast alle Systemverwaltungsaufgaben erledigen kann.

Ausführliche Erklärung zum Ändern des Systemdatums in der Oracle-Datenbank Ausführliche Erklärung zum Ändern des Systemdatums in der Oracle-Datenbank Mar 09, 2024 am 10:21 AM

Ausführliche Erläuterung der Methode zum Ändern des Systemdatums in der Oracle-Datenbank. In der Oracle-Datenbank umfasst die Methode zum Ändern des Systemdatums hauptsächlich das Ändern des Parameters NLS_DATE_FORMAT und die Verwendung der Funktion SYSDATE. In diesem Artikel werden diese beiden Methoden und ihre spezifischen Codebeispiele ausführlich vorgestellt, um den Lesern zu helfen, den Vorgang zum Ändern des Systemdatums in der Oracle-Datenbank besser zu verstehen und zu beherrschen. 1. Ändern Sie die NLS_DATE_FORMAT-Parametermethode. NLS_DATE_FORMAT sind Oracle-Daten

So beheben Sie den Fehler 0xc0000428 im Win10-System So beheben Sie den Fehler 0xc0000428 im Win10-System Dec 27, 2023 pm 04:41 PM

Nach der Installation des Win10-Betriebssystems auf unseren Computern kann es bei einigen Freunden zu einem System-Bluescreen und der Fehlermeldung 0xc0000428 kommen, wenn sie den Computer verwenden. Machen Sie sich über solche Probleme keine Sorgen. Der Redakteur ist der Meinung, dass wir das Problem zunächst auf dem System beheben können, um festzustellen, ob es durch Hardware oder Software verursacht wird, und das Problem dann gezielt lösen können. Schauen wir uns an, was der Editor für die spezifischen Details getan hat ~ So lösen Sie das Problem von 0xc0000428 im Win10-System 1. Starten Sie kontinuierlich neu und erzwingen Sie dann dreimal das Herunterfahren, damit das Win10-System automatisch in die erweiterten Startoptionen wechselt. 2. Öffnen Sie in der Benutzeroberfläche der erweiterten Startoptionen des Win10-Systems nacheinander: Fehlerbehebung – Erweiterte Optionen – Starteinstellungen in den Starteinstellungen

See all articles