最近在疯学mysql,感受到了其变量配置的灵活性,隔离性。不由想起Linux中的多用户的各自配置、会话级配置、运行时配置、永久配置。
在mysql中变量可以配置:
- 会话级(session)
- 全局级 (global)
- 永久级 (forever)
优先级:session > global > forever
在linux中参数可以配置:
- 会话级
- 用户级
- 全局级
- 永久级
不由感觉在某某地方有共同点。软件配置设计上的灵活性,隔离性做的非常好。
这种设计思想是不是在平时我们开发的软件配置上是不是也可以做以运用。 对于软件服务产品中配置,可以做到优先级,隔离。会话,全局,永久等等。
如:
elastic-job的job-parameter可以由console上配置,也可以为各个运行的job单独覆盖配置;
spring boot的多环境,可以在配置文件中配置,也可以在启动时用参数指定临时配置;
dubbo启动时,指定参数配置;
这样实例太多太多。多用户,多环境。