自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (1)
  • 收藏
  • 关注

转载 XSS跨站脚本攻击

阅读目录1、简介2、原因解析3、XSS攻击分类  3.1、反射型xss攻击  3.2、存贮型xss攻击  3.3、DOMBasedXSS(基于dom的跨站点脚本攻击)4、XSS攻击实例分析  例1、简单XSS攻击  例2、盗取cookie5、XSS漏洞修复  5.1、html实体  5.2、HTML Encode  5.3、修复漏洞方针  5.4、PHP中的相应函数  5.5、数据过滤类

2017-04-28 14:19:29 521

转载 CSRF攻击与防御

阅读目录1、简介2、CSRF攻击原理3、CSRF例子与分析  3.1、简单级别CSRF攻击  3.2、中级别CSRF攻击  3.3、高级别CSRF攻击4、CSRF防御方法5、参考文献回到顶部1、简介  CSRF的全名为Cross-site request forgery,它的中文名为 跨站请求伪造(伪造跨站请求【这样读顺口一点】)  CSRF是一种夹持用户在已经登陆的w

2017-04-28 14:17:25 468

转载 Merge join、Hash join、Nested loop join对比分析

SQL server 内部实现了三种类型的内连接运算,大多数人从来没有听说过这些连接类型,因为它们不是逻辑连接也很少被用于代码中。那么它们什么时候会被用到呢?答案是要依情况而定。这就意味着要依赖于记录集和索引。查询优化器总是智能的选择最优的物理连接类型。我们知道SQL优化器创建一个计划开销是基于查询开销的,并依据此来选择最佳连接类型。        那查询优化器究竟是怎样从内部选择连接类型的呢

2017-04-28 10:44:52 360

转载 SQLSERVER DBCC命令大全

DBCC DROPCLEANBUFFERS:从缓冲池中删除所有缓存,清除缓冲区在进行测试时,使用这个命令可以从SQLSERVER的数据缓存data cache(buffer)清除所有的测试数据,以保证测试的公正性。需要注意的是这个命令只移走干净的缓存,不移走脏缓存。由于这个原因,在执行这个命令前,应该先执行CheckPoint,将所有脏的缓存写入磁盘,这样在运行DBCC RROPCLE

2017-04-27 17:45:34 1673

转载 .NET 实现并行的几种方式(二)

四、Task  3)Task.NET 4.5 中的简易方式在上篇随笔中,两个Demo使用的是 .NET 4.0 中的方式,代码写起来略显麻烦,这不 .NET 4.5提供了更加简洁的方式,让我们来看一下吧。 /// /// Task.NET 4.5 中的简易方式 /// public void Demo3()

2017-04-27 16:12:20 422

转载 .NET 实现并行的几种方式(一)

一、Thread 利用Thread 可以直接创建和控制线程,在我的认知里它是最古老的技术了。因为out了、所以不再写例子了。二、ThreadPool由于线程的创建和销毁需要耗费大量的资源,为了提过性能、引入了线程池、即ThreadPool,ThreadPool 可隐式完成线程的创建和分配管理工作。以下是来自MSDN的几句备注:  线程池根据需要提供新的工作线程或 I/O 完

2017-04-27 16:11:44 439

转载 .NET MVC TempData、ViewData、ViewBag

ViewData和ViewBag主要用于将数据从控制器中传递到视图中去,ViewData本身就是一个字典。以KeyValue的形式存取值。ViewData的Value类型是Object,也就是可以将任意类型的值存储到ViewData中去,平时我们都在控制器中直接使用ViewData.本质上ViewData只是Controller父类ControllerBase中的一个属性,其类型是ViewData

2017-04-27 16:03:06 823

转载 C#中POST数据和接收的几种方式

POST方式提交数据,一种众所周知的方式:html页面中使用form表单提交,接收方式,使用Request.Form[""]或Request.QueryString[""]来获取。 这里介绍另外一种POST方式和接收方式,就是将整个数据作为加入到数据流中提交和接收接收方式:Stream s = System.Web.HttpContext.Current.Request.I

2017-04-27 15:54:27 10391

转载 说说委托那些事儿

