From 007d7e20743eb390a2396c963c1bf97e1ea4a196 Mon Sep 17 00:00:00 2001 From: maike Date: Wed, 23 Sep 2020 17:53:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E7=89=88=E6=9C=ACotp=20jiffy=E4=B8=8E?= =?UTF-8?q?jsx=E6=80=A7=E8=83=BD=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- rebar.config | 3 ++- src/user_default.erl | 49 ++++++++++++++++++++++---------------------- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/rebar.config b/rebar.config index f6ee712..2629985 100644 --- a/rebar.config +++ b/rebar.config @@ -1,7 +1,8 @@ {erl_opts, [{i, "include"}]}. {edoc_opts, [{preprocess, true}]}. {deps, [ - {jiffy, {git, "https://github.com/davisp/jiffy.git", {tag, "1.0.4"}}}, + {jiffy, {git, "https://github.com/davisp/jiffy.git", {tag, "1.0.5"}}}, + %% {jsx, {git, "https://github.com/talentdeficit/jsx.git", {tag, "v3.0.0"}}}, {erlSync, ".*", {git, "https://github.com/SisMaker/erlSync.git", {branch, "master"}}} ]}. diff --git a/src/user_default.erl b/src/user_default.erl index c66a457..652398d 100644 --- a/src/user_default.erl +++ b/src/user_default.erl @@ -45,25 +45,6 @@ test(N, StartTime) -> %% agHttpCli:callAgency(tt, Request, 5000), %% test(N - 1, Request). - -tcjf(0, _Args1) -> - Args = #{name => ffd, tet => "fdsff", <<"dfdf">> => 131245435346}, - jiffy:encode(Args); -tcjf(N, Args1) -> - Args = #{name => ffd, tet => "fdsff", <<"dfdf">> => 131245435346}, - jiffy:encode(Args), - tcjf(N - 1, Args1). - -tcjx(0, _Args1) -> - Args = {[{name, ffd}, {tet, "fdsff"}, {<<"dfdf">>, 131245435346}]}, - jiffy:encode(Args); -tcjx(N, Args1) -> - Args = {[{name, ffd}, {tet, "fdsff"}, {<<"dfdf">>, 131245435346}]}, - jiffy:encode(Args), - tcjx(N - 1, Args1). - - - -define(HeadBin, <<"X-Content-Type-Options: nosniff\r\nEtag: \"_aKwJ_tm--E\"\r\nServer: ArangoDB\r\nConnection: Keep-Alive\r\nContent-Type: application/json; charset=utf-8\r\nContent-Length: 178">>). th1(0, Fun, Rn) -> ?MODULE:Fun(?HeadBin, Rn); @@ -127,6 +108,23 @@ contentLength([<<"transfer-encoding: chunked">> | _T]) -> contentLength([_ | T]) -> contentLength(T). +%% 测试 jiffy 与 jsx 编码解码性能 +tcjf(0, _Args1) -> + Args = #{name => ffd, tet => "fdsff", <<"dfdf">> => 131245435346}, + jiffy:encode(Args); +tcjf(N, Args1) -> + Args = #{name => ffd, tet => "fdsff", <<"dfdf">> => 131245435346}, + jiffy:encode(Args), + tcjf(N - 1, Args1). + +tcjx(0, _Args1) -> + Args = {[{name, ffd}, {tet, "fdsff"}, {<<"dfdf">>, 131245435346}]}, + jiffy:encode(Args); +tcjx(N, Args1) -> + Args = {[{name, ffd}, {tet, "fdsff"}, {<<"dfdf">>, 131245435346}]}, + jiffy:encode(Args), + tcjx(N - 1, Args1). + -define(BodyBin1, <<"{\"_key\":\"01J\",\"_id\":\"airports/01J\",\"_rev\":\"_aKwJ_tm--E\",\"name\":\"Hilliard Airpark\",\"city\":\"Hilliard\",\"state\":\"FL\",\"country\":\"USA\",\"lat\":30.6880125,\"long\":-81.90594389,\"vip\":false}">>). -define(BodyBin2, <<"{\"_key\":\"01J\",\"_id\":\"airports/01J\",\"_rev\":\"_aPaBl7O--_\",\"name\":\"Hilliard Airpark\",\"city\":\"Hilliardfdfsdfdsffffffffffffffffffffffffffffffffffffffffffffffffffffffffafdsfasdfdafsdafdsfsdafdsafdsfdsfdsafdsfdsfdsfhghfghfghgfhsdsdfdsfdsfdsffdfddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddggggggggggggggggggggggggggggggggggggggggg\",\"state\":\"FL\",\"country\":\"USAjjkjkjkfgjkgjfkdjgldgjldjglfdjglfjdljljrlejtrltjewltjrelwtjrletjrletrletjlrejtjtrlwjrejwlrjjreljtljelwjrtlwjtreljrlewjrlwjrlwejrlejltkdfsafd\",\"lat\":30.6880125,\"long\":-81.90594389,\"vip\":false}">>). @@ -143,14 +141,15 @@ jd2(N, Fun) -> ?MODULE:Fun(?BodyBin2), jd2(N - 1, Fun). -decode1(Bin) -> +decodeJy1(Bin) -> jiffy:decode(Bin, [return_maps]). -decode2(Bin) -> +decodeJy2(Bin) -> jiffy:decode(Bin, [return_maps, copy_strings]). -decode3(Bin) -> - jiffy:decode(Bin, [return_maps]). -decode4(Bin) -> - jiffy:decode(Bin, [return_maps, copy_strings]). +decodeJx1(Bin) -> + jsx:decode(Bin, [return_maps]). + +decodeJx2(Bin) -> + jsx:decode(Bin, []).