Angular, AWS und Symfony Freelancer

  • MySQL Update Deadlock InnoDB

    Ein kniffeliges Problem ist letztens aufgetreten bei einer partitionierten MySQL Datenbank. Es kam immer wieder bei hoher Last zu Deadlock Meldungen seitens MySQL. Immer waren 2 Queries davon betroffen, die dieselbe Form hatten: –Query1: UPDATE myTable SET createdOn=’2016-05-23 16:08:29′, foo=’y‘ WHERE id=1 –Query2: UPDATE myTable SET createdOn=’2016-05-23 16:08:29′, foo=’x‘ WHERE id=2 Im MySQL Error Log war…

  • Redis Replikation Tipps

    Beim Betrieb von Redis im Master/Slave Modus muss darauf geachtet werden, dass: 1. Master und Slave sind nicht immer auf demselben Stand Redis uses asynchronous replication. Starting with Redis 2.8, however, slaves will periodically acknowledge the amount of data processed from the replication stream. D.h. bestimmte Daten müssen vom Master abgefragt werden, wie z.B. Session…

  • PHPUnit @Depends Variablen im @Dataprovider verwenden

    Leider ist es zur Zeit nicht möglich für einen PHPUnit Test sowohl einen anderen Test als Vorraussetzung für einen Test zu markieren, damit die Ausführung des Tests im Fehlerfall nicht stattfindet, und gleichzeitig einen Dataprovider für den Test zu verwenden der auf das Ergebnis einen vorherigen Tests zugreift. Das liegt daran, dass Dataprovider vor dem…

  • Redis Scripte mit Lua programmieren

    Zum Einfügen eines Datensatzes in eine Datenbank in Redis mittels Script kann man folgendes Script in einer Datei speichern und ausführen: Script File „redis_insert.lua“:  redis.call(„select“, 1)  redis.call(’set‘, ‚myKey‘, ‚myValue‘) Auf der Console kann dann mittels des folgenden Befehls das Script ausgeführt werden und die Daten in den Redis Server geschrieben werden: redis-cli –eval redis_insert.lua

  • PHP7 Soap Server Bug Ticket

    I have opened a ticket for the problems caused by the PHP internal Soap Server handling responses with references in class member variables. The Test Script (works with PHP 5.3, crashes in PHP7)

  • Wozu MS Excel Markos digital signieren lassen?

    Man kann Makros nach der Programmierung digital signieren lassen von einer CA-Authority, z.B. thawte. Damit lässt sich der folgende Dialog beim Öffnen der Excel Mappe unter Umständen verhindern: Diese Sicherheitsabfrage hat den Zweck den PC vor Angriffen mit bösartigen Excel und Word Dokumenten zu schützen, die gern im Anhang von Spam Mails verschickt werden. Vorteile…

  • VBA Excel Key-Value Store Cache mit Dictionary

    Um die Performance von langlaufenden Berechnungen mit MS Excel zu erhöhen, habe ich für eine immer wiederkehrende Berechnung einen rudimentären Key-Value Cache eingebaut mit Hilfe eines Dictionary Objektes. Eine Dictionary Objekt in VBA ist ein Object aus der Microsoft Scripting Library, die dafür in das Projekt eingebunden muss über: Visual Basic Editor in Excel öffnen…

  • PHPUnit mit Codeigniter 3 installieren

    Um PHPUnit mit Codeigniter 3 zu verwenden benötigt man die Erweiterung ci-phpunit-test die mindestens PHP Version 5.4 voraussetzt. Die neuste Version von PHPunit benötigt PHP 5.6, es sollte also eine möglichst aktuelle PHP Version installiert sein. Als kann PHPUnit installiert werden. Dann kann man den application/test Ordner aus dem downloadbaren .zip Archiv von ci-phpunit-test in…

  • Das Soap Protokoll, XML und PHP – eine Einführung

    Das Soap (Simple Object Access Protocol) ist eine Netzwerkprotokoll, mit dessen Hilfe Daten zwischen Systemen ausgetauscht und Remote Procedure Calls durchgeführt werden können (Wikipedia). Meistens werden Nachrichten im XML Format mittels eines HTTP Post-Request im Body zwischen einem Client und einem Server gesendet. Für das Nachrichtenformat wird kein Format vorgegeben, sondern nur ein Framework zur…

  • VBA Excel: Mouse Pointer über eine Zelle als aktiv markieren

    Leider gibt es keine Möglichkeit über VBA sich an einen Event zu registrieren, wenn der Mouse Pointer über einer Zelle ist. Die einzige Möglichkeit dies zu umgehen, ist ein Makro auf ein Bild/Button in einer Zelle zu legen, was dann ausgeführt wird. Wenn einer Zelle ein Makro zugeordnet ist, wird der Mouse Pointer automatisch aktiv…