http://www.giantflyingsaucer.com/blog/?p=5994

使用JWT的token认证,防止别人知道了接口后,随意调用,但是发现
stepping : 4
microcode : 0x428
cpu MHz : 2600.062
cache size : 20480 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl pni ssse3 cx16 sse4_1 sse4_2 popcnt aes hypervisor lahf_lm
bogomips : 5200.12
clflush size : 64
cache_alignment : 64
address sizes : 46 bits physical, 48 bits virtual

使用 go test -test.bench=".*" -v 命令测试,发现加密的挺耗时间的
goos: linux
goarch: amd64
pkg: github.com/KerryJava/goserver
Benchmark_TimeConsumingOrm 5000 265224 ns/op
Benchmark_TimeConsumingOrm 5000 248941 ns/op
Benchmark_TimeConsumingOrm 10000 245728 ns/op
Benchmark_TimeConsumingOrm 5000 268391 ns/op
Benchmark_TimeConsumingOrm 5000 247001 ns/op
Benchmark_TimeConsumingFunctionRawQuery 10000 215219 ns/op
Benchmark_TimeConsumingFunctionRawQuery 10000 213085 ns/op
Benchmark_TimeConsumingFunctionRawQuery 10000 210200 ns/op
Benchmark_TimeConsumingFunctionRawQuery 10000 209737 ns/op
Benchmark_TimeConsumingFunctionRawQuery 10000 209695 ns/op
Benchmark_TimeConsumingFunctionRawQueryPrepare 20000 65998 ns/op
Benchmark_TimeConsumingFunctionRawQueryPrepare 20000 66214 ns/op
Benchmark_TimeConsumingFunctionRawQueryPrepare 20000 67460 ns/op
Benchmark_TimeConsumingFunctionRawQueryPrepare 20000 67988 ns/op
Benchmark_TimeConsumingFunctionRawQueryPrepare 20000 67424 ns/op
Benchmark_JWTRSA256Sign 300 4128990 ns/op
Benchmark_JWTRSA256Sign 300 4119935 ns/op
Benchmark_JWTRSA256Sign 300 4175446 ns/op
Benchmark_JWTRSA256Sign 300 4121553 ns/op
Benchmark_JWTRSA256Sign 300 4137870 ns/op
Benchmark_JWTRSA256Decode 10000 139202 ns/op
Benchmark_JWTRSA256Decode 10000 138939 ns/op
Benchmark_JWTRSA256Decode 10000 139415 ns/op
Benchmark_JWTRSA256Decode 10000 139179 ns/op
Benchmark_JWTRSA256Decode 10000 137128 ns/op
PASS
ok github.com/KerryJava/goserver 43.983s

使用JWT的RSA256加密做为用户认证, 测试性能的更多相关文章

  1. LAMP 1.7Apache用户认证

    假如我们要在www.aaa.com/的 abc/目录下放一些文件,只想让自己访问,做一个用户认证.输入正确的用户和密码才能访问 cd /data/www mkdir abc cd abc cp /et ...

  2. ubuntu下配置ProFtpd服务使用sqlite3作为后端用户认证

    个人机器需要开个文件共享,Linux机器懒得配置SMB,就直接安装了ProFtpd,以做FTP服务器 Ubuntu安装挺简单,可使用就不那么友好了,配合GAdmin-Proftpd,一样不好用. 首先 ...

  3. 转:Mosquitto用户认证配置

    转自:https://blog.csdn.net/u012377333/article/details/69397124?utm_source=blogxgwz1 前言:基于Mosquitto服务器已 ...

  4. 前后端分离下用jwt做用户认证

    0 前后端分离下的用户信息认证 前端使用Vue+axios,后端使用SpringBoot+SpringSecurity. 为了解决http无状态的问题,我采用jwt(json web token)保存 ...

  5. 基于JWT标准的用户认证接口实现

    前面的话 实现用户登录认证的方式常见的有两种:一种是基于 cookie 的认证,另外一种是基于 token 的认证 .本文以基于cookie的认证为参照,详细介绍JWT标准,并实现基于该标签的用户认证 ...

  6. 用户认证:基于jwt和session的区别和优缺点

    背景知识: Authentication和Authorization的区别: Authentication:用户认证,指的是验证用户的身份,例如你希望以小A的身份登录,那么应用程序需要通过用户名和密码 ...

  7. [django]前后端分离之JWT用户认证

    在前后端分离开发时为什么需要用户认证呢?原因是由于HTTP协定是不储存状态的(stateless),这意味着当我们透过帐号密码验证一个使用者时,当下一个request请求时它就把刚刚的资料忘了.于是我 ...

  8. 前后端分离之JWT用户认证(转)

    在前后端分离开发时为什么需要用户认证呢?原因是由于HTTP协定是不储存状态的(stateless),这意味着当我们透过帐号密码验证一个使用者时,当下一个request请求时它就把刚刚的资料忘了.于是我 ...

  9. Laravel 5 中使用 JWT(Json Web Token) 实现基于API的用户认证

    在JavaScript前端技术大行其道的今天,我们通常只需在后台构建API提供给前端调用,并且后端仅仅设计为给前端移动App调用.用户认证是Web应用的重要组成部分,基于API的用户认证有两个最佳解决 ...

