-
The big unknown is your task definition: what does user-defined logic look like? If you're expecting go code, that's gonna need some cleverness because of the compiled nature of it. There's a node runtime implemented in go if you want to provide sandboxed javascript (check the source of k6.io, it's the main one I know that uses it). If you want to provide building blocks and let them compose them, starlark might be a good choice.
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
-
Watermill is a good pubsub abstraction. You can start with native go channels and grow into a cloud pubsub or Kafka/Pulsar if you need to.
-
Goja https://github.com/dop251/goja
-
K6' usage - pretty friggin robust - is here https://github.com/grafana/k6/tree/master/js
-
In the Django world, you'd probably rely on Celery to do this for you. You're probably looking for something similar that works with Go. https://github.com/celery/celery
-
Asynq looks promising. Never used it myself. https://github.com/hibiken/asynq
-
I created a background processor called Neoq (https://github.com/acaloiaro/neoq) that is likely to interest you.
-
Sevalla
Deploy and host your apps and databases, now with $50 credit! Sevalla is the PaaS you have been looking for! Advanced deployment pipelines, usage-based pricing, preview apps, templates, human support by developers, and much more!
-
As oblivion-2005 said, the docs are pretty good! I got started with the money transfer sample - https://github.com/temporalio/money-transfer-project-template-go and experimented from there. What took me a little while to wrap my head around was the deterministic bit, especially using workflow.Now(). I’d recommend using temporalite for testing - it makes the dev super easy. Especially with the “—ephemeral” flag.