摘要: 策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。抽象策略角色: 策略类,通常由一个接口或者抽象类实现。具体策略角色:包装了相关的算法和行为。环境角色:持有一个策略类的引用,最终给客户端调用。Context(应用场景):1、需要... 阅读全文
posted @ 2015-11-17 09:35 zzhi.wang 阅读(1061) 评论(0) 推荐(0) 编辑
摘要: /// /// 事件数据 /// internal sealed class NewMailEventArgs : EventArgs { private readonly String m_from, m_to, m_subject; pub... 阅读全文
posted @ 2015-11-16 18:45 zzhi.wang 阅读(197) 评论(0) 推荐(0) 编辑
摘要: IConfigurationSectionHandler处理对特定的配置节的访问。示例代码: public class MyConfig : IConfigurationSectionHandler { public int MyNum1 { get; set; } ... 阅读全文
posted @ 2015-11-16 16:12 zzhi.wang 阅读(688) 评论(0) 推荐(0) 编辑
摘要: 今天在看Nop源码时,PluginManager中用到了ReaderWriterLockSlim类,于是简单做个笔记。ReaderWriterLockSlim表示用于管理资源访问的锁定状态,可实现多线程读取或进行独占式写入访问。使用ReaderWriterLockSlim来保护由多个线程读取但每次只... 阅读全文
posted @ 2015-11-16 15:08 zzhi.wang 阅读(615) 评论(0) 推荐(0) 编辑
摘要: 配置:说明需求:经过和运维人员确定,我们需要一个记录所有级别信息的日志文件,例如:log.txt,供运维抓取每天的日志信息。但是:我们不能把所有日志信息一直记录到log.txt,一,log.txt越来越大;二,log.txt包含每天的信息。策略:根据如上配置,我们会在指定目录下生成log.txt 文... 阅读全文
posted @ 2015-11-13 12:13 zzhi.wang 阅读(765) 评论(0) 推荐(0) 编辑
摘要: 关于Redis分布式锁的参考链接:http://redis.io/topics/distlock。在我们项目中,之前琢磨用:ServiceStack.Redis,发现ServiceStack.Redis收费的,每小时内操作6000次以上报错:“The free-quota limit on '600... 阅读全文
posted @ 2015-11-13 12:04 zzhi.wang 阅读(637) 评论(0) 推荐(0) 编辑
摘要: 如果你的vs2013 无法打开 .sdf 数据库文件。那么SQL Server Compact/SQLite Toolbox,可以帮助你。下载安装后,vs2013->tools->SQL Server Compact/SQLite Toolbox打开你的.sdf文件。 阅读全文
posted @ 2015-11-11 14:59 zzhi.wang 阅读(1093) 评论(0) 推荐(0) 编辑
摘要: 生成唯一号:思路,根据yymmddhhmmss+自增长号+唯一服务器号(SystemNo)生成唯一码,总长度19,例如:1509281204550000101.publicclassUniqueNumber{privatestaticlongnum = 0;//流水号privatestaticobj... 阅读全文
posted @ 2015-09-26 00:01 zzhi.wang 阅读(3782) 评论(0) 推荐(0) 编辑
摘要: 在表中有这么一索引UNIQUE KEY `customer_id` (`customer_id`,`item_id`,`ref_id`)问1.这种多列唯一索引在事务中select for update下是不是行锁?如下:事务1,CREATE DEFINER=`root`@`localhost` PR... 阅读全文
posted @ 2015-08-27 14:54 zzhi.wang 阅读(2190) 评论(0) 推荐(0) 编辑
摘要: 之前做mysql事务测试的时候都是在mysql服务端存储过程里面包含事务。例如:CREATE DEFINER=`root`@`localhost` PROCEDURE `Test`(out debitb decimal(14,2))BEGIN-- SET TRANSACTION ISOLATION ... 阅读全文
posted @ 2015-08-27 09:54 zzhi.wang 阅读(960) 评论(0) 推荐(0) 编辑
摘要: 针对多个作业:如何描述各个跑批任务之间的顺序,紧前、紧后关系,实现灵活调度。例如:A完成则B开始,B完成C开始。对quartz.net 进行了查阅,能实现如上业务,如下图:测试代码:using System;using System.Collections.Generic;using System.... 阅读全文
posted @ 2015-08-25 09:49 zzhi.wang 阅读(1110) 评论(0) 推荐(0) 编辑
摘要: 1、执行事务:20260 次写日志: 耗时11.59分不写日志: 耗时11.55分异步日志: 耗时12.49分 (个人电脑,.net 线程池调用线程写日志可能比主线程直接写更耗时)纯写日志:1秒之内异步纯写日志:1秒之内2、纯写日志50线程并发,while循环持续2分钟写日志,总循环505... 阅读全文
posted @ 2015-08-20 19:30 zzhi.wang 阅读(1025) 评论(0) 推荐(0) 编辑
摘要: 针对上一节做一些针对公司业务的测试。我们来做一些压力测试。服务器配置:操作系统: centos 5.6-64CPU: 8核内存: 8G硬盘:sas文件系统:linuxMySQL:5.6.网卡: 100M网络环境: 良好数据库表:c_account_customer,这里用来根据id查询、更新某些字段... 阅读全文
posted @ 2015-08-20 12:06 zzhi.wang 阅读(1590) 评论(0) 推荐(0) 编辑
摘要: MySQL 5.6 , InnoDB存储引擎,默认事务隔离级别(REPEATABLE-READ)初始sql 脚本如下:CREATE DEFINER=`root`@`localhost` PROCEDURE `Test`(out debitb decimal(14,2))BEGINSTART TRAN... 阅读全文
posted @ 2015-08-19 14:31 zzhi.wang 阅读(3575) 评论(0) 推荐(0) 编辑
摘要: Redis的强劲性能很大程度上是由于其将所有数据都存储在了内存中,为了使Redis在重启之后仍能保证数据不丢失,例如:(1) 将Redis作为数据库使用(存储历史数据)。(2) 将Redis作为缓存服务器使用,如果缓存被穿透后会对性能造成很大影响,所有缓存同时失效会导致缓存雪崩,从而使服务器无法响应... 阅读全文
posted @ 2015-08-11 18:40 zzhi.wang 阅读(818) 评论(0) 推荐(0) 编辑
摘要: redis事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。redis事务还能保证事务中的命令要么全部被执行,要么全部都不执行。 redis事务主要包括multi、exec、discard和watch命令。multi命令用来开启一个事务,当mult... 阅读全文
posted @ 2015-08-07 15:57 zzhi.wang 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 到目前为止,Redis 支持的键值数据类型如下:字符串(String)哈希(Map)列表(list)集合(sets)有序集合(sorted sets)1.String字符串类型string是redis最基本的类型,一个key对应一个value。string类型是二进制安全的。意思是redis的str... 阅读全文
posted @ 2015-08-07 15:56 zzhi.wang 阅读(1589) 评论(0) 推荐(0) 编辑
摘要: Redis 安装步骤1.下载Redis(1)获取权限:su root(2)规划好下载的目录:mkdir /usr/local/soft/(3)进入新建的目录,准备下载:cd /usr/local/soft/(4)下载redis最新稳定版:wgethttp://download.redis.io/re... 阅读全文
posted @ 2015-08-07 15:55 zzhi.wang 阅读(197) 评论(0) 推荐(0) 编辑
摘要: IIS7绑定多个HTTPS网站并应用自签名证书 阅读全文
posted @ 2015-07-22 18:10 zzhi.wang 阅读(1946) 评论(0) 推荐(0) 编辑
摘要: 用vs2012 打开web.config时,提示如下错误:“Value does not fall within the expected range”;中文提示:“值不在预期的范围内”解决方案:删除解决方案同目录下的.suo 文件。 阅读全文
posted @ 2015-07-16 16:58 zzhi.wang 阅读(4512) 评论(0) 推荐(0) 编辑