随机推荐

  1. AtCoder Beginner Contest 070|Elena|8.12|#471

    打了场beginner的AtCoder,也是我第一次打AtCoder,虽然AK了,但是由于手速慢+撒比,才#471… 比赛链接:https://beta.atcoder.jp/contests/abc ...

  2. PHP一个小函数

    // function makeTemp($fileName="index",$ftype=0) { $tempPath="xx/xxxx/{$fileName}.htm ...

  3. 品尝阿里云容器服务:初步尝试ASP.NET Core Web API站点的Docker自动化部署

    部署场景是这样的,我们基于 ASP.NET Core 2.0 Preview 1 开发了一个用于管理缓存的 Web API ,想通过阿里云容器服务基于 Docker 部署为内网服务. 在这篇博文中分享 ...

  4. {Python之线程} 一 背景知识 二 线程与进程的关系 三 线程的特点 四 线程的实际应用场景 五 内存中的线程 六 用户级线程和内核级线程(了解) 七 python与线程 八 Threading模块 九 锁 十 信号量 十一 事件Event 十二 条件Condition(了解) 十三 定时器

    Python之线程 线程 本节目录 一 背景知识 二 线程与进程的关系 三 线程的特点 四 线程的实际应用场景 五 内存中的线程 六 用户级线程和内核级线程(了解) 七 python与线程 八 Thr ...

  5. ubuntu下能ping通ssh不通的解决思路

    1.首先看看是否能ping通,如果ping不通可能就要考虑网线.路由等问题了: 2.看防火墙是否关闭,sshd是否开启 3.ssh -v 服务器的ip号,根据提示寻找可能的问题: 我的问题在这一步之后 ...

  6. OLW Test

    第一篇使用Open Live Writer 发布测试. Code Insert: #include <stdio.h> main() { printf("Hello World! ...

  7. 分析java的堆栈信息 内存模型

    package com.test.learnJava; public class LineNum { public static void main(String[] args) { System.o ...

  8. [nginx] load balancing & location

    一 将NGINX配置成7层load balancer,该怎么做? 参见: http://nginx.org/en/docs/http/load_balancing.html https://docs. ...

  9. dp单调性优化

    跟着书上的思路学习dp的单调性优化觉得还是很容易想的. 数据范围: dp,数据范围是百万,这应该是O(n)的算法了. 首先不难想到设f[i]表示到第i个百米所能达到的最大能量,那么f[n]即为所求. ...

  10. SQLAlchemy中时间格式化及将时间戳转成对应时间的方法-mysql

    https://blog.csdn.net/guoqianqian5812/article/details/80175866 方法很简答,都是借助于mysql数据库提供的函数将时间格式化方法 func ...