数据并行
摘要:.Net 并行计算 ----数据并行从第一台计算机问世到现在计算机硬件技术已经有了很大的发展。不管是现在个人使用的PC还是公司使用的服务器。双核,四核,八核的CPU已经非常常见。这样我们可以将我们程序分摊到多个计算机CPU中去计算,在过去并行化需要线程的低级操作,难度很大,在.net4.0中的增强了对并行化的支持,使得这一切变得非常简单 。本次我从以下几个方面大家讲以下.NET 并行 数据并行 任务并行 并行Linq 任务工厂 注意事项 本次主要给大家讲一下数据并行 废话不说,下面开始了 数据并行其实就是指对原集合或者数组中的数据进行划区之后分摊到多个CPU或者多个线程执行相同的操作 在 .n
阅读全文
模型-Model
摘要:【再探backbone 01】模型-Model前言简单例子第一步,页面结构第二步,定义model第三步,集合第四步,TodoView第五步,入口AppView实现继承-extend事件机制-Events模型-Model构造函数扩展原型链结语前言点保存时候不注意发出来了,有需要的朋友将就看吧,还在更新......几个月前学习了一下backbone,这段时间也用了下,感觉之前对backbone的学习很是基础,前几天有个园友问我如何将路由的#改为其他我其实想说这个不能乱改,又怕不熟悉误人子弟,所以今天我们来一起重新学习下他,看看会不会带来不一样的感觉我在博客园nuysoft的博客看到了backbon
阅读全文
简单够用的设计
摘要:简单够用的设计细说WebSocket - Node篇2013-12-20 13:42 by BarretLee,2183阅读,8评论,收藏,编辑在上一篇提高到了web 通信的各种方式,包括 轮询、长连接 以及各种 HTML5 中提到的手段。本文将详细描述 WebSocket协议 在 web通讯 中的实现。一、WebSocket 协议1. 概述websocket协议允许不受信用的客户端代码在可控的网络环境中控制远程主机。该协议包含一个握手和一个基本消息分帧、分层通过TCP。简单点说,通过握手应答之后,建立安全的信息管道,这种方式明显优于前文所说的基于 XMLHttpRequest 的 ifram
阅读全文
Content Negotiation(内容协商)
摘要:Asp.Net Web API 2第十四课——Content Negotiation(内容协商)前言阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看http://www.cnblogs.com/aehyok/p/3446289.html本文描述ASP.NET Web API如何实现内容协商。HTTP规范(RFC 2616)将内容协商定义为“在有多个表现可用时,为一个给定的响应选择最佳表现的过程”。在HTTP中内容协商的主要机制是以下请求报头:Accept:响应可接收的媒体类型,如“application/json”、“application/xml”,或者自定义媒体
阅读全文
T4 Template Overview
摘要:T4 Template OverviewT4 Template的组成指令区:为模板转换引擎提供指令,控制模板如何被处理 template:模板相关的属性,debug是否可以调试;hostspecific设置为true时,为生成的模板类中添加Host属性 output:生成输出文件类型 assembly:模板引擎中引用的程序集 import:模板引擎中导入的命名空间 include:包含其他文件,在最终转换时,将这些引用的文件和当前文件进行合并代码控制区 标准代码控制区,包围的区域,包含标准的代码 表达式控制区,包围的区域,计算表达式的值,插入到最终输出文件中 类特性控制区,包围
阅读全文
谈谈基于OAuth 2.0的第三方认证 [上篇]
摘要:谈谈基于OAuth 2.0的第三方认证 [上篇]对于目前大部分Web应用来说,用户认证基本上都由应用自身来完成。具体来说,Web应用利用自身存储的用户凭证(基本上是用户名/密码)与用户提供的凭证进行比较进而确认其真实身份。但是这种由Web应用全权负责的认证方式会带来如下两个问题:对于用户来说,他们不得不针对不同的访问Web应用提供不同的用户凭证。如果这些凭证具有完全不同的密码,我们没有多少人能够记得住,所以对于大部分整天畅游Internet的网友来说,我想他们在不同的网站注册的帐号都会采用相同的密码。密码的共享必然带来安全隐患,因为我们不能确定Web应用本身是否值得信任。“信任危机”来源于两个
阅读全文
c#通用多线程基类,以队列形式
摘要:c#通用多线程基类,以队列形式个人原创、欢迎转载、转载请注明出处、http://www.cnblogs.com/zetee/p/3487084.html 多线程这个概念大家都很熟悉,对于winform的开发人员来说.用的还是多的.但估计都是用Timer,或者backgroundWorker. 你是否曾经想过,写一个基类,然后....一用到多线程的时候,就马上能用上呢.没错,福利来了,这面我为大家写了多线程的一个基类.只有你用到多线程,下面的代码肯定能帮到你很多忙 1 /// 2 /// 队列多线程,T 代表处理的单个类型~ 3 /// 4 ///...
阅读全文
TCP应用
摘要:.Net 并行计算 ----并行任务本文作为 .Net 并行计算 的第二篇名词解释 任务并行是指一个或者多个独立的任务同时运行。任务并行类似于多线程或者ThreadPool 工作项。但是抽象的级别更高并行任务的2个有点 1。系统使用的率更高 2.可以使用更多的编程控件创建和运行任务1.隐式创建和运行任务。Parallel.Invoke方法提供了一种简便方式,可同时运行任意数量的任意语句。只需为每个工作项传入Action 委托即可 大家可以想一下了例子的运行结果是什么? 会是输出 时间2000 吗 。如果你这么想就错了。笔者的电脑上输出的结果为 时间1005 (可能在你的电脑上的结果和我的不一定
阅读全文
本地事务和分布式事务工作
摘要:本地事务和分布式事务工作实践一:从事务的历史说起 知已知彼,百战不败。想了解事务,我们从事务的历史说起。 在Windows平台上,事务的概念最开始出现在关系型数据库中,但是随着.net平台的发展,事务包括的的范围也越来越宽,先一睹为快, 在关系型数据库中的事务是通过begin transaction,rollback transaction, commit 等关键字来实现事务的。BEGIN TRANSACTION UPDATE [dbo].[T_ACCOUNT] SET BALANCE = BALANCE + @amount WHERE ID = @toAccount IF @@ER...
阅读全文
弱引用
摘要:弱引用是什么?要搞清楚什么是弱引用,我们需要先知道强引用是什么。强引用并不是什么深奥的概念,其实我们平时所使用的.Net引用就是强引用。例如:Cat kitty = new Cat();变量kitty就是一个强引用,它指向了堆中的一个Cat对象实例。我们都知道,CLR的垃圾回收机制会标记所有被强引用到的对象,而那些剩下的未被标记的对象则会被垃圾回收。换句话说,如果一个对象一直被某个强引用所指向,那么它是不会被垃圾回收的。从这一点来看,弱引用就完全不一样了——即使某个对象被弱引用所指向,该对象仍然会被垃圾回收。也就是说,弱引用不会影响对象的生命周期。System.WeakReference类是.
阅读全文
谈谈基于OAuth 2.0的第三方认证 [上篇]
摘要:谈谈基于OAuth 2.0的第三方认证 [上篇]对于目前大部分Web应用来说,用户认证基本上都由应用自身来完成。具体来说,Web应用利用自身存储的用户凭证(基本上是用户名/密码)与用户提供的凭证进行比较进而确认其真实身份。但是这种由Web应用全权负责的认证方式会带来如下两个问题:对于用户来说,他们不得不针对不同的访问Web应用提供不同的用户凭证。如果这些凭证具有完全不同的密码,我们没有多少人能够记得住,所以对于大部分整天畅游Internet的网友来说,我想他们在不同的网站注册的帐号都会采用相同的密码。密码的共享必然带来安全隐患,因为我们不能确定Web应用本身是否值得信任。“信任危机”来源于两个
阅读全文
Redis for Windows(C#缓存)安装和使用
摘要:Redis for Windows(C#缓存)安装和使用前言前段时间写过两篇简单的有关Memcached缓存的相关文章,当然了只是入门的如何使用而已。最近这两天又发现了Redis这个神奇的东西,之前肯定看到过,由于是小菜,还真心没多多注意它是干什么的,不料最近发现原来它也是缓存神器呀,于是自己就来简单的入门学习。Asp.Net中使用Couchbase——Memcached缓存入门篇http://www.cnblogs.com/aehyok/p/3436721.htmlAsp.Net中使用Couchbase——Memcached缓存使用篇http://www.cnblogs.com/aehyok
阅读全文
基于byte[]的HTTP协议头分析代码
摘要:smark专注于高并发网络和大型网站架规划设计,提供.NET平台下高吞吐的网络通讯应用技术咨询和支持基于byte[]的HTTP协议头分析代码最近需要为组件实现一个HTTP的扩展包,所以简单地实现了HTTP协议分析。对于HTTP协议就不详细解说了网上的资料太丰富了,这里主要描述如何通过byte[]流分析出HTTP协议头信息。HTTP协议头有两个协议字符是比较重要的分别就是'\r\n'和':',前者要描述每个头信息的结束,而后则是属性名和属性值的分隔符号。实现由于并没有使用Stream来处理所以在分析的时候就不能使用ReadLine来的方便,只能通过分析byte来解
阅读全文
Redis for Windows(C#缓存)配置文件详解
摘要:Redis for Windows(C#缓存)配置文件详解前言 在上一篇文章中主要介绍了Redis在Windows平台下的下载安装和简单使用http://www.cnblogs.com/aehyok/p/3478282.html。当然我也在上一篇中指定过配置文件,并且修改其中的端口port。本文将主要来探讨redis强大的配置文件。 我现在使用的redis版本为2.6。首先奉上配置文件的源文件。redis.conf配置文件解析包括以下几个部分 一、基本配置 二、快照 三、同步 四、安全 五、限制 六、纯累加模式 七、LUA脚本 八、慢查询日志 九、高级配置 十、其他一、...
阅读全文
C# webservice 编写、发布、调用
摘要:C# webservice 编写、发布、调用采用的工具VS2010生成工程1. 生成webservice工程:建 ASP.NET 空WEB 应用程序。2. 在建好的ASP.NET 空WEB应用程序中新建项“web 服务”。完成上述内容工程结构如下图下面主要的操作就是在webservice1.asmx.cs文件中进行,里面写了几个服务,两个简单服务两个查询数据库服务;12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626
阅读全文
栈和队列的相互转换
摘要:栈和队列的相互转换 大家都知道,栈是先进后出,队列是先进先出的。那么如何使用栈来完成队列的功能,又如何用队列完成栈的功能呢?一、两个栈实现队列 两个栈实现队列的方法就是将一个栈用来当作进入元素的入口,当要取出元素的时候,就将这个栈中的元素转入到另外一个栈中,由于先进后出,此时第二个栈中的元素顺序就和第一个栈中的元素顺序相反,这样就实现了一个队列的功能。具体流程如下: 1、将元素进栈 2、当需要先删除队头元素时,先检查stack2是否为空,如果为空,就将stack1中的元素转移至stack2中,否则直接删除stack2中的元素 然后删除元素4 当需要添加新元素5时,就将5添加...
阅读全文
一种集合“相等性”的实现
摘要:一种集合“相等性”的实现 最近在工作中遇到了一个小的功能,就是需要向一个服务发送请求命令,需要判断请求是否发生变化,如果发生变化了,则重新请求。该问题实际上就是判断两个集合是否相等,只需要记录最后一次请求的元素的集合,然后将其和最新一次进行比较是否相等。需要说明的是这里定义的集合相等是指:两个集合如果元素值一样并且出现的次数也一样,即使顺序不一样也认为是相等,比如集合A={1,2,3,4,4,5} 集合B={1,4,4,2,3,5} 这两个集合也认为是相等的。后面讨论的集合相等都是基于这一假设的。 就这么个简单的问题,也有不同种解决方法,这里和大家分享一下。方法一 使用Dictionary计数
阅读全文
Properties的读取和写入
摘要:楪夕Properties的读取和写入Properties是HashTable下的一个持久的属性集,没有泛型,key-value都是String类型。由于能与IO流结合使用,所以能方便地操作属性文件或者xml文件。一.properties读取配置文件,并输出到控制台:1 Properties properties = new Properties();2 FileReader fr = new FileReader("ltn.properties");3 properties.load(fr);4 fr.close();5 //输出 6 properties.list(Sys
阅读全文
Winform系列
摘要:小菜学习编程-Winform系列(初学者)前言 记得上次写《小菜的程序员道路(二)》,这篇文章的时候说过,要把工作以来整理的编程知识分享给大家,因为这半年来的工作实在是忙,现在也在忙着公司产品上线,但是答应的一定要实现,大家看我上面文章里的那个文档录入就知道还有很多东西要写,到现在也只写了《C++算法编程题系列》和《T-Sql学习系列完结》 这两个相对简单的系列,有的朋友说你写的东西太浅显了,当然我认为这样理解的都是大牛,因为小菜的知识面有限,工作也才一年,现在也在学习设计模式,编程 底层的东西以及新的技术等,还不是拿的出手的时候,所以现在只能写些适合和我一样菜朋友们的文章,希望可以在某些地.
阅读全文
HttpClient的使用-爬虫学习1
摘要:HttpClient的使用-爬虫学习(一) Apache真是伟大,为我们提供了HttpClient.jar,这个HttpClient是客户端的http通信实现库,这个类库的作用是接受和发送http报文,引进这个类库,我们对于http的操作会变得简单一些,事不宜迟,赶快介绍。 在将这个HttpClient之前,我们必须弄清两个概念:URL和URI URI(Universal Resource Identify),通用资源标识符,而URL(Uniform Resource Locator),统一资源定位符,两个有什么区别,其实就是范围大小的问题,URI是包含URL的,URI由访问资源的命名机...
阅读全文