Friday, June 03, 2011

在某些特定性能要求下, 希望将动态的asp.net 文件转换成静态文件。

可用以下方式实现:

创建一个类: ResponseGenFileFilter

    public class ResponseGenFileFilter : Stream
    {

        private Stream m_sink;
        private long m_position;
        private FileStream fs;
        public ResponseGenFileFilter(Stream sink,string destPath)
        {
            m_sink = sink;
            fs = new FileStream(destPath, FileMode.Create, FileAccess.Write);
        }
        // The following members of Stream must be overriden.
        public override bool CanRead
        { get { return true; } }
        public override bool CanSeek
        { get { return false; } }
        public override bool CanWrite
        { get { return false; } }
        public override long Length
        { get { return 0; } }
        public override long Position
        {
            get { return m_position; }
            set { m_position = value; }
        }
        public override long Seek(long offset, System.IO.SeekOrigin direction)
        {
            return 0;
        }
        public override void SetLength(long length)
        {
            m_sink.SetLength(length);
        }
        public override void Close()
        {
            m_sink.Close();
            fs.Close();
        }
        public override void Flush()
        {
            m_sink.Flush();
        }
        public override int Read(byte[] buffer, int offset, int count)
        {
            return m_sink.Read(buffer, offset, count);
        }
        // Override the Write method to filter Response to a file.
        public override void Write(byte[] buffer, int offset, int count)
        {
            //Write out the response to the browser.
            m_sink.Write(buffer, 0, count);
            //Write out the response to the file.
            fs.Write(buffer, 0, count);
        }

    }
然后在ASP.NET 的response 处添加如下代码
Response.Filter = new ResponseGenFileFilter(Response.Filter, genPath);
对ASP.NET 和ASP.NET MVC 都有效
ASP.NET 加在 onInit 函数里面
ASP.NET MVC 加在controller action 方法上。
 
Friday, June 03, 2011 3:23:43 AM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 
 Thursday, June 02, 2011

有时候需要统计数据库里面的空间占用情况, 用以下SQL实现

SELECT 
TableName = obj.name,  
TotalRows = prt.rows,  
[SpaceUsed(KB)] = SUM(alloc.used_pages)*8  
FROM sys.objects obj  
JOIN sys.indexes idx on obj.object_id = idx.object_id  
JOIN sys.partitions prt on obj.object_id = prt.object_id  
JOIN sys.allocation_units alloc on alloc.container_id = prt.partition_id  
WHERE 
obj.type = 'U' AND idx.index_id IN (0, 1)  
GROUP BY obj.name, prt.rows 
ORDER BY TableName 
Thursday, June 02, 2011 1:54:39 AM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 
 Thursday, September 30, 2010

在开发环境, Sqlserver 的LDF文件越来越大是很烦人的事情

用以下语句解决:

清除日志

DUMP TRANSACTION [库名] WITH NO_LOG

然后收缩数据

DBCC SHRINKDATABASE([库名]) 

 

Thursday, September 30, 2010 9:11:58 PM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 
 Friday, August 27, 2010

最近做asp.net的性能调整,用到几个工具:

1) SQLServer Performamnce tool

MS SQLServer 2005 以上自带的工具,包括 Sqlserver Profiler 和 Database engine tuning advisor

Sqlserver Profiler 能够剖析和监控sqlserver的运行状况, 并生成日志

Database engine tuning advisor 可以更具profiler 生成的日志来提出优化建议, 如添加索引等, 对于初步数据库优化非常好用。

2) Apache Benchmaking tool

这是 apache http server 自带的工具, 用以测试web服务器的请求响应指标:

虽然它的初衷是给apache 服务器用的, 当然也能用于其它web server 的性能测试

如 ab -n 100 -c 2 http://www.hifar.com/blog    就是以2个请求并发 访问web 页面100 次。 然后他会把web 服务的响应情况数据记录下来甚至有些简单的分析。

3) JetBrains dotTrace

这是一个商用软件, 用以剖析 Trace .NET 应用的运行状况。 支持.net 的 windows 应用程序。 web 应用程序和web service等。 可以检测出每个函数请求的cpu占用时间等。 对于性能问题的检查有很大的帮助。

Friday, August 27, 2010 3:17:17 PM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 

今天无意中发现了这个 flv 播放器: Vcastr

http://code.google.com/p/vcastr/

比jw player 小巧, 用起来也不错。

Flash | Flex | 视频
Friday, August 27, 2010 2:54:18 PM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 
 Monday, July 19, 2010

 

We supply spare parts for weaving factory on the web. There are 14,000 items on our
web http://www.italywind.com  for air jet,projectile,water jet and rapier looms.
 
  We supply both mechanical parts and electronic parts. They are not only for loom but
also for jacquard,dobby and accumulator.Each item has one picture with original code
number ,specification and price.All the parts are made in china with cheap price and
good quality approved by the globe customers

Monday, July 19, 2010 6:07:47 PM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 
 Friday, June 25, 2010

今天发现一个很有意思的东西.

Smokescreen, 利用HTML5 + js 解析 flash的swf 文件实现动画效果.  而不需要flash 插件.

http://smokescreen.us/

目前支持 Firefox, Chrome, Safari. 还不支持IE (IE8 的HTML 支持太差了)  特别值得一提的是 可以在iPhone 和iPad 上运行. 但是貌似我的Android 1.6 手机浏览器不支持.

虽然目前对swf兼容性有不少问题. 但是不失为一个在没有flash 插件情况下运行swf的解决方案. 同时也可见HTML 真的很强大.

Friday, June 25, 2010 9:52:05 PM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 
 Monday, March 01, 2010

BIND 是一套开源DNS server, 全名为Berkeley Internet Name Domain它是目前世界上使用最为广泛的DNS服务器软件,支持各种unix平台和windows平台。

安装过程如下:

1) 下载BIND 安装报 http://www.isc.org/products/BIND/  以 BIND9 为例

2) 解压 运行: BINDInstall.exe

缺省目录安装到: C:\WINDOWS\system32\dns 

同时安装windows 服务: ISC BIND

3) 装好以后 ISC BIND 服务直接运行是会报错的: 在 本地计算机 无法启动 ISC BIND 服务。错误 1067: 进程意外终止。
还需要配置

4) C:\WINDOWS\system32\dns\bin下,运行rndc-confgen.exe -a ,会自动在C:\WINDOWS\system32\dns\etc\下生成rndc.key

C:\WINDOWS\system32\dns\etc\ 下创建 named.conf

内容:

include "c:\windows\system32\dns\etc\rndc.key";
zone "." {
    type hint;
    file "c:\windows\system32\dns\etc\named.root";
};

4) 从http://www.internic.net/下载named.root文件,里面定义了全球的根DNS服务器,也放到C:\WINDOWS\system32\dns\etc\

地址是http://www.internic.net/zones/named.root,需要定期更新

 

Monday, March 01, 2010 1:39:06 PM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 
 Wednesday, February 24, 2010

这两天研究路由器的DDNS 无意中看到 DD-WRT。 http://www.dd-wrt.com/

DD-WRT 是一个基于linux 的开源固件 (Firmware)

它支持目前常用路由器。 如果把你的路由器固件刷成DD-WRT, 将可以提供很多原来没有的功能

如:

1. 支持花生壳等DDNS。
2. 支持VPN的PPTP客户端和PPTP服务器端设置,可以提供VPN接入。
3. 可以通过设置,轻松管理各种网络服务,例如封杀BT,电驴,迅雷等。
4. 支持UPNP和端口映射功能。
5. 可以轻松实现无线路由器的定时开关。
6. 可以利用Q0S、限速、限连接数等设置来优化宽带。
7. 支持多国语言,可以搭配802.1X协议,EAP(Extensible Authentication Protocol,可扩展认证协议)来增加网络认证应用。(Micro版只支持英文)
8. 支持IPv6、SNMP协议,SSH服务等。
9.打开很多无线宽带路由器隐藏的功能选项(视芯片而言);
10.增加无线宽带路由器的网络稳定性;
11.增加一些原本本不具备的功能(视芯片而言);
12.增强无线信号和传输覆盖范围,调整无线宽带路由器的发射/接收功率;
13.万能中继。
14. 脱机下载(需带USB)。
15. MP3播放(需带USB)。
16. 摄相监控(需带USB)。
17. 其它USB功能。

Wednesday, February 24, 2010 11:58:42 PM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 
 Monday, February 15, 2010

维护Windows 服务器和编写windows 下脚本会用到一些语句和的工具

1) PsTools http://technet.microsoft.com/en-us/sysinternals/bb896649.aspx

PsTools 是一系列命令行工具, 可以远程对计算机进行操作.

• PsFile - 显示远程打开的文件
• PsGetSid - 显示计算机或用户的 SID
• PsInfo - 列出有关系统的信息
• PsKill - 按名称或进程 ID 终止进程
• PsList - 列出有关进程的详细信息
• PsLoggedOn - 查看在本地通过资源共享(包含所有资源)登录的用户
• PsLogList - 转储事件日志记录
• PsPasswd - 更改帐户密码
• PsService - 查看和控制服务
• PsShutdown - 关闭并重新启动(可选)计算机
• PsSuspend - 暂停进程

