Wochenbericht für die erste Woche im März 2023

In letzter Zeit haben sich die Anforderungen an die Einhaltung von Vorschriften immer mehr in die technische Seite der Dinge eingeschlichen. In letzter Zeit kommen immer wieder Produkte auf den Tisch, bei denen es um die Umsetzung dieser und jener Compliance-Anforderungen geht. Oder sie führen eine Art Compliance-Fragebogen aus. Meiner Meinung nach geht es bei der Einhaltung der Vorschriften vor allem um die Speicherung von Benutzerdaten. Der Zugriff muss standardisiert werden, und dann können die Benutzer allmählich anfangen, ihre eigenen Daten zu kontrollieren. Dann gibt es auch einige personelle und organisatorische Veränderungen, die sich auf die technische Ebene auswirken. Zum Beispiel wurde ein Geschäftsbereich in andere Abteilungen verlagert, und wir haben dann Ressourcen wie Datenbanken mit diesem Geschäftsbereich geteilt. Hier tritt die Kostenfrage in den Vordergrund, d.h. das … Weiterlesen …

Wöchentlicher technischer Bericht für die vierte Woche im Februar 2023

Diese Woche ist mir aufgefallen, dass einige der Service-Frameworks nicht sehr gut geschrieben sind, insbesondere bestimmte Java-Frameworks. Wenn die CPU-Auslastung etwa 40% erreicht, kommt es zu vielen Timeouts. Bei diesen Diensten reichen die CPU-Kerne und die Speicherkapazität nicht aus, die Anzahl der arbeitenden Threads ist nicht hoch genug. Es ist jedoch nicht genug, um die CPU laufen zu lassen. Mit Hilfe von Java-Performance-Tools zur Analyse der Entdeckung, in der Tat, festgestellt, dass die meisten der Arbeits-Threads in der Idel oder Waiting Status. Derzeit ist die umfassende Analyse aller Umstände, noch rätselhaft. NIO auch verwendet, auch die Netty Rahmen verwendet, aber der Durchsatz ist nicht nach oben. Bei der Analyse der Threads wurde festgestellt, dass es keine besonders beschäftigten Business-Threads gibt. Es wird angenommen, dass IO oder eine Art … Weiterlesen …

Technischer Wochenbericht für die dritte Woche im Februar 2023

Diese Woche haben wir uns mit einem Risiko befasst, das vor den Feiertagen entdeckt wurde. Ein Dienst, der Redis verwendete und keine TTL für den Schlüssel einstellte, sondern sich auf die Redis-Eliminierungsrichtlinie verließ. Ich sehe, dass dieser Dienst Redis mit einer LRU-Eliminierungsstrategie verwendet. Diese Strategie scheint perfekt zu sein, aber es gibt Fallstricke, wenn über einen bestimmten kürzeren Zeitraum viel Schreibverkehr stattfindet. Dann löst Redis den Eliminierungsprozess aus und gibt sein Bestes, um genügend Speicherplatz freizugeben. Das bedeutet, dass Redis normale Operationen wie Abfragen nicht mehr sehr gut ausführen kann. Dies führt zu dramatischen Schwankungen bei der Lese- und Schreiblatenz für Redis aus der Geschäftsschicht. Ich hatte dieses Problem bisher 2 Mal. Außerdem ist Redis ohne die Einstellung von TTL immer zu 100% ausgelastet, und wir können anhand … Weiterlesen …

Technischer Wochenbericht für die zweite Woche im Februar 2023

Von Ende Januar bis Anfang Februar fällt es unter das chinesische Neujahrsfest. Während dieser Zeit muss die Person, die für die Sicherstellung des Betriebs der chinesischen Neujahrsphase verantwortlich ist, in Bereitschaft sein, um sich um Online-Probleme zu kümmern. Ich war in ständiger Sorge, und das Gute daran ist, dass die Online-Probleme nicht aktiv zu mir kamen. Am besten ist es, während des chinesischen Neujahrsfestes insgesamt unbeweglich zu bleiben. Diese Woche bewerte ich die Auswirkungen einer wichtigen Anforderung. Ich bin der Meinung, dass bei einer neuen Geschäftsanforderung, insbesondere wenn sie sich auf ein komplexes Geschäftssystem bezieht, mehrere Auswirkungen berücksichtigt werden müssen. Wenn man zu diesem Zeitpunkt noch nicht besonders vertraut und erfahren mit dem System ist, ist es am besten, nur minimale Änderungen vorzunehmen. Es geht nicht darum, konservativ … Weiterlesen …

Technischer Wochenbericht für die zweite Woche im Januar 2023

Diese Woche ging es hauptsächlich darum, die Stabilität verschiedener Dienste im Vorfeld des chinesischen Neujahrsfestes sicherzustellen. Kürzlich stellte ich fest, dass ein bestimmter Dienst während der Hauptverkehrszeiten häufig Zeitüberschreitungen meldete, und ich erinnerte den Eigentümer des Dienstes daran, sich darum zu kümmern. Aber nach ein paar Tagen konnte der Eigentümer des Dienstes den Grund immer noch nicht erklären. Ich musste mich persönlich um das Problem kümmern, denn der Alarm war sehr ernst, und die Timeout-Rate einiger Knoten erreichte bis zu 20%. In diesem Zeitraum dürfte es an den bevorstehenden Feiertagen liegen, der Datenverkehr ist deutlich gestiegen, im Vergleich zu Ende Dezember um 100%. Es besteht also zunächst der Verdacht, dass die Übertragungskapazität des Dienstes unzureichend ist, also wurde zunächst eine Kapazitätserweiterung durchgeführt. Die Erweiterung löste das Problem jedoch … Weiterlesen …

