Ich bin mit meinem Kollegen ToshihitoKon als Power-In-Team mit viel Glück zu Isucon10 gekommen. Der Ursprung des Namens ist das innere Ringmaterial, das für eine Weile in der Firma beliebt war w
Ich konnte letztes Jahr nicht am ersten Jahr meines neuen Absolventen teilnehmen, weil ich zu beschäftigt mit der Arbeit war, also konnte ich mir im zweiten Jahr etwas leisten und ich werde dieses Jahr teilnehmen! Also habe ich versucht, am Krieg teilzunehmen. Die erste ISUCON!
Wir haben eine Legende, die die ISUCON mehrmals gewonnen hat und Fragen hat, aber wenn möglich, möchte ich mich mit Mitgliedern des gleichen Levels zusammenschließen, um meine Position zu erfahren. Deshalb habe ich mich entschieden, Toshihito Kon als Teammitglied zu verwenden. Ich lud dich ein. Ich hatte viele Möglichkeiten, zusammenzuarbeiten. In diesem Sinne war es einfach zu kommunizieren und es hat Spaß gemacht.
ToshihitoKon hatte eine starke Infrastruktur, also fragte ich nach der Infrastruktur und fuhr mit der Aufteilung der Rollen fort, die der Anwendung gewidmet waren. Die verwendete Sprache ist Go.
Ich habe das ISUCON9-Qualifying optimiert, indem ich es auf dem lokalen Docker meines Mac ausgeführt habe. http://isucon.net/archives/53805209.html
Ich habe mir auch die Blogs angesehen, die in der Vergangenheit hohe Punktzahlen erzielt haben, und die Strategie als Referenz verwendet. https://to-hutohu.com/2019/09/09/isucon9-qual/#%E5%BD%93%E6%97%A5
Infolgedessen dachte ich, dass ich mit der Verwendung von alp`` pt-query-Digest
nicht sehr vertraut bin und Nginx
nicht verstehe. Deshalb habe ich versucht, das Zugriffsprotokoll und das langsame Abfrageprotokoll mit ISUCON9 als Betreff zu analysieren. Ich habe es getan.
Danach bereiten Sie mit dem Standard Wettbewerb erstellen das Git-Repository im Voraus vor und so weiter.
Persönlich habe ich Nginx nicht genug verstanden, also habe ich die folgenden Bücher gelesen. Es war sehr hilfreich. Einführung in die Nginx-Praxis WEB + DB PRESS plus
In den vergangenen Fragen zum Isucon9-Qualifying konnte ich fast 10.000 Punkte sammeln, also entschied ich mich für den Tag. Ich war am Tag zuvor bei Toshihito Kon und hatte eine Kundgebung auf einer Pizza-Party, und ich konnte mich wie ein Festival fühlen, lol
ToshihitoKon konnte die Infrastruktureinstellungen reibungslos abschließen, sodass ich mich auf die Optimierung der App konzentrieren konnte. ToshihitoKon kümmert sich um die DB-Einstellungen und mehrere Gerätekonfigurationen und optimiert die App.
Ich habe hier eine Punktzahl von ungefähr 650, aber seitdem ist es träge ... Bei anderen Teams schien es, als müssten wir den kritischen Engpass beseitigen.
Ich dachte, dass es zwei Optionen gibt, die Ablaufverfolgung, um die Suche oder das Zwischenspeichern im Speicher zu beschleunigen. Deshalb habe ich das im Voraus untersuchte Zwischenspeichern im Speicher ausprobiert, aber ich konnte die Fehler nicht vollständig beseitigen und sie nicht einführen. ... Es tut mir Leid!
Infolgedessen beendete ich mit ungefähr 650 Punkten.
http://isucon.net/archives/55025156.html Als ich mir die Kommentare ansah, hielt ich es für wichtig, die Suche durch Nachverfolgung zu beschleunigen.
Außerdem konnte ich mir nur eine Strategie vorstellen, um die Suche auf der Anwendungsseite zu implementieren, indem die Stelle, an der die Suche kompliziert ist, in einen On-Memory-Cache umgewandelt wird. Es gab jedoch auch eine Möglichkeit, einen Index für alle Suchbedingungen normalerweise zu erstellen.
index Ich fand es nicht gut, es in die dunklen Wolken zu legen, aber ich hätte es einmal versuchen sollen, bevor ich eine Entscheidung traf. Raten Sie nicht nur, messen Sie es.
Ich kannte auch das Problem, dass der Index aufgrund der Sortierung in absteigender und aufsteigender Reihenfolge nicht funktioniert, aber es ist sehr viel besser, eine neue Spalte hinzuzufügen, um dies zu beheben! ist geworden.
Ich bemerkte auch, dass die Geschwindigkeit des Masseneinfügens erhöht wurde, aber ich habe nicht so oft darauf zugegriffen, wie ich das Protokoll gesehen habe, also habe ich es verlassen. Sobald der Engpass behoben ist, wird dies möglicherweise als nächstes zu einem Problem.
Wenn ich normalerweise arbeite, habe ich viel Arbeit, die näher an der Anwendung liegt, und ich musste die Nginx-Einstellungen nicht von Grund auf neu schreiben. Daher finde ich es sehr gut, dass ich durch die Teilnahme an ISUCON viel Wissen über die Infrastruktur erworben habe. Ich werde!
Außerdem verbringe ich in meinem aktuellen Job eine überwältigende Zeit damit, Code zu lesen und über Designs nachzudenken, die auf vorhandenen Spezifikationen basieren, und ich bedauere, dass ** ich nicht in der Lage bin, meine Hände zu bewegen und Code zu schreiben **. ..
Selbst nach dem Lesen des Kommentars schien der Engpass recht gut erkannt worden zu sein, so dass ISUCON den Mangel an Implementierungskraft für "wie man ihn löst" deutlich spürte. Erhöhen Sie die Chancen, Code nicht nur in Ihrer täglichen Arbeit, sondern auch in Ihrem Privatleben zu schreiben! Es führte zur Motivation.
Vielen Dank an alle Betreiber für die lustigen Themen! !! Ich war sehr beeindruckt von den Fähigkeiten und der Einstellung aller, die dieses Niveau an Fragen und Turnieren verwalten. Ich möchte mich widmen, damit ich das eines Tages tun kann. Vielen Dank an Toshihito Kon für den erneuten Besuch! Wie Rache im nächsten Jahr!
Recommended Posts