@@ -27,13 +27,10 @@ class ApiConfig(BaseModel):
|
||||
tasks: List[TaskConfig] = []
|
||||
|
||||
|
||||
class RabbitMQConfig(BaseModel):
|
||||
host: str = "localhost"
|
||||
port: int = 5672
|
||||
username: str = "guest"
|
||||
password: str = "guest"
|
||||
queue: str = "job_data"
|
||||
message_ttl: int = 604800000 # 7天(毫秒)
|
||||
class KafkaConfig(BaseModel):
|
||||
bootstrap_servers: str = "localhost:9092"
|
||||
topic: str = "job_data"
|
||||
consumer_group: str = "job_consumer_group"
|
||||
|
||||
|
||||
class CrawlerConfig(BaseModel):
|
||||
@@ -52,7 +49,7 @@ class Settings(BaseModel):
|
||||
"""应用配置"""
|
||||
app: AppConfig = AppConfig()
|
||||
api: ApiConfig = ApiConfig()
|
||||
rabbitmq: RabbitMQConfig = RabbitMQConfig()
|
||||
kafka: KafkaConfig = KafkaConfig()
|
||||
crawler: CrawlerConfig = CrawlerConfig()
|
||||
database: DatabaseConfig = DatabaseConfig()
|
||||
|
||||
@@ -74,7 +71,7 @@ class Settings(BaseModel):
|
||||
return cls(
|
||||
app=AppConfig(**data.get('app', {})),
|
||||
api=api_config,
|
||||
rabbitmq=RabbitMQConfig(**data.get('rabbitmq', {})),
|
||||
kafka=KafkaConfig(**data.get('kafka', {})),
|
||||
crawler=CrawlerConfig(**data.get('crawler', {})),
|
||||
database=DatabaseConfig(**data.get('database', {}))
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user