Wöchentlicher technischer Bericht für die erste Woche im Januar 2023

Auf dem Weg ins Jahr 2023 wird dieses Jahr ein schwieriges Jahr werden. In diesem Jahr stehen mehrere Herausforderungen an. Eine davon ist die Migration aller Daten, die bisher auf physischen Servern bereitgestellt wurden, in die Cloud. Dann ist da noch die beschleunigte Entwicklung einiger neuer Mitarbeiter im Team, damit sie so schnell wie möglich die Dienste übernehmen können, die derzeit Teil des Hauptgeschäfts sind, und die in der Lage sein müssen, eigenständig Benutzerprobleme zu lösen und die Dienste zu optimieren. Dadurch kann ich einen Teil der Arbeit auf sie übertragen und mich auf wichtige Ziele konzentrieren, die in diesem Jahr voraussichtlich viel Zeit in Anspruch nehmen werden. Hinzu kommt, dass ich eine Phase des persönlichen Lernens in technischen und anderen Bereichen erreicht habe, die die Richtung meines … Weiterlesen …

Technischer Bericht für die vierte Woche im Dezember 2022

Diese Woche habe ich mich mit dem COVID-19 angesteckt und war insgesamt 9 Tage zu Hause. In dieser Zeit bestand das Wichtigste bei der Arbeit darin, die Auswirkungen der Förderung und Einführung eines kleinen Programms auf das Basisdienstsystem, für das ich verantwortlich bin, zu bewerten. Diese App traf die Bedürfnisse der Menschen im Land zu dieser Zeit und man erwartete einen großen Zustrom von Besuchern, der sich auf die Kerndienste des Basisdienstesystems auswirken könnte. Ursprünglich hatten sie eine Funktion, die kurz vor dem Start stand, und es gab viel Verkehr, so dass ich die Kapazität bereits bewertet und erweitert hatte. Doch dieses Mal, nachdem sie Hunderte von Millionen von Volumenbenachrichtigungen verschoben hatten, kam es zu einer großen Anzahl von Timeouts. Um 8 Uhr morgens lag ich im Bett … Weiterlesen …

Technische Überprüfung für die dritte Dezemberwoche 2022

In dieser Woche haben wir vor allem an der Optimierung eines bestimmten Java-Dienstes gearbeitet. Der Dienst hatte Probleme mit der CPU-Auslastung, die nicht hochgefahren werden konnte. Die erste Frage, die sich stellte, war, ob der Dienst ein Problem mit zu wenig Arbeits-Threads hat. Später stellte sich heraus, dass es nicht daran lag, dass die CPU-Auslastung nicht erhöht werden konnte, sondern dass die erhöhte CPU-Auslastung zu mehr Timeout-Problemen führen würde. Der Dienst hatte schon vor langer Zeit die Rückmeldung erhalten, dass die Leistung unzureichend war und es nicht empfohlen wurde, ihn weiter zu nutzen. Ich habe also das Gefühl, dass das Problem vom Framework ausgeht, nicht vom Geschäftscode. Nachdem ich den Code des Frameworks gelesen und durchforstet habe, verwendet das Framework netty als NIO-Server-Framework und verteilt bei der Ausführung … Weiterlesen …

Wöchentlicher technischer Bericht für die zweite Woche im Dezember 2022

In dieser Woche geht es hauptsächlich darum, diesen Aspekt der Arbeit, für die ich verantwortlich bin, zu klären, und bisher wurden viele Probleme identifiziert. Diese Probleme konzentrieren sich hauptsächlich auf die Daten in der Cloud. Das aktuelle Problem ist vor allem die Frage, wie man die Daten sicher in der Cloud speichern kann, wie man das derzeitige Schema für die Bereitstellung in einer einzigen Geographie umwandeln kann und wie man die Inkonsistenz zwischen den Daten unter der Cloud und den Daten in der Cloud beheben kann. Außerdem wird festgestellt, dass es immer noch einige Dienste gibt, die Under-Cloud-Datenbanken verwenden, und dass diese Under-Cloud-Datenbanken vernünftigerweise aufgegeben werden sollten. Bei diesen Diensten handelt es sich jedoch um einige alte Dienste, und Code-Änderungen bringen einige Risiken mit sich, die untersucht werden … Weiterlesen …

Wöchentlicher technischer Bericht für die erste Woche im Dezember 2022

Zusammengefasst ging es in dieser Woche vor allem darum, einen Kerndienst in die Cloud zu bringen und dann die Knoten unter der Cloud kontinuierlich in Verkehrsweiterleitungsknoten umzuwandeln. Der erste Schritt in der Cloud ist die Bereitstellung des Serviceknotens in der Cloud-Umgebung: Migrieren Sie die Konfigurationsdateien, die Umgebung und kompilieren Sie dann das Image für die Cloud-Umgebung entsprechend der stabilen Version des Codes, und lassen Sie den Service in der Cloud-Umgebung hochlaufen. Nachdem der Dienst hochgefahren und der Test abgeschlossen ist, ist auf dem Knoten in der Cloud derzeit kein Datenverkehr zu verzeichnen. Jetzt müssen Sie einen Teil des Datenverkehrs unter der Cloud in die Cloud weiterleiten, indem Sie zunächst einige der Knoten unter der Cloud durch Weiterleitungsknoten ersetzen. Später kann dieser Teil des Datenverkehrs dazu verwendet werden, den … Weiterlesen …