GoogleCloudPlatform의 완전 매니지드의 redis, Memorystore의 성능을 redis-benchmark로 계측해 본다 그②
검증 그 ②
이 기사 계속
검증 프로그램을 쓰고 있으면, 시간을 많이 사용해 버렸다.
나중에 검증이 끝나지 않는다…
local의 redis와 gcp의 redis를 비교해보기
하기 전부터 local의 redis가 지는 것 같은 생각은 합니다만…
local에 비해 얼마나 빠른 것일까? 그리고.
전회와 같이, redis-benchmark로 각 커멘드를 500회, 동시 접속수를 점차 늘려 가는 설정으로 해 보겠습니다.
이번에는 redis-benchmark를 세 번 실행하여 평균값을 사용해 보겠습니다.
결과는 초당 실행할 수 있는 명령 수입니다.
mac local 환경
redis를 docker 컨테이너에서 시작하여 redis-benchmark 명령을 호스트에서 실행합니다!
동시 연결 수
1
10
25
50
100
PING_INLINE
2353.45
7969.51
10608.47
10929.51
7835.25
PING_BULK
2457.26
8510.78
11025.64
10512.6
10974.02
SET
2537.6
8268.4
10007.42
10601.73
8585.86
GET
2586.33
8697.76
10262.84
10400.13
8389.2
INCR
2587.77
8756.11
9828.3
11441.8
8391.34
LPUSH
2466.03
9024.12
9926.86
10679.27
9633.19
RPUSH
2257.2
8204.34
10591.13
10001.46
9817.63
LPOP
2486.2
7955.23
10054.51
8888.89
9131.58
RPOP
2668.43
8421.66
10245.51
11472.83
8703.7
SADD
2424.71
8680.56
11253.56
9685.85
8341.1
SPOP
2444.03
8451.55
9960.88
10357.14
10296.1
LPUSH
2466.03
9024.12
9926.86
10679.27
9633.19
LRANGE_100 (first 100 elements)
2164.16
6744.58
8044.58
8136.86
7559.84
LRANGE_300 (first 300 elements)
1739.92
4482.19
4727.96
4270.31
4625.08
LRANGE_500 (first 450 elements)
1516.72
3545.41
3720.64
3268.29
3397.3
LRANGE_600 (first 600 elements)
1345.15
2773.83
2866.99
2661.24
2449.77
MSET (10 키)
2462.2
8429.9
10256.11
8439.71
8446.97
GCP의 Memorystore
vCPU8, CPU수 8로 메모리수 30GB의 머신으로부터 Memorystore에 대해서 실행.
redis의 스펙은 이전과 마찬가지로 버전은 3.2, 인스턴스 용량은 1GB, 고가용성은 컷하고 있습니다.
동시 연결 수
1
10
25
50
100
PING_INLINE
2663.46
19583.34
34722.22
36111.11
41071.43
PING_BULK
2929.5
18472.22
34722.22
38571.43
41666.67
SET
2569.35
18382.35
35000.0
37896.83
37500.0
GET
2700.24
19215.69
36785.71
37500.0
41071.43
INCR
3005.37
19365.08
36111.11
36111.11
41071.43
LPUSH
2363.36
19365.08
32222.22
37896.83
39285.71
RPUSH
2447.55
18799.02
33611.11
41666.67
41071.43
LPOP
2807.65
19166.67
33611.11
37896.83
41071.43
RPOP
2601.71
18055.56
37777.78
36785.71
39285.71
SADD
2968.76
18750.0
35000.0
39285.71
41071.43
SPOP
2873.02
20833.33
35396.83
39285.71
41071.43
LPUSH
2363.36
19365.08
32222.22
37896.83
39285.71
LRANGE_100 (first 100 elements)
2404.47
15025.06
21501.83
24358.98
24358.98
LRANGE_300 (first 300 elements)
1672.53
9113.25
11441.8
11846.15
10600.26
LRANGE_500 (first 450 elements)
1678.36
6485.26
7592.39
7830.91
7692.31
LRANGE_600 (first 600 elements)
1601.6
5203.69
6214.73
6127.66
6042.42
MSET (10 키)
2590.8
18014.7
30202.02
33333.34
33333.34
동시 접속수 100의 결과를 비교해 본다
품목
local
gcp
PING_INLINE
7835.25
41071.43
PING_BULK
10974.02
41666.67
SET
8585.86
37500.0
GET
8389.2
41071.43
INCR
8391.34
41071.43
LPUSH
9633.19
39285.71
RPUSH
9817.63
41071.43
LPOP
9131.58
41071.43
RPOP
8703.7
39285.71
SADD
8341.1
41071.43
SPOP
10296.1
41071.43
LPUSH
9633.19
39285.71
LRANGE_100 (first 100 elements)
7559.84
24358.98
LRANGE_300 (first 300 elements)
4625.08
10600.26
LRANGE_500 (first 450 elements)
3397.3
7692.31
LRANGE_600 (first 600 elements)
2449.77
6042.42
MSET (10 키)
8446.97
33333.34
훌륭하게 결과에 차이가 나 버렸습니다.
간단한 조작이라면 3~4배 이상, 복수건의 조작을 하는 내용이라면 2배~이상의 성능에 차이가 있습니다.
하기 전부터 알고 있던 느낌이지만
고찰
과연 local과 비교하면 gcp는 맹렬하게 빠릅니다!
다음은 aws와 비교하자.
Reference
이 문제에 관하여(GoogleCloudPlatform의 완전 매니지드의 redis, Memorystore의 성능을 redis-benchmark로 계측해 본다 그②), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fumihiko-hidaka/items/14877357939635ab059e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
하기 전부터 local의 redis가 지는 것 같은 생각은 합니다만…
local에 비해 얼마나 빠른 것일까? 그리고.
전회와 같이, redis-benchmark로 각 커멘드를 500회, 동시 접속수를 점차 늘려 가는 설정으로 해 보겠습니다.
이번에는 redis-benchmark를 세 번 실행하여 평균값을 사용해 보겠습니다.
결과는 초당 실행할 수 있는 명령 수입니다.
mac local 환경
redis를 docker 컨테이너에서 시작하여 redis-benchmark 명령을 호스트에서 실행합니다!
동시 연결 수
1
10
25
50
100
PING_INLINE
2353.45
7969.51
10608.47
10929.51
7835.25
PING_BULK
2457.26
8510.78
11025.64
10512.6
10974.02
SET
2537.6
8268.4
10007.42
10601.73
8585.86
GET
2586.33
8697.76
10262.84
10400.13
8389.2
INCR
2587.77
8756.11
9828.3
11441.8
8391.34
LPUSH
2466.03
9024.12
9926.86
10679.27
9633.19
RPUSH
2257.2
8204.34
10591.13
10001.46
9817.63
LPOP
2486.2
7955.23
10054.51
8888.89
9131.58
RPOP
2668.43
8421.66
10245.51
11472.83
8703.7
SADD
2424.71
8680.56
11253.56
9685.85
8341.1
SPOP
2444.03
8451.55
9960.88
10357.14
10296.1
LPUSH
2466.03
9024.12
9926.86
10679.27
9633.19
LRANGE_100 (first 100 elements)
2164.16
6744.58
8044.58
8136.86
7559.84
LRANGE_300 (first 300 elements)
1739.92
4482.19
4727.96
4270.31
4625.08
LRANGE_500 (first 450 elements)
1516.72
3545.41
3720.64
3268.29
3397.3
LRANGE_600 (first 600 elements)
1345.15
2773.83
2866.99
2661.24
2449.77
MSET (10 키)
2462.2
8429.9
10256.11
8439.71
8446.97
GCP의 Memorystore
vCPU8, CPU수 8로 메모리수 30GB의 머신으로부터 Memorystore에 대해서 실행.
redis의 스펙은 이전과 마찬가지로 버전은 3.2, 인스턴스 용량은 1GB, 고가용성은 컷하고 있습니다.
동시 연결 수
1
10
25
50
100
PING_INLINE
2663.46
19583.34
34722.22
36111.11
41071.43
PING_BULK
2929.5
18472.22
34722.22
38571.43
41666.67
SET
2569.35
18382.35
35000.0
37896.83
37500.0
GET
2700.24
19215.69
36785.71
37500.0
41071.43
INCR
3005.37
19365.08
36111.11
36111.11
41071.43
LPUSH
2363.36
19365.08
32222.22
37896.83
39285.71
RPUSH
2447.55
18799.02
33611.11
41666.67
41071.43
LPOP
2807.65
19166.67
33611.11
37896.83
41071.43
RPOP
2601.71
18055.56
37777.78
36785.71
39285.71
SADD
2968.76
18750.0
35000.0
39285.71
41071.43
SPOP
2873.02
20833.33
35396.83
39285.71
41071.43
LPUSH
2363.36
19365.08
32222.22
37896.83
39285.71
LRANGE_100 (first 100 elements)
2404.47
15025.06
21501.83
24358.98
24358.98
LRANGE_300 (first 300 elements)
1672.53
9113.25
11441.8
11846.15
10600.26
LRANGE_500 (first 450 elements)
1678.36
6485.26
7592.39
7830.91
7692.31
LRANGE_600 (first 600 elements)
1601.6
5203.69
6214.73
6127.66
6042.42
MSET (10 키)
2590.8
18014.7
30202.02
33333.34
33333.34
동시 접속수 100의 결과를 비교해 본다
품목
local
gcp
PING_INLINE
7835.25
41071.43
PING_BULK
10974.02
41666.67
SET
8585.86
37500.0
GET
8389.2
41071.43
INCR
8391.34
41071.43
LPUSH
9633.19
39285.71
RPUSH
9817.63
41071.43
LPOP
9131.58
41071.43
RPOP
8703.7
39285.71
SADD
8341.1
41071.43
SPOP
10296.1
41071.43
LPUSH
9633.19
39285.71
LRANGE_100 (first 100 elements)
7559.84
24358.98
LRANGE_300 (first 300 elements)
4625.08
10600.26
LRANGE_500 (first 450 elements)
3397.3
7692.31
LRANGE_600 (first 600 elements)
2449.77
6042.42
MSET (10 키)
8446.97
33333.34
훌륭하게 결과에 차이가 나 버렸습니다.
간단한 조작이라면 3~4배 이상, 복수건의 조작을 하는 내용이라면 2배~이상의 성능에 차이가 있습니다.
하기 전부터 알고 있던 느낌이지만
고찰
과연 local과 비교하면 gcp는 맹렬하게 빠릅니다!
다음은 aws와 비교하자.
Reference
이 문제에 관하여(GoogleCloudPlatform의 완전 매니지드의 redis, Memorystore의 성능을 redis-benchmark로 계측해 본다 그②), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fumihiko-hidaka/items/14877357939635ab059e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
vCPU8, CPU수 8로 메모리수 30GB의 머신으로부터 Memorystore에 대해서 실행.
redis의 스펙은 이전과 마찬가지로 버전은 3.2, 인스턴스 용량은 1GB, 고가용성은 컷하고 있습니다.
동시 연결 수
1
10
25
50
100
PING_INLINE
2663.46
19583.34
34722.22
36111.11
41071.43
PING_BULK
2929.5
18472.22
34722.22
38571.43
41666.67
SET
2569.35
18382.35
35000.0
37896.83
37500.0
GET
2700.24
19215.69
36785.71
37500.0
41071.43
INCR
3005.37
19365.08
36111.11
36111.11
41071.43
LPUSH
2363.36
19365.08
32222.22
37896.83
39285.71
RPUSH
2447.55
18799.02
33611.11
41666.67
41071.43
LPOP
2807.65
19166.67
33611.11
37896.83
41071.43
RPOP
2601.71
18055.56
37777.78
36785.71
39285.71
SADD
2968.76
18750.0
35000.0
39285.71
41071.43
SPOP
2873.02
20833.33
35396.83
39285.71
41071.43
LPUSH
2363.36
19365.08
32222.22
37896.83
39285.71
LRANGE_100 (first 100 elements)
2404.47
15025.06
21501.83
24358.98
24358.98
LRANGE_300 (first 300 elements)
1672.53
9113.25
11441.8
11846.15
10600.26
LRANGE_500 (first 450 elements)
1678.36
6485.26
7592.39
7830.91
7692.31
LRANGE_600 (first 600 elements)
1601.6
5203.69
6214.73
6127.66
6042.42
MSET (10 키)
2590.8
18014.7
30202.02
33333.34
33333.34
동시 접속수 100의 결과를 비교해 본다
품목
local
gcp
PING_INLINE
7835.25
41071.43
PING_BULK
10974.02
41666.67
SET
8585.86
37500.0
GET
8389.2
41071.43
INCR
8391.34
41071.43
LPUSH
9633.19
39285.71
RPUSH
9817.63
41071.43
LPOP
9131.58
41071.43
RPOP
8703.7
39285.71
SADD
8341.1
41071.43
SPOP
10296.1
41071.43
LPUSH
9633.19
39285.71
LRANGE_100 (first 100 elements)
7559.84
24358.98
LRANGE_300 (first 300 elements)
4625.08
10600.26
LRANGE_500 (first 450 elements)
3397.3
7692.31
LRANGE_600 (first 600 elements)
2449.77
6042.42
MSET (10 키)
8446.97
33333.34
훌륭하게 결과에 차이가 나 버렸습니다.
간단한 조작이라면 3~4배 이상, 복수건의 조작을 하는 내용이라면 2배~이상의 성능에 차이가 있습니다.
하기 전부터 알고 있던 느낌이지만
고찰
과연 local과 비교하면 gcp는 맹렬하게 빠릅니다!
다음은 aws와 비교하자.
Reference
이 문제에 관하여(GoogleCloudPlatform의 완전 매니지드의 redis, Memorystore의 성능을 redis-benchmark로 계측해 본다 그②), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fumihiko-hidaka/items/14877357939635ab059e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
과연 local과 비교하면 gcp는 맹렬하게 빠릅니다!
다음은 aws와 비교하자.
Reference
이 문제에 관하여(GoogleCloudPlatform의 완전 매니지드의 redis, Memorystore의 성능을 redis-benchmark로 계측해 본다 그②), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/fumihiko-hidaka/items/14877357939635ab059e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)