一:背景 在洞察 GC 方面,我觉得市面上没有任何一款工具可以和 PerfView 相提并论,这也是为什么我会在 WinDbg 之外还要学习这么一款工具的原因,这篇我们先简单聊聊 PerfView 到底能洞察 GC 什么东西? 二:洞察 GC 1. 到底都能看到 GC 什么? 能获取到的 GC 信息非常多,比如: 程序运行期间 GC 触发了多少次? GC 最大一次暂停耗费了多久? 每一次 GC 触发的原因是什么? GC 暂停 >200ms 的都有哪些? GC 触发 3 阶段中各个函数的耗时是怎样…
.net framework的类库中提供了三个可以用于序列化和反序列化的类,分别为BinaryFormatter.SoapFormatter和XmlSerializer. BinaryFormatter的命名空间为System.Runtime.Serialization.Formatters.Binary,位于程序集mscorlib.dll中. SoapFormatter的命名空间为System.Runtime.Serialization.Formatters.Soap,位于程序集System.…
目录 Python面向对象06 /元类type.反射.函数与类的区别.特殊的双下方法 1. 元类type 2. 反射 3. 函数与类的区别 4. 特殊的双下方法 1. 元类type type:获取对象从属的类 Python中一切皆对象,类在某种意义上也是一个对象 Python中自己定义的类,以及大部分内置类,都是由type元类(构建类)实例化得来的 # type 获取对象从属于的类 print(type(A)) print(type(str)) print(type(dict)) type与ob…
上一篇讲解了无线安全专题_攻击篇--干扰通信,没在首页待多长时间就被拿下了,看来之后不能只是讲解攻击实战,还要进行技术原理和防御方法的讲解.本篇讲解的是局域网内的MAC泛洪攻击,这种攻击方式主要目的是窃取局域网中的通信数据,例如ftp的账号和密码,下面的实战也是以此为例子.接下来按照原理,场景,攻击实战,防御方法的层次步骤进行讲解. 一.MAC泛洪攻击的原理 MAC泛洪攻击主要是利用局域网交换机的mac学习和老化机制. 1.1交换机的工作流程如下: 局域网中的pc1发送数据帧给pc2,经过交换机…
解剖SQLSERVER 第十六篇 OrcaMDF RawDatabase --MDF文件的瑞士军刀(译) http://improve.dk/orcamdf-rawdatabase-a-swiss-army-knife-for-mdf-files/ 当我最初开始开发OrcaMDF的时候我只有一个目标,比市面上大部分的书要获取MDF文件内部的更深层次的知识 随着时间的推移,OrcaMDF确实做到了.在我当初没有计划的时候,OrcaMDF 已经可以解析系统表,元数据,甚至DMVs.我还做了一个简单U…
解剖SQLSERVER 第六篇  对OrcaMDF的系统测试里避免regressions (译) http://improve.dk/avoiding-regressions-in-orcamdf-by-system-testing/ 当我继续添加新功能和新的数据结构支持进去OrcaMDF软件的时候,bug的风险不断增加 特别是当我开发一个很大的未知功能时,我不能预估结构和该结构的关联,为了降低风险,测试是很有必要的 单元测试 单元测试是在面向对象编程里测试源代码某一个功能的最小一部分的测试.一…
Python之路[第十六篇]:Django[基础篇]   Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. 基本配置 一.创建django程序 终端命令:django-admin startproject sitename IDE创建Django程序时,本质上都是自动执行上述命令 其他常用命令: python manage.py runserve…
我们来了解一下 自定义菜单创建接口: http请求方式:POST(请使用https协议) https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN 自定义菜单查询接口: http请求方式:GET https://api.weixin.qq.com/cgi-bin/menu/get?access_token=ACCESS_TOKEN 自定义菜单删除接口: http请求方式:GET https://api.weix…
目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 第四篇:发布/订阅 Publish/Subscribe RabbitMQ学习总结 第五篇:路由Routing RabbitMQ学习总结 第六篇:Topic类型的exchange RabbitMQ学习总结 第七篇:RCP(远程过程调用协议) 在上篇博文中,我们对之前的日志系统做了稍许的完善.没有使用…
本篇文章是SQL Server Replication系列的第六篇,详细内容请参考原文. 合并复制,类似于事务复制,包括一个发布服务器,一个分发服务器和一个或多个订阅服务器.每一个发布服务器上可以定义多个发布.你也可以同时在同一台发布服务器上定义合并发布.事务发布和快照发布.同事务复制,每一个发布所包含的项目需要是单一数据库中的对象.不同的发布可以定义在不同的数据库上.一个项目可以被多个发布使用.All publications on a publisher, independent of th…