委托基础委托是个啥?很多人第一反映可能是"函数指针",个人觉得"函数指针"是委托实例委托的定义类似interface,是一种方法的"规范"或者说"模版",用来规范方法的"行为",以便将方法作为参数传递public delegate void MyDelegate();这样便定义了一个无参无返回值的委托,要求此委托的实例必须是无参无返回值的方法public class MyClass{  publi

2017-04-27 14:54:27 377

转载 ASP.NET MVC之视图传参到控制器的几种形式

1. 传递数组 $(function () { var value = ["C#", "JAVA", "PHP"]; $("input[type='button']").click(function () { $.ajax( {

2017-04-27 14:06:18 3346

转载 浏览器缓存机制详解

对于浏览器缓存,相信很多开发者对它真的是又爱又恨。一方面极大地提升了用户体验,而另一方面有时会因为读取了缓存而展示了“错误”的东西,而在开发过程中千方百计地想把缓存禁掉。那么浏览器缓存究竟是个什么样的神奇玩意呢?什么是浏览器缓存:  简单来说,浏览器缓存就是把一个已经请求过的Web资源(如html页面,图片,js,数据等)拷贝一份副本储存在浏览器中。缓存会根据进来的请求保存输出内容的副本。

2017-04-21 10:41:15 572

转载 亿级Web系统搭建:单机到分布式集群

当一个Web系统从日访问量10万逐步增长到1000万,甚至超过1亿的过程中,Web系统承受的压力会越来越大,在这个过程中,我们会遇到很多的问题。为了解决这些性能压力带来问题,我们需要在Web系统架构层面搭建多个层次的缓存机制。在不同的压力阶段,我们会遇到不同的问题,通过搭建不同的服务和架构来解决。Web负载均衡Web负载均衡(Load Balancing),简单地说就是给我们的服务器集群分

2017-04-21 09:12:21 373

转载 LVS:三种负载均衡方式比较+另三种负载均衡方式

什么是LVS?首先简单介绍一下LVS (Linux Virtual Server)到底是什么东西,其实它是一种集群(Cluster)技术,采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器

2017-04-21 09:11:40 433

转载 大型分布式网站术语分析

目录(?)[-]IO优化Web前端调优服务降级自动优雅降级幂等性设计失效转移性能优化代码优化负载均衡缓存负载均衡算法扩展性和伸缩性的区别分布式缓存的一致性hash网络安全加密技术流控流量控制1. I/O优化增加缓存,减少磁盘的访问次数。优化磁盘的管理系统,设计最优的磁盘方式策略,以及磁盘的寻址策略,这是在底层操作系统层面考虑的。设计合理的磁盘存储数据块,以及访问这些数据库的

2017-04-21 09:09:58 333

转载 30分钟全面解析-SQL事务+隔离级别+阻塞+死锁

阅读目录 概述: 一、事务 二、锁 三、阻塞 四、隔离级别 五.死锁 以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化。 本系列主要是针对T-SQL的总结。【T-SQL基础】01.单表查询-几道sql查询题【T-SQL基础】02.联接查询【T-SQL基础】03.子查询【T-SQL基础】04.表表达式-上篇【T-SQL基础】04.表表达式-下篇【T-SQL基础

2017-04-20 14:27:51 838

转载 SQL 事务隔离级别

概述     隔离级别用于决定如果控制并发用户如何读写数据的操作,同时对性能也有一定的影响作用。步骤事务隔离级别通过影响读操作来间接地影响写操作;可以在回话级别上设置事务隔离级别也可以在查询(表级别)级别上设置事务隔离级别。事务隔离级别总共有6个隔离级别:READ UNCOMMITTED(未提交读,读脏),相当于(NOLOCK)READ COMMITTED(已提交读,默认级

2017-04-20 09:45:35 532

转载 SQL Server返回插入数据的ID和受影响的行数

首先看看数据库里面的数据(S_Id为自增长标识列):sql server 中返回上一次插入数据的ID(标识值)有三种方式:第一种 @@IDENTITY:1 insert into Student(S_StuNo,S_Name,S_Sex,S_Height)2 values('013','卫庄','男','185');3 4 select @@IDENTITY

2017-04-15 15:53:11 4884

转载 SQL Server中的锁类型及用法

一. 为什么要引入锁 多个用户同时对数据库的并发操作时会带来以下数据不一致的问题: 丢失更新 A,B两个用户读同一数据并进行修改,其中一个用户的修改结果破坏了另一个修改的结果,比如订票系统 脏读 A用户修改了数据,随后B用户又读出该数据,但A用户因为某些原因取消了对数据的修改,数据恢复原值,此时B得到的数据就与数据库内的数据产生了不一致 不可重复读 A用

2017-04-08 16:30:26 965

转载 SQL Server数据库锁机制及类型

Microsoft SQL Server(以下简称SQL Server)作为一种中小型数据库管理系统,已经得到了广泛的应用,该系统更强调由系统来管理锁。在用户有SQL请求时,系统分析请求,自动在满足锁定条件和系统性能之间为数据库加上适当的锁,同时系统在运行期间常常自动进行优化处理,实行动态加锁。   对于一般的用户而言,通过系统的自动锁定管理机制基本可以满足使用要求,但如果对数据安全、数据库完整性

2017-04-08 15:42:01 702 1

转载 CTE 递归查询全解

在TSQL脚本中,也能实现递归查询,SQL Server提供CTE(Common TableExpression),只需要编写少量的代码,就能实现递归查询,本文详细介绍CTE递归调用的特性和使用示例,递归查询主要用于层次结构的查询,从叶级(Leaf Level)向顶层(Root Level)查询,或从顶层向叶级查询,或递归的路径(Path)。一,递归查询原理CTE的递归查询必须满足三个

2017-04-08 14:27:34 3771

转载 SQL 性能调优日常积累

阅读目录(1)选择最有效率的表名顺序(只在基于规则的优化器中有效)(2)WHERE子句中的连接顺序(3)SELECT子句中避免使用 ‘ * ‘(4)减少访问数据库的次数(5)在SQL*Plus , SQL*Forms和Pro*C中重新设置ARRAYSIZE参数, 可以增加每次数据库访问的检索数据量 ,建议值为200(6)使用DECODE函数来减少处理时间(7) 整合简单,无关联的数据库访问

2017-04-07 23:54:39 531

转载 使用 StackExchange.Redis 封装属于自己的 RedisHelper

目录核心类 ConnectionMultiplexer字符串(String)哈希(Hash)列表(List)有序集合(sorted set)Key 操作发布订阅其他 简介  目前 .NET 使用访问 Redis 的的类库主流应该是 StackExchange.Redis,自己参考网上的文章(也许是吃饱了撑着),也尝试做出简单的封装。 ///

2017-04-07 21:01:13 7425

转载 B/S(Web)实时通讯解决方案

B/S的实时通讯实现起来比较麻烦,因为http协议是无状态的,导致一些实时消息通知和聊天等功能比较难以实现,本文主要简述几种自己之前常用的几种方式。 1、传统的HTTP协议是无状态的传统的HTTP协议是无状态的,每次请求(request)都要由客户端(如 浏览器)主动发起,服务端进行处理后返回response结果,而服务端很难主动向客户端发送数据,多个用户进行实时的交流也比较困难,比如

2017-04-04 19:19:09 2544

转载 Redis实战与 Session缓存

C#操作Redis的库有很多,比如C# Redis Client就很好用,在NuGet上搜索 ServiceStack.Redis 安装到项目中,将会添加以下引用 ServiceStack.Redis 库为我们提供了RedisClient类,其继承了IDisposable接口,所以可用using块来代替try-catch-finally.Redis有几种常用的数据类型:   1.String  2

2017-04-04 18:42:07 1223

转载 队列工厂之RedisMQ

本次和大家分享的是RedisMQ队列的用法,前两篇文章队列工厂之(MSMQ)和队列工厂之RabbitMQ分别简单介绍对应队列环境的搭建和常用方法的使用,加上本篇分享的RedisMQ那么就完成了咋们队列工厂"三剑客"的目标了哈哈;Redis的作用不仅仅局限于队列,更多的一般都使用它的key,value的形式来存储session或者hash的方式存储一些常用的数据,当然这不是本章分享的内容(之前有些文

2017-04-04 13:14:26 2821

转载 队列工厂之(MSMQ)

最近vs2017神器正式版发布让人很是激动,vs2017支持了很多语言的开发,从前端-后端-底层的支持,堪称是工具中的神器;netcore我喜爱的架构之一也得到了大力的宣传,应群友的邀请将在队列工厂(msmq,redis,rabbitmq)一些列文章过后,继续增加.netcore方面的文章,只为.netcore发展更好贡献一份微弱的力量;本章内容分享的是队列(msmq,redis,rabbitmq

2017-04-04 13:13:48 1649

转载 队列工厂之RabbitMQ

本次和大家分享的是RabbitMQ队列的用法,前一篇文章队列工厂之(MSMQ)中在描述的时候已经搭建了简单工厂,因此本章内容是在其之上扩充的子项不再过多讲解工厂的代码了;RabbitMQ应该是现在互联网公司消息队列用的最多的一种之一吧,看看招聘基本都会有这个单词的出现,她相比前一篇分享的MSMQ来说配置更多样化,安装步骤数两者都差不多吧,最大差别MSMQ是windows捆绑的服务几乎只能在wind

2017-04-04 13:12:27 1249

转载 C#高级编程 集合

(一)概述数组的大小是固定的。如果元素个数是动态的,就应使用集合类。List是与数组相当的集合类。还有其它类型的集合:队列、栈、链表、字典和集。  (二)列表1、创建列表调用默认的构造函数,就可以创建列表对象。在泛型类List中,必须为声明为列表的值指定类型。使用默认构造函数创建一个空列表。元素添加到列表后,列表的容量会扩大,每次添加元素达到容量上限后,容量将重新设置为

2017-04-04 13:08:57 700

转载 AutoFac IoC DI 依赖注入

记录点点滴滴知识,为了更好的服务后来者!一、为什么使用AutoFac?之前介绍了Unity和Ninject两个IOC容器,但是发现园子里用AutoFac的貌似更为普遍,于是捯饬了两天,发现这个东东确实是个高大上的IOC容器~Autofac是.NET领域最为流行的IOC框架之一,传说是速度最快的一个:优点: 它是C#语言联系很紧密,也就是说C#里的很多编程方式都可以为Auto

2017-04-04 10:17:04 2912

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除