Projekte im Detail: die Ausgangslage, was nicht offensichtlich war, und das gemessene Ergebnis

Projekte aus unserer Arbeit: die Ausgangslage des Kunden, die Schritte, die Probleme, die nicht offensichtlich waren, und die Ergebnisse mit Zahlen aus Logs und Messungen. Jede Karte endet mit den verwandten Ausgangslagen und dem ersten Schritt.

Sieben Projektkarten in zwei Reihen, jede mit einer Zeichenfläche und zwei Textzeilen; eine Karte in der ersten Reihe ist orange

Von der Diagnose zum gemessenen Ergebnis

  • Zwanzig schwarze Balken als Treppe bis 30 s unter session_start() und dieselben zwanzig Balken in Orange nebeneinander bis 1,5 s unter + session_write_close()

    PHP 8.2 und das 30-Sekunden-Limit: Seiten warteten auf die Sitzungssperre

    Internetportale · 4 Stunden

    Nach dem Update von PHP 7.4 auf PHP 8.2 lud dieselbe Seite einmal normal und brach einmal nach 30 Sekunden ab. Wir haben beide Versionen nebeneinander nachgestellt und die Ursache gefunden: Rund 20 parallele AJAX-Aufrufe eines Nutzers warteten nacheinander auf die Sperre der Sitzungsdatei. Behoben mit einer Zeile pro Skript, ohne die Anwendung umzuschreiben.

  • Drei Bahnen aus einem Punktfeld enden an einer orangen Mauer mit der Beschriftung WAF; eine Bahn von einem Laptop führt durch die Lücke zu einer Ladenfront

    Ein Shop, überflutet von Bots, die wie Kunden aussahen

    Ein WooCommerce-Shop mit 52 Produkten lud langsam oder gar nicht. Die Ursache war ein bezahltes Netz von Bots: Zehntausende Anfragen pro Stunde, jede von einer anderen Privatadresse, und jeder Bot für sich vorbildlich. Unsere Ingenieure haben den Verkehr am Rand des Netzes gestoppt. Als die Bots einen Monat später die Taktik wechselten, nahm die zweite Regel die Last in zwei Minuten weg.

  • Ein großer leerer Rahmen mit der Beschriftung RAM 40 GB, darin ein kleiner Rahmen mit der Beschriftung JVM 1 GB voller Blöcke, orange Blöcke laufen über seine Oberkante

    ColdFusion unter Last: Diagnose und Behebung des Fehlers JVM heap space

    Eine Adobe-ColdFusion-Anwendung lief bei wenig Verkehr ohne Klagen und lieferte in Spitzenzeiten Fehler und wurde langsam. Wir haben das Problem auf einer echten Datenbank reproduziert, den genauen Punkt gemessen, an dem der JVM-Heap ausgeht, und die Speicherkonfiguration behoben, mit demselben Lasttest vorher und nachher als Beleg.

  • Ein Browser, ein Kasten mit der Beschriftung Apache und drei Bahnen zu PHP, PHP und CFML; die CFML-Bahn und ihr Kasten sind orange

    ColdFusion 2025 im Produktivbetrieb hinter Apache: fünf nicht offensichtliche Fallen

    Wir haben eine Produktivinstallation von Adobe ColdFusion 2025 auf Debian 12 vorbereitet, hinter einem Apache 2.4, der schon mehrere andere Sites bedient. Die Installation selbst dauert 34 Sekunden. Die Aufmerksamkeit ging in den Konnektor und in Details, die leicht übersehen werden: ein Fehler 503 durch IPv6, Zuordnungen in jedem virtuellen Host und ein Profil, das still einen Debugger hinzufügt.

  • Vier Briefumschläge passieren die Tore SPF, DKIM und DMARC, jeweils orange abgehakt, auf dem Weg in den Posteingang

    E-Mail-Zustellbarkeit für vier Firmendomains

    Ein Mailserver für vier Firmendomains signierte nichts, veröffentlichte keine DMARC-Richtlinie und wurde von Microsoft abgewiesen. Unsere Ingenieure haben ihn geprüft, die Änderung an einer Domain erprobt und in Gruppen ausgerollt. Das Ergebnis: Alle drei Prüfungen bestehen bei Gmail, die Microsoft-Sperre ist aufgehoben, und die Nutzer haben nichts bemerkt.

  • Eine Punkteskala mit gestrichelter Schwelle: Der Phishing-Umschlag wandert in einem orangen Bogen über die Schwelle

    Ein Spamfilter, der lief, aber nicht schützte

    Dienste liefen, die Konfiguration war gültig, im Systemstatus stand kein Fehler. Trotzdem landete Phishing im Posteingang, während Newsletter von Partnern im Spam lagen. Unsere Ingenieure haben gemessen, welche Erkennungsmechanismen tatsächlich ansprangen, die Ursachen behoben und drei Monate später eine Regression gefunden und behoben, die sich nur stundenweise zeigte.

  • Eine Tabelle aus Zeilen mit einem langen Pfeil über alle, beschriftet ALL, und einem orangen Pfeil von einer Indexkarte zu einer einzigen Zeile, beschriftet ref

    SQL-Indizes in einer Shop-Datenbank: von Full Scans zu Mikrosekunden

    Eine Shop-Datenbank ohne Indizes funktionierte, solange die Tabellen klein waren. Bei 500 000 Bestellungen und 1,75 Millionen Positionen lief jeder Filter und jeder Join auf einen Full Scan hinaus. Wir haben genau gemessen, was die fehlenden Indizes kosten, die richtigen angelegt und die Fallen dokumentiert, durch die ein Index nutzlos bleibt, obwohl er existiert.

  • Ein Telefon mit QR-Code, eine in Stücke geteilte Datei, drei parallele Ströme zu einem Server mit Festplatte und ein Galerieraster

    Eine Foto-Upload-App für Hochzeitsgäste

    Hochzeitsgäste scannen einen QR-Code, öffnen eine geheime Adresse und laden Fotos und Videos direkt vom Telefon hoch: keine App, kein Konto, keine Anmeldung. Dateien bis 5 GB landen auf der Festplatte des Kunden, und das Paar sieht zu, wie sich die Galerie während der Feier füllt. Ein Abend, keine zweite Chance, und Telefone von vor sechs Jahren.

