Skip to content
This repository has been archived by the owner on Apr 3, 2019. It is now read-only.

Containerized browserid-verifier uses more CPU than native one #76

Closed
mostlygeek opened this issue Feb 5, 2016 · 5 comments
Closed
Assignees

Comments

@mostlygeek
Copy link
Contributor

I deployed a single tokenserver canary into production with the container. It appears that the CPU usage is much higher than the other production servers:

high cpu

In stage testing it was the verifier container that was using up the bulk of the CPU.

I suspect that this may be an issue that node4 requires a different compile flag for browserid-crypto - usage

@mostlygeek
Copy link
Contributor Author

The base docker container has g++ 4.9.2 installed:

root@cb4c043c59c3:/# apt show g++
Package: g++
Status: install ok installed
Priority: optional
Section: devel
Installed-Size: 34.8 kB
Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
Source: gcc-defaults (1.136)
Version: 4:4.9.2-2
Provides: c++-compiler
Depends: cpp (>= 4:4.9.2-2), gcc (>= 4:4.9.2-2), g++-4.9 (>= 4.6.4-1~), gcc-4.9 (>= 4.6.4-1~)
Suggests: g++-multilib
Download-Size: unknown
APT-Manual-Installed: yes
APT-Sources: /var/lib/dpkg/status
Description: GNU C++ compiler
 This is the GNU C++ compiler, a fairly portable optimizing compiler for C++.
 .
 This is a dependency package providing the default GNU C++ compiler.

@vladikoff
Copy link
Contributor

I suspect that this may be an issue that node4 requires a different compile flag for browserid-crypto - usage

Hm also check if the optional dependency bignum (or bigint) had issues installing.
Be aware that it could be a node 0.10 vs node 4 issues rather than Containerized browserid-verifier vs native

@mostlygeek
Copy link
Contributor Author

@vladikoff do you think we should bump this back down to a node v0.10 base container?

@mostlygeek
Copy link
Contributor Author

Looking more carefully through the docker build ... for the container it seems that bigint failed to build correctly. I'm betting that is the issue.

@vladikoff
Copy link
Contributor

@mostlygeek right, local-verify uses https://github.com/mozilla/browserid-crypto/releases/tag/v0.7.0 currently, not the latest code with my fix here: mozilla/browserid-crypto@15e2e51

So your container is not using the native library.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants