崔文远 Troy Cui 老崔先生的上海生活、技术博客

还是连接池的问题,终于搞定了

上个月中旬提到过被Web.config中数据库连接池 Max Pool Size的问题折腾了,但是增加到200个最大连接池,还是会报错:

System.InvalidOperationException: Timeout expired.  The timeout period elapsed prior to obtaining a connection from the pool.   This may have occurred because all pooled connections were in use and max pool size was reached.

More...

最近被Web.config中数据库连接池 Max Pool Size的问题折腾了

本来Web.config中数据库连接字符串什么都不写,MSSQL数据源默认为100个,近期升级系统,无意间写了一下,用户访问量一大就奇慢无比,另外还弄了一个Connect Timeout=60,造成本来运行了3年的系统忽然变慢,找了很久原因在找到。

特此记录一下,特别是跨国读取数据库时,怎么平衡这里的设置是个考验。

Tags:

发布: cuiwenyuan 分类: Web技术 评论: 1 浏览: 17

在.NET中实现AOP的7种姿势

英文原文:《7 Approaches for AOP in .Net》,我是个搬运工。感觉大部分人推荐用PostSharp/Cecil,好用且高效。我看了一下,虽然PostSharp目前收费,但按照Developer授权的价格还可以接收的,工欲善其事必先利其器,值得的!

---------------------------------------------------------------------------------------
1、Remoting Proxies
优点:由于有.Net框架支持,容易实现
缺点:重量级较大,只能用于interface或MarshalByRefObjects

2、Deriving from ContextBoundObject
优点:最容易实现,原生支持调用截获
缺点:非常耗费性能

3、编译时生成子类
产品:( Rhino Proxy )
优点:容易理解
缺点:只能用于Interfaces 或 virtual方法

4、运行时生成子类
产品:( Castle Dynamic Proxy )
优点:容易理解,非常灵活
缺点:实现复杂 (但已有现成类库),只能用于Interfaces 或virtual方法

5、挂钩分析用的API
产品:( Type Mock )
有点:非常强大
缺点:性能存在疑问?实现复杂(用到COM,需要另一个运行程序,等等)

6、编译时IL修改 
产品:( Post Sharp / Cecil )
优点:非常强大,性能非常好。
缺点:非常难以实现

7、运行时修改IL
产品:( Post Sharp / Cecil )
优点:非常强大,性能很好
缺点:非常难以实现

More...

Tags:

发布: cuiwenyuan 分类: Web技术 评论: 0 浏览: 24

Daylight Saving Time

关于这个Daylight Saving Time,其实做IT这么久了,才真正在项目中涉及到,近期我在思考如下问题:

1、如何设置数据库?  特别是主流的Oracle、MSSQL和MYSQL

2、程序中如何获取值?特别是C#中,怎么获取?

3、程序中如何显示值?特别是C#中?


有这方面经验的,有国际化经验的朋友,请看到信息后分享一下,谢谢!

 

 

DST (Daylight Saving Time)

More...

Tags:

发布: cuiwenyuan 分类: Web技术 评论: 0 浏览: 11

避免页面被劫持的新办法

近期碰到一个问题,关于如何禁止页面在框架中打开的,觉得好玩,分享一下。

以前经常用前端的一段js代码,但防君子不防小人,别人还是可以通过禁用js,或动态修改js来引用。

<script>

        if (top.location !== self.location) {

            top.location = self.location;

        }

</script>

想在自己的iframe中打开一个网站,但是怎么都打不开,F12调试一下,看到如下截图的报错,信息如下:Refused to display 'https://www.cuiwenyuan.com/Logon.aspx' in a frame because it set 'X-Frame-Options' to 'SAMEORIGIN'.

More...

Tags:

发布: cuiwenyuan 分类: Web技术 评论: 0 浏览: 22

解决ZUI/Bootstrap网站出现GET .woff 404 (Not Found)的问题

 IIS下使用ZUI或者Bootstrap类的前端UI时,常会用到.woff字体,但是默认IIS不会解析这个后缀的文件(跟邮件.msg后缀一样),我们可以在设置woff字体的MIME类型,但是显然太麻烦了,万一碰到没有权限去服务器配置这个的时候,该怎么办呢?利用Web.Config就能做到,很简单。

zui.get.woff.error.jpg

More...

Tags: Bootstrap ZUI

发布: cuiwenyuan 分类: Web技术 评论: 0 浏览: 35

解决The OLE DB provider "OraOLEDB.Oracle" for linked server

MSSQL中的Linked Server我一直用于跟其它数据库的连接,特别是Oracle数据库的。重装了服务器之后,经常遇到读取Oracle数据库发生如下报错:“The OLE DB provider "OraOLEDB.Oracle" for linked server”,一直以为是Oracle数据库在国外,而MSSQL在国内的缘故,就没理他,一直优化查询语句,增加必要的筛选条件,以达到去除这个报错的目的,但是现在必须要读取很长一段时间的数据,只好硬着头皮解决一下。

More...

Tags:

发布: cuiwenyuan 分类: Web技术 评论: 0 浏览: 30

转:对ASP.NET程序员非常有用的85款工具2016版

这篇文章推荐的应用,我比较喜欢和在用的是Beyond Compare(收费版),另一个helpndoc(免费)打算用。还有一个Sandcastle可以根据C#的类及注释生成chm文档没在下文介绍,但我也想用。

介绍

这篇文章列出了针对ASP.NET开发人员的有用工具。

More...

Tags:

发布: cuiwenyuan 分类: Web技术 评论: 0 浏览: 72

Redis 32位异常:MISCONF Redis is configured to save RDB snapshots

Windows 32位的Redis一直有些问题,前一阵经常重新启动服务,今天终于抓到一个报错信息:“MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk Redis被配置为保存数据库快照,但它目前不能持久化到硬盘。用来修改集合数据的命令不能用。请查看Redis日志的详细错误信息。“,网上查了一下,使用了”通过redis-cli连接到服务器后执行命令:config set stop-writes-on-bgsave-error no“,但接着发现有篇文章介绍这样做不好,其实是掩耳盗铃的做法,这只是让程序忽略了这个异常,使得程序能够继续往下运行,但实际上数据还是会存储到硬盘失败!,说是有个参数可以解决:”修改vm.overcommit_memory=1“,但我死活没找到在哪里修改,先记录下来,监控一下运行的情况再说。


不光是32位的Redis,64位的版本也是。有不少人也遇到类似的问题,并且给出了很好的分析(详见:http://www.linuxidc.com/Linux/2012-07/66079.htm),简单地说:Redis在保存数据到硬盘时为了避免主进程假死,需要Fork一份主进程,然后在Fork进程内完成数据保存到硬盘的操作,如果主进程使用了4GB的内存,Fork子进程的时候需要额外的4GB,此时内存就不够了,Fork失败,进而数据保存硬盘也失败了。

Tags: Redis

发布: cuiwenyuan 分类: Web技术 评论: 0 浏览: 58