Wie diese Karten zu lesen sind

Jede Karte beginnt mit einer allgemeinen Beschreibung des Kunden und des Systems, denn volles Vertrauen geht vor Marketing. Was die Karten zeigen, sind die Zahlen: aus Logs, aus den Messungen, die wir vor und nach einer Änderung gemacht haben, und wo ein Problem in unserer eigenen Umgebung reproduziert wurde, sagt die Karte das.

Jede Karte hat immer denselben Aufbau: die Ausgangslage, die Lösung, die gemessenen Ergebnisse, das Vorgehen Schritt für Schritt, die Herausforderungen, die wir gelöst haben, und was wir daraus mitnehmen. Der Abschnitt über die Herausforderungen ist der, den man zuerst lesen sollte: Er nennt die Dinge, die nach einer Lösung aussahen und keine waren.

Wenn Ihre Situation einer dieser Karten ähnelt, führen die verwandten Ausgangslagen am Ende jeder Karte zum ersten Schritt. Die Systemtypen, die unsere Ingenieure über diese Projekte hinaus betreut haben, stehen auf der Seite Erfahrung; der Verlauf eines Projekts, vom Erstgespräch bis zum schriftlichen Ergebnis, auf So arbeiten wir.

Eine Projektkarte: eine gestrichelte Linie, wo der Kundenname stünde, eine Zeichenfläche mit Briefumschlag und Pfeil und drei Zeilen aus Beschriftung und Wert, der letzte Wert orange

Fragen zu unseren Projekten

Welche Projekte haben Sie schon umgesetzt?

Unsere Ingenieure haben an diesen Systemtypen gearbeitet:

  • Plattformen zur Kreditabwicklung mit mehreren Prozessen und Vertriebskanälen, auch direkt für Banken
  • Plattformen für die Hypothekenfinanzierung
  • Leasing-Plattformen
  • Systeme zur Erzeugung von Dokumenten und Verträgen
  • Videoportale mit Streaming und automatischer Konvertierung der Videos
  • Nachrichten- und Kleinanzeigenportale mit hohem Besucheraufkommen
  • Webservices von Unternehmen, die für die öffentliche Hand arbeiten, auch für Kultureinrichtungen

Ausgewählte Projekte beschreiben wir im Detail auf der Projektseite, darunter ColdFusion im Produktivbetrieb und unter Last, E-Mail-Zustellbarkeit, ein von Bots überfluteter Shop und SQL-Indizes in einer Shop-Datenbank.

Wann können Sie starten?

Eine erste Antwort erhalten Sie innerhalb eines Werktags. Wann wir mit der Arbeit beginnen, hängt von der aktuellen Auslastung und vom Umfang ab. Das sagen wir Ihnen im Erstgespräch verbindlich. Ist es dringend, beginnt die 48-Stunden-Einschätzung, sobald wir Zugriff auf das System haben.

Was passiert, wenn bei Ihnen jemand ausfällt?

Eine Vertretung stellen wir auf Wunsch. Auch die Dokumentation erstellen wir auf Wunsch, und das Repository liegt in der Regel bei Ihnen, sodass der Code in Ihrer Hand bleibt. Wie wir zusammenarbeiten, beschreibt die Seite So arbeiten wir.

In 20 Minuten klären wir, welcher erste Schritt zu Ihrem System passt

Sie schildern Ziel und Stand, wir sagen offen, ob und wie wir helfen können. Antwort innerhalb eines Werktags, unverbindlich.

Telefon (Deutsch, Polnisch, Englisch) +48 501 250 220
E-Mail E-Mail

Erreichbar: Montag bis Freitag, 9:00 bis 17:00 Uhr (MEZ); Support und Notfälle rund um die Uhr (24/7)