月子会所网站源码,深圳网站设计有哪些,企业歌曲制作,地方门户网站用户使用场景
我们使用docker作为服务的虚拟化工具#xff0c;服务都部署在docker里我们使用docker-compose管理所有docker服务的配置文件针对某些服务#xff0c;我们要限制这个docker占用的资源数量#xff0c;例如#xff0c;cpu和内存在进行配置时#xff0c;网上搜了一些…使用场景
我们使用docker作为服务的虚拟化工具服务都部署在docker里我们使用docker-compose管理所有docker服务的配置文件针对某些服务我们要限制这个docker占用的资源数量例如cpu和内存在进行配置时网上搜了一些文章进行了设置导致了本次错误由于是公司测试环境主要做一些功能测试不用于性能测试故只设置了很小的资源针对clickhouse数据库的docker配置如下 clickhouse:image: yandex/clickhouse-servercontainer_name: clickhouseports:- 8123:8123- 9000:9000ulimits:nofile:soft: 262144hard: 262144deploy:resources:limits:cpus: 0.6memory: 2Gvolumes:- ./volumes/ck/data:/var/lib/clickhouse- ./volumes/ck/log/:/var/log/clickhouse-server/- ./volumes/ck/etc/:/etc/clickhouse-server/- /etc/localtime:/etc/localtimerestart: on-failure问题现象
之前是把clickhouse部署在服务器上使用了近一年没什么问题前段时间为了统一部署环境将clickhouse使用docker部署在写入和查询并发量不大的情况下发现clickhouse查询较慢查看了query_log发现10万条数据就用了600ms很不应该
解决处理
和同事交流后发现cpus参数设置不合理我之前看着网上的一些文章和翻译以为这个数字要取小数是一个比值是 “服务器cpu总数量 x 比值”为该docker容器使用的cpu数量在同事建议下去看了官方英文文档果然我理解错了这个就是简单的指 cpu数量官方文档地址https://docs.docker.com/compose/compose-file/deploy/#cpus cpus configures a limit or reservation for how much of the available CPU resources, as number of cores, a container can use. 核心是这句number of cores很明确就是数量还有一点需要说明的是clickhouse的内存使用限制要大于16G否则也可能存在性能瓶颈和各种意外的报错仍然贴一篇官方文档https://clickhouse.com/docs/en/operations/tips#ram danger If your system has less than 16 GB of RAM, you may experience various memory exceptions because default settings do not match this amount of memory. The recommended amount of RAM is 32 GB or more. You can use ClickHouse in a system with a small amount of RAM, even with 2 GB of RAM, but it requires additional tuning and can ingest at a low rate. 优化后配置为 deploy:resources:limits:cpus: 8.0memory: 16G查询飞快问题解决了当然针对生产环境这个配置就不够用了。要针对自己的业务量进行一个预估申请足够的cpu和内存配置的服务器