Fork me on GitHub
共 45 页: 首页 上一页 5 6 7 8 9 10 11 12 13 下一页 末页
摘要:Disruptor-NET算法(是一种无锁算法)需要我们自己实现某一种特定的内存操作的语义以保证算法的正确性。这时我们就需要显式的使用一些指令来控制内存操作指令的顺序以及其可见性定义。这种指令称为内存栅栏。内存一致性模型需要在各种的程序与系统的各个层次上定义内存访问的行为。在机器码与的层次上,其定义将影响硬件的设计者以及机器码开发人员;而在高级语言层次上,其定义将影响高级语言开发人员以及编译器开发人员和硬件设计人员。即,内存操作的乱序在各个层次都是存在的。这里,所谓的程序的执行顺序有三种:(1)程序顺序:指在特定CPU上运行的,执行内存操作的代码的顺序。这指的是编译好的程序二进制镜像中的指令的 阅读全文
posted @ 2013-12-30 22:52 张善友 阅读 (2769) 评论 (3) 编辑
摘要:SSDB是一个开源的高性能数据库服务器, 使用Google LevelDB作为存储引擎, 支持T级别的数据, 同时支持类似Redis中的zset和hash等数据结构, 在同时需求高性能和大数据的条件下, 作为Redis的替代方案.已经有了c#的api,在Mono上跑了一下 阅读全文
posted @ 2013-12-29 20:21 张善友 阅读 (36040) 评论 (13) 编辑
摘要:硬件和系统配置操作系统Ubuntu13.04系统位数64CPUIntel(R) Core(TM)2 Duo CPU内存4G硬盘Seagate ST2000DM001-1CH164测试工具PostgreSQL-9.1.11 测试工具工具名称pgbench数据量200W(整个数据库大小约为300M)模拟客户端数4线程数4测试时间60秒准备命令:pgbench -i -s 20 pgbenchdb测试命令:pgbench -r -j4 -c4 -T60 testdb 配置文件默认的配置配置文件是保存在/etc/postgresql/VERSION/main目录下的postgresql.conf文件如 阅读全文
posted @ 2013-12-28 23:18 张善友 阅读 (19580) 评论 (0) 编辑
摘要:ADO.NET连接SQL Server有时候联机会无故的中断 (例如闲置过久或是交易时间太长等因素),这时又要重新连接,在.NET Framework 4.5之前,这件事情要由开发人员自己依照ADO.NET的SqlException来判断并自行重试,重试的算法也要由开发人员来自定义,所以SQL Database的CAT (Customer Advisory Team) 开发了Transient F... 阅读全文
posted @ 2013-12-28 18:58 张善友 阅读 (1393) 评论 (0) 编辑
摘要:2013年12月26日,由51CTO独家举办的2013年度IT博客大赛圆满落幕,荣幸跻身10强[http://fellow.51cto.com/art/201312/425528.htm],首先感谢各位评委和众多网友的大力支持和51CTO提供的这个平台,完全超越我的预期,参加51CTO组织的“2013年度IT博客大赛”的目标很简单,就是希望自己的博客能够被更多的人看见,让社区消除对.NET的偏见,... 阅读全文
posted @ 2013-12-28 12:01 张善友 阅读 (848) 评论 (0) 编辑
摘要:管道概念 POSIX多线程的使用方式中, 有一种很重要的方式-----流水线(亦称为“管道”)方式,“数据元素”流串行地被一组线程按顺序执行。它的使用架构可参考下图: 以面向对象的思想去理解,整个流水线,可以理解为一个数据传输的管道;该管道中的每一个工作线程,可以理解为一个整个流水线的一个工作阶段stage,这些工作线程之间的合作是一环扣一环的。靠输入口越近的工作线程,是时序较早的工作... 阅读全文
posted @ 2013-12-27 22:40 张善友 阅读 (69500) 评论 (5) 编辑
摘要:CaptchaMvc是一个有弹性的、简单的解决方案,它能够解决你项目中所有与验证码相关的问题。你需要做的所有事情就是向你的项目中添加一个类库,添加之后验证码就准备就绪了。该项目拥有使用验证码所需要的所有内容:有两种类型的验证码,普通的和数学的支持在session或者cookie中存储验证码支持“智能验证码”能够很容易地扩展默认实现CaptchaMvc项目也在不断地演变,我会尽量支持所有人提出的需求。我认为这些就是区分它和其他项目的主要内容。CaptchaMvc项目支持ASP.NET MVC 3、4和5,这些版本之间几乎没有什么不同,仅仅是类库中使用了MVC 4中添加的AllowAnonymou 阅读全文
posted @ 2013-12-26 06:48 张善友 阅读 (3669) 评论 (1) 编辑
摘要:单页面应用程序(SPA)[使用JavaScript、CSS和HTML强大的功能,可以构建一个单页面应用程序(SPAs)],它提供了丰富的用户体验页面。导航技术和AJAX提供必要的功能,而不用重新加载页面. 由于成熟的web标准技术javascript,CSS,和HTML,使得SPA发展壮大。所有这些可以用来构建功能全面的用户接口包括一个web页面,在页面内使用一个或更多的技术导航到不同的内容。而... 阅读全文
posted @ 2013-12-21 11:51 张善友 阅读 (3365) 评论 (0) 编辑
摘要:.NET 4.5.1, .NET 4.5 和 .NET 4.0 均基于 .NET 4.0 CLR,而 .NET 4.5 对 CLR进行了升级和Bug修复..NET 4.0 - 4.0.30319.1 (.NET 4.0 的第一个版本).NET 4.0 - 4.0.30319.296 (.NET 4.... 阅读全文
posted @ 2013-12-17 22:48 张善友 阅读 (3126) 评论 (1) 编辑
摘要:远程文件系统的访问有很多种不同的实现方式,一些常见的连接方式比其它特定情况下的更有用。最著名的一个例子就是微软的通用互联网文件系统(CIFS),它可以容许微软Windows“映射网络驱动器”并利用资源管理器对网络进行“浏览”。另一个是最早由太阳计算机系统开发的网络文件系统(NFS),作为美国电话电报公司开发的UNIX系统配置已经有15年的历史了。尽管还存在几十种其他的选择,但这两种系统占... 阅读全文
posted @ 2013-12-15 16:17 张善友 阅读 (7454) 评论 (2) 编辑
摘要:32feet.NET[http://32feet.codeplex.com/]是shared-source的项目,支持CF.net 2.0以及桌面版本.NET framework,提供短距离领域(personal area networking technologie)的通信功能,支持bluetooth,Infrared(IrDA)红外等. 苹果在今年发布iOS7的同时,推出了基于蓝牙4.0开发... 阅读全文
posted @ 2013-12-15 14:39 张善友 阅读 (2819) 评论 (0) 编辑
摘要:Coevery是开源的.NET Web平台项目,力争打造一个开放而鲁棒的CRM系统,采用Orchard架构,并使用AngularJS改善页面体验。作为一个后发优势的CRM 产品,Coevery 具有一些后期发展的优势,特别采用非常现代 技术。像: 单页面应用程序 (SPA),响应设计, ASP.NET API等等,而且开发公司是个国内的公司:http://www.novasoftware.cn/... 阅读全文
posted @ 2013-12-14 18:25 张善友 阅读 (5437) 评论 (1) 编辑
摘要:什么是MindMap? MindMap(被译成思维导图或心智图)是一种思维工具,由英国的记忆之父托尼-博赞发明。 MindMap是一种新的思维模式,它将左脑的逻辑、顺序、条例、文字、数字,以及右脑的图像、想像、颜色、空间、整体等各种因素全部调动起来,把一长串枯燥的信息变成彩色的、容易记忆的、有高度组织性的图,它绘制起来非常简单,而且十分有趣这样。利用MindMap不但可以增强思维能力,提升... 阅读全文
posted @ 2013-12-14 16:34 张善友 阅读 (1602) 评论 (0) 编辑
摘要:Opserver是闻名遐迩的网站Stack Overflow的开源监控解决方案,由Stack Exchange发布。它基于.NET框架构建,这在监控工具领域有些与众不同。旨在为每个受监控系统的健康状况提供一个快速的总体视图,还允许用户使用下钻方法进行深入挖掘。Nick Craver是Opserver... 阅读全文
posted @ 2013-12-14 08:33 张善友 阅读 (4366) 评论 (5) 编辑
摘要:NetMQ 是 ZeroMQ的C#移植版本。ZeroMQ是一个轻量级的消息内核,它是对标准socket接口的扩展。它提供了一种异步消息队列,多消息模式,消息过滤(订阅),对多种传输协议的无缝访问。NetMQ 也是一个社区开源项目,网站在Github上 https://github.com/zerom... 阅读全文
posted @ 2013-12-08 20:06 张善友 阅读 (25311) 评论 (15) 编辑
摘要:C#实现DNS解析服务有一个开源项目ARSoft.Tools.Net, ARSoft.Tools.Net是一个非常强大的开源DNS控件库,包含.Net SPF validation, SenderID validation以及DNS Client、DNS Server接口。使用该接口可轻松实现DNS客户请求端及服务器解析端。项目地址:http://arsofttoolsnet.codeplex.com/。用法可以参考这篇文章《【原创】C#编程实现DNS Client和Server》。Codeplex上还有一个HDDevWebTeam开发的一款智能DNS服务器,实现不同网络运行商用户请求同一个域 阅读全文
posted @ 2013-12-08 14:50 张善友 阅读 (5436) 评论 (1) 编辑
摘要:MSBuild 是 Microsoft 和 Visual Studio的生成系统。它不仅仅是一个构造工具,应该称之为拥有相当强大扩展能力的自动化平台。MSBuild平台的主要涉及到三部分:执行引擎、构造工程、任务。其中最核心的就是执行引擎,它包括定义构造工程的规范,解释构造工程,执行“构造动作”;构造工程是用来描述构造任务的,大多数情况下我们使用MSBuild就是遵循规范,编写一个构造工程;MSB... 阅读全文
posted @ 2013-12-01 20:25 张善友 阅读 (62181) 评论 (2) 编辑
摘要:Ostrich 是twitter用于监控服务器性能的一个scala库,项目地址https://github.com/twitter/ostrich, 主要功能是收集、展示统计信息, 同时也提供了关闭服务器、重新加载配置、 监测服务器有效性等简易控制功能, 以及获取线程、GC、以及Profile等调试和性能信息。GitHub上有一个C#的移植版本OstrichNet,移植版本只支持收集、展示统计信息... 阅读全文
posted @ 2013-11-30 14:21 张善友 阅读 (975) 评论 (0) 编辑
摘要:有3篇文档详细介绍http://kb.linuxvirtualserver.org/wiki/Windows_Servers_in_LVS/DR_and_LVS/TUN_Clustershttp://blog.loadbalancer.org/direct-server-return-on-windows-2008-using-loopback-adpter/LVS + KEEPALIVED + WINDOWS SERVER 2008 R2 ------高可用负载均衡在Windows Server上需要做下面的配置:1、安装microsoft loopback adapter。2、配置micr 阅读全文
posted @ 2013-11-17 19:20 张善友 阅读 (4035) 评论 (2) 编辑
摘要:什么是CS-Script?CS-Script是一种以CLR(公共语言运行库)为基础的脚本系统,它使用ECMA标准的C#作为编程语言,它面向微软的CLR运行库(.net 2.0/3.0/3.5/4.0)并且完全支持Mono(http://www.oschina.net/p/mono)。CS-Script是开源的,它的许可协议:http://www.csscript.net/Licence.html。支持商业化用途。CS-Script 将c#语言与.net框架类库强大丰富的功能结合在一起,组成了灵活的脚本系统。它适用于自动化解决各种编程任务,对于系统/网络管理员、研发人员、测试人员很实用。CS-S 阅读全文
posted @ 2013-11-08 06:23 张善友 阅读 (5401) 评论 (0) 编辑
摘要:MongoDB是个非常棒的解决方案,不过困扰我们的是很少有人了解过关于它的一些限制。这样的事情正在不断上演:人们看到MongoDB的限制,心里却认为这些是它的Bug。 本文列举了颇让作者困惑的一些MongoDB限制,如果你也打算使用MongoDB,那么至少要提前了解这些限制,以免遇到的时候措手不及。 阅读全文
posted @ 2013-11-06 22:19 张善友 阅读 (10671) 评论 (1) 编辑
摘要:用 Redirect 方法可将浏览器重定向到另一个 URL,而不是将内容发送给用户。 这里有一篇文章介绍使用Redirect《Using Response.Redirect Effectively》 ,文章详细的讨论了Response.Redirect ,给出了一段代码: public static class HttpResponseExtensions { publi... 阅读全文
posted @ 2013-10-27 07:30 张善友 阅读 (6447) 评论 (1) 编辑
摘要:在邮件列表和讨论区中有很多与REST和Web API相关的讨论,下面仅是我个人对这些问题的一些见解,并没有绝对的真理,InnoQ的首席顾问Oliver Wolf在GOTO Berlin大会上开始自己的演讲“Web API设计原则”时如是说。不要考虑端点。SOAP有一个单独入口点的外观。相比之下Web有很多入口点,它们建立在关系上,彼此之间相互连接,并且以超媒体作为关键要素。为了不让你的API成为一个只有一种接入方式的黑洞,你应该使用超媒体控制按照对听众有意义的表现方式去链接你的资源。不要在API中暴露领域模型。在很多模型中存在的一个问题便是它们仅包含数据,缺乏所有形式的行为,也就是所谓的贫血模 阅读全文
posted @ 2013-10-23 06:24 张善友 阅读 (2457) 评论 (0) 编辑
摘要:台湾微软的一系列Visual Studio跨平台开发Xamarin的资料,上面还有视频。具体参看 http://www.microsoft.com/taiwan/newsletter/library/edm2013/130717vstudio_edm/ ,讲师的博客上也有一系列的文章http://w... 阅读全文
posted @ 2013-10-20 22:24 张善友 阅读 (2355) 评论 (1) 编辑
摘要:世界的大数据包含一个庞大而充满活力的生态系统,但一个开放源码项目上面有这一切,那就是 Hadoop 的王朝。 Hadoop 是事实上的标准的分布式的数据运算。Hadoop 提供了一个 MapReduce 框架编写的应用程序处理大量的结构化和半结构化数据并行跨大型集群的机器以非常可靠和容错的方式。此外... 阅读全文
posted @ 2013-10-20 07:29 张善友 阅读 (1387) 评论 (0) 编辑
摘要:cnbeta新闻:微软正式发布Visual Studio 2013 RTM版,微软还发布了Visual Studio 2013的最终版本、.NET 4.5.1以及Team Foundation Server 2013。下面我们体验下Visual Studio 2013 Web开发方面有哪些特性,具体可以参看http://www.asp.net/visual-studio/overview/2013/release-notes。1、.NET Framework 2.0/3.0/3.5/4.0/4.5/4.5.1 支持Visual Studio 2013 从更方面来说比VS2012有很多改进的地方 阅读全文
posted @ 2013-10-18 21:41 张善友 阅读 (64173) 评论 (29) 编辑
摘要:Microsoft 在 .NET Framework 4 中添加了一个名为可移植类库 (PCL) 的新功能。 利用 PCL,您可以有选择性地面向 .NET Framework、Silverlight 和 Windows Phone 以及 Windows 应用商店和 Xbox 360 的多个版本,所有这些均可从单个 Visual Studio .NET 项目中实现。 当您选择 PCL 项目模板时,Visual Studio 会自动确保代码仅使用每个所选目标平台上存在的库。 这样就无需使用繁重的预处理器指令和多个生成目标。 另一方面,该功能对可从库调用哪些 API 设定了一些限制;有关 PCL 功 阅读全文
posted @ 2013-10-17 13:08 张善友 阅读 (3702) 评论 (4) 编辑
摘要:Jexus不仅支持ASP.NET,而且能够通个自带的PHP-FCGI服务以及PHP-FPM等方式灵活支持PHP而且还可以以.NET(Phalanger)方式支持PHP。 阅读全文
posted @ 2013-10-14 22:12 张善友 阅读 (2746) 评论 (11) 编辑
摘要:Nsubstitute是一个开源的框架,源码是C#实现的。你可以在这里获得它的源码:https://github.com/nsubstitute/NSubstitute NSubstitute 更注重替代(Substitute)概念。它的设计目标是提供一个优秀的测试替代的.NET模拟框架。它是一个模拟测试框架,用最简洁的语法,使得我们能够把更多的注意力放在测试工作,减轻我们的测试配... 阅读全文
posted @ 2013-10-13 10:44 张善友 阅读 (1975) 评论 (0) 编辑
摘要:过去几个月,DevOps on Windows网站推出了一系列文章,详细讲解了开发者应怎样创建便于运维的Windows服务。这一系列文章详细分析了如何克服在运维部门看来最困难的部分:Windows服务的安装与其启动阶段。 其中有些困难是由于安装基于.Net的Windows服务时,普遍使用了InstallUtil这个非原生的Windows工具。同时要特别当心启动阶段的代码,它应在启动失败时确保提供... 阅读全文
posted @ 2013-10-12 23:37 张善友 阅读 (2062) 评论 (1) 编辑
摘要:备注:,将我的博客内容整理成册,首先会在博客里优先发布,后续可能的话整理成电子书,主要从linux的最基础内容开始进入Linux的Mono开发方面的话题。本文是我整理博客内容的一篇文章。LJMA 是Linux+Jexus+MariaDB+ASP.NET的简写,其实就是把Jexus, MariaDB以及ASP.NET安装在Linux系统上,组成一个环境来运行ASP.NET的应用。Jexus是Linux下的基于Mono编写的WEB服务软件,而MariaDB是比较小型的数据库软件,ASP.NET是由微软在.NET Framework框架中所提供,开发Web应用程序的类库,通过Mono我们可以让他在L 阅读全文
posted @ 2013-10-10 21:20 张善友 阅读 (13359) 评论 (17) 编辑
摘要:操作系统很早就开始使用内存映射文件(Memory Mapped File)来作为进程间的共享存储区,这是一种非常高效的进程通讯手段。.NET 4.0新增加了一个System.IO. MemoryMappedFiles命名空间,其中添加了几个类和相应的枚举类型,从而使我们可以很方便地创建内存映射文件。... 阅读全文
posted @ 2013-10-06 14:33 张善友 阅读 (3603) 评论 (2) 编辑
摘要:DevOps(英文Development和Operations的组合)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。[1] 它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。以下几方面因素可能促使一个组织引入DevOps:使用敏捷或其他软件开发过程与方法业务负责人要求加快产品交付的速率虚拟化和云计算基础设施(可能来自内部或外部供应商)日益普遍数据中心自动化技术和配置管理工具的普及有一种观点认为,目前占主导地位的“传统”美国式管理风格(“斯隆模型 vs 丰田模型”)会导致“烟囱 阅读全文
posted @ 2013-10-04 21:04 张善友 阅读 (2081) 评论 (0) 编辑
摘要:DES是一种对称加密(Data Encryption Standard)算法,于1977年得到美国政府的正式许可,是一种用56位密钥来加密64位数据的方法。一般密码长度为8个字节,其中56位加密密钥,每个第8位都用作奇偶校验。DES算法一般有两个关键点,第一个是加密模式,第二个是数据补位,加密模式的主要意义就是,加密算法是按块进行加密的,例如 DES ,是 64Bit 一个块的进行加密,就是每次加密 8 个字节,因此每次输入八个字节的明文输出八个字节密文,如果是 16 个字节,那么分成两个块依次进行加密,问题就出现在这里,如果明文是 1234567812345678,分块分别进行加密,那么加密 阅读全文
posted @ 2013-10-02 09:02 张善友 阅读 (2860) 评论 (0) 编辑
摘要:Windows Communication Foundation (WCF) 是一个相当优秀的服务框架,当我们讨论跨平台的服务的时候,虽然WCF对WebService的支持还行,在面对一些高级应用的不太好,微软重新发展了ASP.NET WebAPI框架,关于这两个框架的讨论可以看我另外一篇文章《WCF和ASP.NET Web API在应用上的选择》 。在讨论跨平台的Web服务上,ASP.NET Web API是一个重要选项,在本文中,我将展示如何利用 ServiceStack (开放源代码.NET 和Mono REST 服务框架) 来完成这一任务,不用离开 Visual Studio 或 Microsoft.NET/Mono,除了 ServiceStack 之外还有个Nancy的框架,具体可以看《.NET的微型Web框架 Nancy》。 阅读全文
posted @ 2013-10-01 11:14 张善友 阅读 (27713) 评论 (17) 编辑
摘要:微软基础类库(Base Class Library)团队已经完成了.NET不可变集合的正式版本,但不包括ImmutableArray。与其一起发布的还包括针对其它不可变对象类型的设计指南。 如果你需要在多个线程中安全地共享集合,并且允许每个线程在需要时对其内容进行改变。这种场景就是不可变集合所设计的初衷。只读集合在使用时需要复制集合中的全部内容,而新的不可变集合可以以一种更高性能的方式从一个现有... 阅读全文
posted @ 2013-09-30 22:00 张善友 阅读 (1371) 评论 (0) 编辑
摘要:XB 软件公司最近发布了JavaScript UI 库Webix ,其中包含的组件超过45个,用这些组件可以构建跟HTML5 和 CSS3 兼容的程序,这些程序不仅能在个人电脑上运行,还能用在iOS、 Android 和 Blackberry 设备上运行。它能访问离线web存储、地理位置( geolocation) API、能在画布上绘图,并集成了jQuery 和 Backbone.js。Webix提供了简单的服务端集成控件,PHP、 ASP.NET、Java和 Ruby等各种技术都可以跟客户端的Webix部件直接通讯。此外这些组件还能用在一些MVC框架中,比如RoR、ASP.NET MVC、 阅读全文
posted @ 2013-09-29 22:02 张善友 阅读 (1761) 评论 (0) 编辑
摘要:Creating a Clean, Minimal-Footprint ASP.NET WebAPI Project with VS 2012 and ASP.NET MVC 4Building Out a Clean, REST-ful Web Api Service with a Minimal Web Api ProjectMultitenancy Application Metadata driven (using WCF 4.0, WWF 4.0) http://www.codeproject.com/Articles/650284/Multitenancy-Application- 阅读全文
posted @ 2013-09-20 12:36 张善友 阅读 (1254) 评论 (0) 编辑
摘要:使用 MSBuild 和 Windows Installer XML 执行自动发布: http://msdn.microsoft.com/zh-cn/magazine/cc163456.aspx用于创建可靠的最佳实践 Build,第 1 部分:http://msdn.microsoft.com/zh-cn/magazine/dd419659.aspx用于创建可靠的最佳实践 Build,第2 部分:http://msdn.microsoft.com/zh-cn/magazine/dd483291.aspx 阅读全文
posted @ 2013-09-18 13:08 张善友 阅读 (751) 评论 (0) 编辑
摘要:通过Edge.js项目,你可以在一个进程中同时运行Node.js和.NET代码。在本文中,我将会论述这个项目背后的动机,并描述Edge.js提供的基本机制。随后将探讨一些Edge.js应用场景,它在这些场景中可以为你开发Node.js程序提供帮助。 为何要使用Edge.js? 虽然许多应用程序只能用Node.js编写,不过有些情况下又需要综合Node.js和.NET两者的优点。基于以下几个理由... 阅读全文
posted @ 2013-09-16 21:18 张善友 阅读 (8377) 评论 (5) 编辑
共 45 页: 首页 上一页 5 6 7 8 9 10 11 12 13 下一页 末页