Docker und Dokku: das PaaS-Traumpaar?

 Das Deployment komplexer Webapplikationen ist eine Wissenschaft für sich. „Platform as a service“ (PaaS) wie Heroku oder Cloudcontrol haben den Markt revolutioniert, indem sie auch DevOps-unerfahrenen Entwicklern die Möglichkeit geben, ihre Anwendung mittels eines einfachen „git push“-Befehls zu deployen. Dokku ist eine Sammlung von Shell-Skripten, die es erlaubt, sich sein eigenes PaaS zu implementieren. Das Projekt ist nicht sehr komplex und darüber hinaus durch eine simple Plug-in-Architektur erweiterbar. In diesem Artikel wird demonstriert, wie man Dokku auf einem Server installiert und exemplarisch eine Anwendung dort deployt.

Continuous Deployment: Goodbye Wartungs-Downtime?

 Wartungszeiten sind ein Problem bei der Aktualisierung von Websites. Sie sind zwar notwendig, um größere Updates einzuspielen, aber dabei doch nicht so richtig populär. Immerhin kostet es Geld, wenn eine Website nicht erreichbar ist und vor allem: Es stört die Kundschaft. Eine Lösung für dieses Problem könnte Continuous Deployment sein. Mit dieser Methode wird auf große Updates verzichtet und stattdessen jede kleine Änderung am Produkt unmittelbar vorgenommen, im laufenden Betrieb. Ist das aber immer so sinnvoll?

Coder, Programmierer, Entwickler: Wo liegt der Unterschied?

 Wie schon in der Tragödie von Shakespeare werden auch heute noch mit unterschiedlichen Bezeichnungen bestimmte soziale Rollen und berufliche Stellungen verbunden. Die Branche der Softwareentwicklung ist hier keine Ausnahme. Wie andere Geschäftszweige zeichnet sie sich durch eine Fülle von spezifischen Berufsbezeichnungen aus.

Verteilte Systeme – in synchron!

 Verteilte Systeme sind heute keine Seltenheit mehr. Aber wie hält man hochverteilte Systeme eigentlich synchron? Wie ausreichend ist ausreichend aktuell? Und sind Microservices wirklich der goldene Weg in der Web-Application-Architektur?

Docker: zentralisiertes Logging mit dem ELK-Stack

 Logausgaben sind immer noch eine wichtige Quelle für Informationen über Anwendungen. Durch Docker entstehen sehr viele Container, die alle Loginformationen schreiben. Dabei geht schnell der Überblick verloren, wenn die Daten in unterschiedlichen Dateien landen. Genau dafür gibt es aber Werkzeuge, die helfen können – beispielsweise den ELK-Stack mit Elasticsearch zum Speichern der Daten, Logstash für die Verarbeitung der Logs und Kibana für die interaktive Analyse.

Wie Docker und Consul Entwicklungsprozesse revolutionieren

 Microservices sind Anwendungsbausteine, die jeweils für sich genommen funktionieren und entsprechend einzeln angesprochen und deployed werden können. Um die Vielzahl der Microservices orchestrieren zu können, erfreut sich das Service-Discovery-Tool „Consul“ wachsender Beliebtheit.

entwickler.kiosk – Redesign und Sommer-Special

 Den entwickler.kiosk, unser digitaler Premium-Leseservice ist jetzt knapp ein halbes Jahr alt. Mit den wertvollen Erfahrungen aus den ersten Monaten und Ihrem Feedback haben wir in den vergangenen Wochen nicht nur entwickler.de komplett überarbeitet – auch das Design des entwickler.kiosks erstrahlt jetzt in neuem Glanz.

Google stampft Chrome Dev Editor ein

 Eigentlich hatte Google geplant, mit Dart eine bessere Sprache für die Entwicklung für’s Web zur Verfügung zu stellen – inklusive besserer Tools als die bisher vorhandenen im JavaScript-Ecosystem. Trotzdem musste Dart in der Vergangenheit oft gegenüber der Konkurrenz – allen voran TypeScript – zurückstecken.

Testmanagementlösung: Der Teufel liegt im Detail

 Seit jeher gilt: Hohe Softwarequalität erfordert ein hochwertiges Testmanagement. Doch weil Entwicklungsprojekte in puncto Umfang und Komplexität heutzutage immer anspruchsvoller werden, muss auch das Testmanagement neuen Anforderungen genügen. Dieser Artikel ist ein Anwendungsbericht über den Einsatz einer durchgängigen Werkzeugkette zur optimalen Unterstützung des Tests und des anforderungsbasierten formalen Nachweises der Funktionalität eines komplexen Systems im Rahmen eines Luftfahrtprojekts.

Trace-basiertes Debugging von Multi-Core-Systemen

 Multi-Core-Prozessoren bieten zwar eine hohe Rechenleistung; allerdings erhöhen sie das Potenzial für Fehler bei der Softwareentwicklung. Viele dieser Fehler sind nur schwer reproduzierbar und gängige Debugging-Methoden sind bei ihrer Behebung unwirksam. Tracing, d. h. die Aufzeichnung des Programmverhaltens, kann hier Abhilfe schaffen. Im High-Performance-Computing ist es ebenso erfolgreich wie in eingebetteten Systemen.

X
- Gib Deinen Standort ein -
- or -