Skip to content

Kévin Dunglas

Founder of Les-Tilleuls.coop (worker-owned cooperative). Creator of API Platform, Mercure.rocks, Vulcain.rocks and of some Symfony components.

Menu
  • Talks
  • Resume
  • Sponsor me
  • Contact
Menu

Category: Go

Goroutines, threads, and thread IDs

Posted on May 31, 2022May 31, 2022 by Kévin Dunglas

If you attended AFUP Day 2022, you might know that I am currently working on a PHP module for web servers written in Go. While testing my upcoming library, I encountered strange memory access issues related to the threads created by the Go runtime (you know, cgo…). By default, the Go scheduler runs many goroutines…

Read more

New in Caddy 2.5: Redact Sensitive Data from Your Logs

Posted on April 29, 2022April 29, 2022 by Kévin Dunglas

Caddy is the rising star of web servers. It is fast, easy to configure, fully featured (automatic TLS certificate generation and renewal, HTTP/3, cloud-native, config hot reloading…), and secure (it is written in Go, not in C). Thanks to its unmatched extensibility that makes it a top-notch app platform, Caddy has a thriving ecosystem! To…

Read more

Preventing CORS Preflight Requests Using Content Negotiation

Posted on January 3, 2022January 4, 2022 by Kévin Dunglas

In modern web applications, it’s a common pattern to serve the web API and the frontend app from different subdomains: https://api.example.com: your web API, usually serving JSON documents https://example.com: your web application, usually built in JavaScript, generating HTML documents from the raw JSON data retrieved from the API This was the pattern implemented by API…

Read more

Webperf: PHP after Server Push

Posted on May 28, 2021July 6, 2021 by Kévin Dunglas

Here are the slide deck from the talk I gave this morning for AFUP Day 2021! And here is the video (in French): Google recently announced that it will remove Server Push support from its flagship browser. Server Push is a technology that is part of the HTTP/2 and HTTP/3 standards. Server Push is designed…

Read more

Using the “103 Early Hints” Status Code in Go Applications

Posted on February 17, 2021February 17, 2021 by Kévin Dunglas

103 is a new experimental HTTP status code defined in RFC 8297. It’s an informational status that can be sent by a server before the main HTTP response. Used in conjunction with the Link HTTP header and the preload relation, 103 gives the client the opportunity to fetch resources (assets, images, related API documents…) related…

Read more

The Mercure.rocks Hub is now based on Caddy Web Server

Posted on November 28, 2020January 19, 2021 by Kévin Dunglas

I’m very happy to announce the immediate availability of the Mercure.rocks Hub version 0.11! The Mercure.rocks Hub is a free software implementing the Mercure specification, an open protocol for fast, reliable and battery-efficient in-browser real-time communications. Version 0.11 is a major milestone for the project! As you may know, the Mercure.rocks Hub is written in…

Read more

A Structured HTTP Fields Parser and Serializer for the Go Programming Language

Posted on August 26, 2020August 26, 2020 by Kévin Dunglas

“Structured Field Values for HTTP” is an upcoming RFC defining a set of well-defined data types to use in HTTP headers and trailers. This new format will improve the interoperability and the safety of HTTP by allowing to create generic parsers and serializers suitable for all HTTP headers (currently, most headers need a custom parser)…

Read more

Say Hello to Mercure 0.10!

Posted on June 16, 2020June 16, 2020 by Kévin Dunglas

I’m very excited to announce the immediate availability of the version 6 of the Mercure Internet Draft as well as of the version 0.10 of the reference implementation! Mercure is a real-time protocol built on top of Server-sent Events and leveraging HTTP/2+. It allows to push messages to JavaScript webapps, mobile apps or IoT devices…

Read more

Vulcain: HTTP/2 Server Push
 and the rise of client-driven REST APIs

Posted on November 22, 2019September 26, 2021 by Kévin Dunglas

Watch a longer video (English)!Watch a French version. Over the years, several formats have been created to fix performance bottlenecks of web APIs: the n+1 problem, over fetching, under fetching… The current hipster solution for these problems is to replace the conceptual model of HTTP (resource-oriented), by the one of GraphQL. It’s a smart network…

Read more

Mercure – Real-Time for PHP Made Easy (Forum PHP)

Posted on October 25, 2019September 26, 2021 by Kévin Dunglas

Yesterday at Forum PHP 2019 I presented how easy it is to create real-time apps using PHP (among other languages) and the Mercure protocol. I also introduced the shiny and new Mercure website (designed by Laury S.)! A special thanks to Eric Comellas who jumped on stage to explain how iGraal uses Mercure on a…

Read more
  • 1
  • 2
  • Next

Follow me on Twitter

My Tweets

Subscribe to this blog

Recent Posts

  • Goroutines, threads, and thread IDs
  • New in Caddy 2.5: Redact Sensitive Data from Your Logs
  • Building Decentralized Web Apps with Solid and PHP
  • JSON Columns and Doctrine DBAL 3 Upgrade
  • Preventing CORS Preflight Requests Using Content Negotiation

Top Posts & Pages

  • Using the "103 Early Hints" Status Code in Go Applications
  • JSON Columns and Doctrine DBAL 3 Upgrade
  • Generate a Symfony password hash from the command line
  • Webperf: PHP after Server Push
  • Preventing CORS Preflight Requests Using Content Negotiation
  • Vulcain: HTTP/2 Server Push
 and the rise of client-driven REST APIs
  • Goroutines, threads, and thread IDs
  • PHP 7: Introducing a domain name validator and making the URL validator stricter
  • New in Caddy 2.5: Redact Sensitive Data from Your Logs
  • Building Decentralized Web Apps with Solid and PHP

Persistence in PHP with the Doctrine ORM

Persistence in PHP with the Doctrine ORM

Tags

Apache API API Platform Buzz Caddy Docker Doctrine Go Google HTTP/2 Hydra hypermedia Hébergement Javascript JSON-LD Kubernetes La Coopérative des Tilleuls Les-Tilleuls.coop Lille Linux Mac Mercure Messagerie Instantanée MySQL Open Source PHP Punk Rock Python React REST Rock'n'Roll RSS Schema.org Security SEO SEO Symfony Symfony Live Sécurité Ubuntu Vue.js Web 2.0 Wordpress XHTML XML

Archives

Categories

  • DevOps (24)
  • Mercure (3)
  • Opinions (91)
  • Programming (179)
    • Android (5)
    • Go (12)
    • JavaScript (43)
    • PHP (137)
      • API Platform (60)
      • Symfony (89)
    • Python (14)
      • Django (5)
  • Security (15)
  • SEO (24)
  • Talks (37)
  • Ubuntu (68)
  • Wordpress (6)

Blogoliste

  • API Platform
  • Les-Tilleuls.coop
  • Mercure.rocks
  • Vulcain.rocks
© 2022 Kévin Dunglas | Powered by Minimalist Blog WordPress Theme