请求中生成的单例, 挂载到容器的动态属性上.
持有”进程级容器”, 当绑定不存在时, 到”进程级容器” 上查找之....所以容器要运行在 swoole 等引擎上, 必须做到请求与请求相隔离....中, 类似 laravel 的 serviceProvider 分两处注册.
// 在worker中注册的服务, 多个请求共享
'processProviders' => [
// 基础组件加载...如果某个服务调用 在自己内未注册, 就会到父容器里查找. 父容器也是递归容器的话, 就会递归式查找.
这样, 进程级共享的单例, 就可以注册到 “进程级容器” ....所以直接使用了 Laravel 的 Application 做 “进程级容器”, 确保自己请求中用到的核心业务逻辑都不注册到 laravel中, 避免污染.