userver: samples/websocket_service/static_config.yaml
⚠️ This is the documentation for an old userver version. Click here to switch to the latest version.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
samples/websocket_service/static_config.yaml
components_manager:
    coro_pool:
        initial_size: 500             # Preallocate 500 coroutines at startup.
        max_size: 1000                # Do not keep more than 1000 preallocated coroutines.
 
    task_processors:                  # Task processor is an executor for coroutine tasks
 
        main-task-processor:          # Make a task processor for CPU-bound couroutine tasks.
            worker_threads: 4         # Process tasks in 4 threads.
            thread_name: main-worker  # OS will show the threads of this task processor with 'main-worker' prefix.
 
        fs-task-processor:            # Make a separate task processor for filesystem bound tasks.
            thread_name: fs-worker
            worker_threads: 4
 
    default_task_processor: main-task-processor
 
    components:                       # Configuring components that were registered via component_list
        server:
            listener:                 # configuring the main listening socket...
                port: 8080            # ...to listen on this port and...
                task_processor: main-task-processor    # ...process incoming requests on this task processor.
        logging:
            fs-task-processor: fs-task-processor
            loggers:
                default:
                    file_path: '@stderr'
                    level: debug
                    overflow_behavior: discard  # Drop logs if the system is too busy to write them down.
 
        tracer:                       # Component that helps to trace execution times and requests in logs.
            service-name: websocket-server   # "You know. You all know exactly who I am. Say my name. " (c)
 
        dynamic-config:               # Dynamic config storage options, do nothing
            fs-cache-path: ''
        dynamic-config-fallbacks:     # Load options from file and push them into the dynamic config storage.
            fallback-path: dynamic_config_fallback.json
 
        websocket-handler:            # Finally! Websocket handler.
            path: /chat               # Registering handlers '/*' find files.
            method: GET               # Handle only GET requests.
            task_processor: main-task-processor  # Run it on CPU bound task processor
            max-remote-payload: 100000
            fragment-size: 100000