作者:Calix 一)模型分析 memcached到底是如何处理我们的网络连接的? memcached通过epoll(使用libevent,下面具体再讲)实现异步的服务器,但仍然使用多线程,主要有两种线程,分别是“主线程”和“worker线程”,一个主线程,多个worker线程. 主线程负责监听网络连接,并且accept连接.当监听到连接时,accept后,连接成功,把相应的client fd丢给其中一个worker线程.worker线程接收主线程丢过来的client fd,加入到自己的epol…
models.py 昨天体验的时候我们分别执行了httprunner -h,httprunner startproject demo, httprunner run demo,但是源码中其调用了其他文件中的方法所以暂时先不分析cli.py了,先从根本开始models.py 可用资料 typing[类型提示]: https://docs.python.org/zh-cn/3/library/typing.html pydantic[类型校验]: https://pydantic-docs.help…
一下摘自:https://blog.csdn.net/Fire_Light_/article/details/79602705 论文链接:ArcFace: Additive Angular Margin Loss for Deep Face Recognition 作者开源代码:https://github.com/deepinsight/insightface 这篇论文原名是ArcFace,但是由于与虹软重名,后改名为Insight Face. 其实这篇论文可以看作是AmSoftmax的一种改…
节点解析 request-map 你可以将其理解为controller的配置,如果你了解或使用过struts的配置或springmvc的annotation,就会发现这个定义跟它们是很相似的: [html] view plain copy print? <request-map uri="createCreditCardAndPostalAddress"> <security https="true" auth="true"/&…
复习下事件的有关内容: 1.现在用的绑定/删除: obj.addEventListener(type,fn,false) obj.removeEventListener(type) obj.attachEvent(type,fn)   //ie obj.detachEvent(type) 2.js的event对象 type : 事件类型 srcElement/target :  事件源 button : 如果是鼠标按下,则 1左键 2右键 4中间滚轮 多个键则相加按下的所有值. firfox 0…
作者:Calix 如果直接把memcached的源码从main函数开始说,恐怕会有点头大,所以这里以一句经典的“SET”命令简单地开个头,算是回忆一下memcached的作用,后面的结构篇中关于命令解析部分主要也是围绕着SET命令展开分析,相信把一句SET命令背后做的事情都搞清楚,那么memcached大部分源码都了解得七七八八了. 那么,回忆一下,set命令做了个什么事情? 无非就是把一个value set到某个key上面,保存在内存当中. 再细化一下: 1)memcached是一个缓存服务器…
作者:Calix,转载请注明出处:http://calixwu.com 最近研究了一下memcached的源码,在这里系统总结了一下笔记和理解,写了几 篇源码分析和大家分享,整个系列分为“结构篇”和“源码篇”,建议先从结构篇开始看起,要特别说明的是我本次分析的是memcached1.4.20的版 本,不同版本会有所差异,另外,文章均为本人的个人理解,如果解析得不好或者错误的地方敬请指正. 好了,不啰嗦了,下面是导航: [结构篇] Memcached源码分析之从SET命令开始说起 Memcache…
QuartzSchedulerThread.run()是主要处理任务的方法!下面进行分析,方便自己查看! 我都是分析的jobStore 方式为jdbc的SimpleTrigger!RAM的方式类似分析方式! Quartz学习--scheduler.start()启动源码分析:http://blog.csdn.net/u010648555/article/details/53520314 QuartzSchedulerThread.run()主要是在有可用线程的时候获取需要执行Trigger并出触…
上一篇我们主要通过ExecutorCompletionService与FutureTask类的源码,对Future模型体系的原理做了了解,本篇开始解读concurrent包中的工具类的源码.首先来看两个非常实用的工具类CyclicBarrier与CountDownLatch是如何实现的. CyclicBarrier CyclicBarrier直译过来是“循环屏障”,作用是可以使固定数量的线程都达到某个屏障点(调用await方发处)后,才继续向下执行.关于用法和实例本文就不做过多说明,现在直接进入…
http://blogs.readthedocs.org/   ACE的学习笔记,根据源码分析了Reactor模型的实现. 因为笔记编写技术限制,这里仅列出主要目录,如有可能可以抽空复制到该Blog中. 目录如下: 1. ACE学习综述 1.1. ACE项目的优点 1.2. ACE项目的缺点 1.3. Reactor使用过程中的注意事项 2. ACE_Select_Reactor_T 介绍 2.1. 类继承图 2.2. 类协作图 2.3. 类主要成员变量 2.4. 事件处理函数调用图 2.5.…