dokku / plugn

Hook system that lets users extend your application with plugins
MIT License
82 stars 22 forks source link

Increase speed of performing plugn trigger #86

Closed josegonzalez closed 2 years ago

josegonzalez commented 2 years ago

The trigger command was importing plugin config for every plugin within it's loop. For the Dokku codebase, this caused a 10x decrease in performance due to the number of plugins, making it prohibitively expensive to perform a trigger.

While we can probably still refactor further to drop the command namespacing - which takes up half the entire runtime with a trigger implemented twice - this still provides a significant boost (4x as fast overall for the user-auth trigger).

Additionally, we now ignore SIGURG, which allows using a Golang newer than 1.13. See https://github.com/golang/go/issues/37942 for details.

Finally, I officially switched to go-bindata/go-bindata. The source did not reflect what was previously used to wrap up the files.

josegonzalez commented 2 years ago

This has been confirmed working on arm servers, so I'm going to merge it. Huzzah!