server.go 950 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package server
  2. import (
  3. "github.com/langgenius/dify-plugin-daemon/internal/cluster"
  4. "github.com/langgenius/dify-plugin-daemon/internal/core/persistence"
  5. "github.com/langgenius/dify-plugin-daemon/internal/core/plugin_manager"
  6. "github.com/langgenius/dify-plugin-daemon/internal/db"
  7. "github.com/langgenius/dify-plugin-daemon/internal/process"
  8. "github.com/langgenius/dify-plugin-daemon/internal/types/app"
  9. "github.com/langgenius/dify-plugin-daemon/internal/utils/routine"
  10. )
  11. func (a *App) Run(config *app.Config) {
  12. a.cluster = cluster.NewCluster(config)
  13. // init routine pool
  14. routine.InitPool(config.RoutinePoolSize)
  15. // init db
  16. db.Init(config)
  17. // init process lifetime
  18. process.Init(config)
  19. // init plugin daemon
  20. plugin_manager.InitGlobalPluginManager(a.cluster, config)
  21. // init persistence
  22. persistence.InitPersistence(config)
  23. // launch cluster
  24. a.cluster.Launch()
  25. // start http server
  26. a.server(config)
  27. // block
  28. select {}
  29. }