server.go 974 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package server
  2. import (
  3. "github.com/langgenius/dify-plugin-daemon/internal/cluster"
  4. "github.com/langgenius/dify-plugin-daemon/internal/core/aws"
  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 aws
  16. if config.Platform == app.PLATFORM_AWS_LAMBDA {
  17. aws.InitLambda(config)
  18. }
  19. // init db
  20. db.Init(config)
  21. // init process lifetime
  22. process.Init(config)
  23. // init plugin daemon
  24. plugin_manager.InitGlobalPluginManager(a.cluster, config)
  25. // launch cluster
  26. a.cluster.Launch()
  27. // start http server
  28. a.server(config)
  29. // block
  30. select {}
  31. }