首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >天鹅座对空间的使用有什么问题吗?

天鹅座对空间的使用有什么问题吗?
EN

Stack Overflow用户
提问于 2020-08-17 16:50:25
回答 1查看 84关注 0票数 2

我正在使用一些FIWARE组件(Orion2.4.0-bext和Cygnus2.3.0)。此外,我使用mongoDB (版本3.6)作为当前上下文信息,使用MySQL (版本5.7)保存历史更改使用Cygnus。所有组件都是被篡改的,每个组件都在自己的容器上。

在我的当前解决方案中,我收到了大量消息(每秒100到500条),这些消息存储在mongoDB (通过Orion)和MySQL (通过Cygnus)中。我发现的问题是

  1. Mongo和天鹅座正在使用大量的CPU能力,即使数据量也不是很大。
  2. Cygnus正在疯狂地增加容器使用的磁盘数量。

Cygnus已被配置为在MySQL中存储每个属性更改1行。对于MySQL中映射的配置,这些是Cygnus的对接-组合环境变量:

代码语言:javascript
复制
    environment:
      - ...
      - "CYGNUS_LOG_LEVEL=DEBUG" #
      - "CYGNUS_MYSQL_DATA_MODEL=dm-by-entity-type"
      - "CYGNUS_MYSQL_ATTR_NATIVE_TYPES=true"
      - "CYGNUS_MYSQL_ATTR_PERSISTENCE=column"

到稀释点2),我将向您展示使用Cygnus之后和运行一段时间的空间。

当我检查使用的磁盘时:

代码语言:javascript
复制
[root@maaster-docker-test docker]# du -h --max-depth=1
代码语言:javascript
复制
4.0K    ./trust
20K     ./builder
11M     ./image
12G     ./overlay2
4.0K    ./runtimes
72K     ./buildkit
100K    ./network
4.0K    ./tmp
807M    ./volumes
4.0K    ./swarm
20K     ./plugins
38G     ./containers
50G     .

我们可以看到容器文件夹正在使用38G的空间。再检查一点:

代码语言:javascript
复制
[root@maaster-docker-test containers]# du -h --max-depth=1
代码语言:javascript
复制
35G     ./dd1c103dd7d1a5ecbab0e3a2e039a6c4d3fd525837a766a9bab28b29ba923a32
1.4M    ./ebf1c3978077a727d414d3e2de5974b03a236999cc66c29f66c0e517d6bbe055
40K     ./2c92baf1368ee292b7cf33db86369d0b6f7941753f54f145a14e5793eac6eba2
40K     ./047c082e1f1e8f26be0bb1a063e93907f55b4736ad88fd29736e383c6e03d559
175M    ./63c715643cfbd7695dc538081e4a963e270dc03a4ffdb528bb375cf57438a477
152M    ./cbb5fe85b16411dc94c8ab00dcd7b40b728acaa422398445be4130aa0197d287
1.4M    ./e7c01dca2246f17c5f0aa9f413772b7b73be2d962ae772e062c5257ce95252fa
2.6G    ./534b92fe6f1dac9f56d59b1e9feeb0d013199d17fae0af1df150dd20b96c9f70
38G     .

dd1c103dd7d1开头的容器占用35克空间。当我检查这个容器与谁对应时:

代码语言:javascript
复制
[root@maaster-docker-test containers]# docker ps
代码语言:javascript
复制
...
dd1c103dd7d1        fiware/cygnus-ngsi:latest               "/cygnus-entrypoint.…"   2 days ago          Up 2 days (healthy)     0.0.0.0:5050-5051->5050-5051/tcp, 0.0.0.0:5080->5080/tcp   fiware-cygnus
...

原来那是天鹅座。此时,我已经在MongoDB中插入了大约12000个不同的实体,反映了MySQL中大约300.000次更改(行)。所以数据的数量并不是那么疯狂。

要最后确定,在重新启动docker中定义的服务之后,这将停止Cygnus,移除容器并再次启动它们):

代码语言:javascript
复制
[root@maaster-docker-test containers]# docker ps
CONTAINER ID        IMAGE                                   COMMAND                  CREATED             STATUS                     PORTS                                                      NAMES
...
0fb5ab78b70b        fiware/cygnus-ngsi:latest               "/cygnus-entrypoint.…"   3 minutes ago       Up 3 minutes (healthy)     0.0.0.0:5050-5051->5050-5051/tcp, 0.0.0.0:5080->5080/tcp   fiware-cygnus
...

并再次检查所使用的空间

代码语言:javascript
复制
[root@maaster-docker-test containers]# du -h --max-depth=1
48K     ./e8d32c563ad0a22f70a83b576592b32b6336b0b39cc401cfe451896e6b76a897
40K     ./043069752e112cdce051d3792b8a261133b869e939bed263b9e0eb7dc265c379
80K     ./f1f40e29a8d620fc38b7b12cfcd4986f3ffcc2f970f08d582cb826c2f2a41ff0
1.1M    ./0fb5ab78b70bcc856c91b9b99266049b20f05f5d1d6d7d224cdfde9eec47b801
40K     ./047c082e1f1e8f26be0bb1a063e93907f55b4736ad88fd29736e383c6e03d559
128K    ./aa3c63cafe57c6ea1b4ed01bee9415b6a87bf538d6d7a700750be21c738d39d5
68K     ./11388b7090bcd08ac0235129b7354e5c9b68f1d4855abdc97f025ad597b73e68
68K     ./84a6aaf4221fde5cb0e21b727e33e21ff58d275597b121ba22f87296148b38db
1.6M    .

我们可以看到,Cygnus (0fb5ab78b70b),使用的容器只占用了110万的空间。

那么,是否有人知道Cygnus、Docker或Cygnus在Docker环境中是否有问题?我是否应该在Cygnus上执行任何配置更改,以提高效率并减少磁盘空间?

另外,我很高兴知道是否有任何配置更改,我必须做mongoDB (或者猎户座),以使mongodb更有效率?我不认为每秒插入200个新实体不应该影响mongo进程的CPU使用。

提前谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-09-06 16:36:24

我发现这个配置

代码语言:javascript
复制
"CYGNUS_LOG_LEVEL=DEBUG" 

产生了大量的数据,降低了服务的性能,增加了磁盘的使用率。

改变这个价值解决了我的问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63455223

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档