2) 用命令行备份 sqlserver 2005 数据库

用sqlserver 自带 sqlcmd 命令

[SQLserver执行目录]\sqlcmd" -S[DB服务名] -e -E -Q "backup database [数据库名] to disk='[备份目标文件路径]'

3) 用命令行进行ftp操作

ncftp http://www.ncftpd.com/ncftp/

上传:
ncftpput -d logfile -u ftp-user-name -p ftp-password ftphost remote-folder local-filename

下载:
ncftpget -d logfile -u ftp-user-name -p ftp-password ftphost local-folder remote-filename

4) WinRar 的命令行操作

对整个目录包含子目录进行rar 压缩,-ao 表示仅对设有archive 属性标志的文件进行备份(用于增量备份)

winrar a -ao -agYYYYMMDD -m5 -md2048 -r -pPassword -ri5 -t target-rar-filename source-path

Monday, February 15, 2010 5:12:22 PM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 
 Friday, February 12, 2010
目前使用较广泛的近距无线通信技术是蓝牙(Bluetooth),无线局域网802.11(Wi-Fi)和红外数据传输(IrDA)。同时还有一些具有发展潜力的近距无线技术标准,它们分别是:ZigBee、超宽频(Ultra WideBand)、短距通信(NFC)、WiMedia、GPS、DECT、无线1394和专用无线系统等。它们都有其立足的特点,或基于传输速度、距离、耗电量的特殊要求;或着眼于功能的扩充性;或符合某些单一应用的特别要求;或建立竞争技术的差异化等。但是没有一种技术可以完美到足以满足所有的需求。
Friday, February 12, 2010 9:52:42 PM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 

经过近十年的技术发展,非接触卡已彻底取代磁卡,成为智能建筑卡系统卡片的主流。过去,卡系统中常用的是125KHZ的低频卡, 这些低频卡的ID号存储介质是EEPROM,具有电擦写功能,可反复多次写入,因此ID号极易应该在高安全性场所禁止使用,目前逐步退出市场。

标准非接触IC卡工作频率为13.56MHZ高频,比通常125KHZ的低频卡快100倍,传输速率快,可读写,安全性高。代表 的产品有Mifare卡,最大距离为,门禁读卡器由于外观尺寸限制,通常只有2-3cm的读写距离。

ISO/IEC 15693标准非接触IC卡,工作频率也是13.56MHZ高频,集成了以前非接触卡的技术,并在保证安全性、可读写、多分区的 前提下,在读卡距离有了突破。最大距离为100cm,价格与ISO/IEC 14443的卡片相当。ISO/IEC 18000标准非接触IC卡,是近几年的 新产品,工作在超高频UHF的部分无源非接触IC卡,读卡最大距离达10m.

 

频率

读写状态

最大读写距离

国际标准

低频

125K

RO

60cm(2m)

-----

134K

RO R / W

60cm(2m)

-----

高频

13.56M

R / W

10cm

ISO/IEC 14443

TYPE A

TYPE B

100cm

ISO/IEC 15693

超高频

433M

ISO/IEC 18000,EPC(制定中)

915M

微波

2.5G

 

Friday, February 12, 2010 9:20:16 PM (China Standard Time, UTC+08:00)  #    Disclaimer  |   | 

1) AutoPlay Menu Builder
AutoPlay Menu Builder 是一个功能强大的光盘自动运行菜单制作工具,使用它,你不需要具备任何专业知识,只需要经过鼠标拖放和几次鼠标点击就可以轻松的制作出非常漂亮的AutoRun菜单程序,让你制作菜单象垒积木一样容易!程序采用类似于Delphi和VB的所见即所得的操作界面,是你不需要编写一行代码就只需要拖放组件就可以轻松制作出专业的菜单效果

http://www.linasoft.com/apmbuilder.php

2) ZMaker

据说是国内最好的电子杂志制作工具

http://zmaker.zcom.com/

3) MakeInstantPlayer
将视频转换成可执行文件, 唯一的缺点就是打开的时候比较慢, 因为它的本质是包裹了一个 Media Palyer Classic
http://mulder.dummwiedeutsch.de/home/?page=projects#instplay

4) MiniWebsvr (开源)

一个袖珍web服务器 可用命令行启动, 当你的光盘需要host 一些简单页面的时候 可以用这个软件

http://miniwebsvr.sourceforge.net/

5) Netbox

将web server 打包成exe 文件, 但貌似已经停止更新和维护了

http://www.netbox.cn

Friday, February 12, 2010 7:04:28 PM (China Standard Time, UTC+08:00)  #    Disclaimer  |   |