协程 究竟什么是协程? 究竟协程有什么用? 1.涉及到同步锁。 2.涉及到线程阻塞状态和可运行状态之间的切换。 3.涉及到线程上下文的切换。 以上涉及到的任何一点,都是非常耗费性能的操作。 next()函数用来创建一个协程嗷 yield会暂停,当send()的时候才会继续 python中使用asyn ...
分类:
编程语言 时间:
2020-03-06 23:42:08
阅读次数:
82
线程池&进程池 在python2中没有提供,在python3之后才提供 作用:保证程序中最多可以创建的线程的个数 import time from concurrent.futures import ThreadPoolExecutordef task(n1,n2): time.sleep(1) p ...
分类:
编程语言 时间:
2020-03-06 20:10:56
阅读次数:
71
今天主要介绍一款高效的性能测试工具wrk。wrk的使用方式和apache bench这些工具也大体相似,通过命令行的方式即可发起。但是wrk比起apache bench更为高效,因为它支持多线程,更容易发挥多核CPU的能力,甚至可以压满CPU。wrk还支持Lua脚本来提供更多的参数定制、参数加密等需 ...
分类:
其他好文 时间:
2020-03-05 15:17:29
阅读次数:
372
0x00:前言 ngx_lua_waf是一个基于ngx_lua的web应用防火墙。 地址:https://github.com/loveshell/ngx_lua_waf 0x01:Lua Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为 ...
分类:
其他好文 时间:
2020-03-05 13:45:52
阅读次数:
105
来源:https://www.cnblogs.com/whiteyun/archive/2009/09/02/1541043.html 模式匹配函数在string库中功能最强大的函数是:string.find(字符串查找)string.gsub(全局字符串替换)string.gfind(全局字符串查 ...
分类:
其他好文 时间:
2020-03-04 11:17:02
阅读次数:
74
协程: 使用一个线程来实现异步操作的。它相对于多线程执行效率高,不存在线程切换;此外协程不牵扯多线程中锁的机制,所以不必考虑加锁这些复杂操作。 协程是通过generator来实现的,就是yield关键字和send()函数的使用。 生成器的yield关键字: yield关键字可以将值(信息)返回,同时 ...
分类:
编程语言 时间:
2020-03-02 12:37:25
阅读次数:
81
协程的概念 线程:系统级别的 协程:程序根据自己的需求调度。在同一个线程内一段代码在执行过程中会中断然后跳转执行别的代码,接着在之前中断的地方继续开始执行。携程拥有自己的寄存器上下文和栈。协程的优点:1.无需线程上下文切换的开销,协程避免了无意义的调度,性能提高,程序员自己承担调用的责任。2.无需原 ...
分类:
其他好文 时间:
2020-03-01 12:53:41
阅读次数:
68
无头的openresty,去掉了守护运行,把代码加载到init_worker_by_lua directive处执行run in the context of ngx.timer callback里面resty --shdict='dogs 1m' -e 'local dict = ngx.shar ...
分类:
其他好文 时间:
2020-03-01 12:39:57
阅读次数:
105
这时假设 package.path 的值是: /Users/dengjoe/lua/?.lua;./?.lua;/usr/local/share/lua/5.1/?.lua;/usr/local/share/lua/5.1/?/init.lua;/usr/local/lib/lua/5.1/?.lu ...
分类:
其他好文 时间:
2020-03-01 00:10:11
阅读次数:
51
# nginx.conf http { # you do not need to configure the following line when you # use LuaRocks or opm. lua_package_path "/path/to/lua-resty-mlcache/lib ...
分类:
其他好文 时间:
2020-02-29 20:24:03
阅读次数:
57