在微博上发现已有同学整理了一个不错的linux命令文档:http://115.com/file/c2rzrvw3#Unix-Linux 这篇文章等遇到好的命令再继续更新。。。

文件命令 | 程序命令 | 网络命令 | 系统命令

文件

创建一个文本文件

touch test.txt

删除文件

rm -f text.txt

创建一个目录

mkdir newdir

删除一个目录

rm -r dirname
More

工作中有时会碰到需要迁移数据库的时候,如更换机房,更换新服务器等。迁移数据库最重要是要确保正在运行的程序不会因为漏更改连接字符串而导致程序报错。但有时维护的项目可能老旧,没有相关维护文档,还有一些使用该数据库的windows服务也可能遍布在其他服务器上,这时我们该如何找到所有正在使用该数据库的服务呢?

下面以windows服务器和Sql Server数据库为例,数据库服务器的ip是192.168.6.189,linux平台的思路差不多,只是命令有变化。

1、查看Sql Server进程ID

打开任务管理器,点击“查看->选择列”,勾选“PID(进程标识符)sql server sql server

进程名称为“sqlservr.exe”的PID就是Sql Server的进程ID,当前是1800

More

IIS可以在一台服务器上配置多个web站点,每个站点通过ip地址、端口(port)和主机名(host)结合的标识符(ServerBindings Metabase)进行区分。标识字符串的格式如下:

IP:Port:Hostname

上面的IP和Hostname是可选项,假如设定站点时不指定,表示匹配所有。

主机名(Host Headers)是HTTP消息的一部分

浏览器和web服务器之间是通过http协议通信的。http发送的请求头部(headers)部分包含有很多信息,如Content-Length, Referer, Host等等。

More

本人的ubuntu server版本是10.04.4,安装在免费的vmware player 4.0中。 安装vmware-tools需要gcc和对应的linux-headers进行编译,需先执行下面两个命令进行安装:

sudo apt-get gcc

sudo apt-get install build-essential linux-headers-$(uname -r)

安装后,点击vmware player菜单“Virtual Machine->Install VMware Tools”,画面下方会出现黄色的VMware Tools安装提示框。 1、把安装光盘绑定到一个文件夹:

mkdir /mnt/cdrom

sudo mount /dev/cdrom /mnt/cdrom
More

Moles是由微软研究院(Microsoft Research)开发的.NET依赖分离框架,它实现了使用自定义的委托(delegate)方法来替换原有类中的方法,以达到分离依赖,方便单元测试的目的。Moles在功能和用法上与开源的IoC框架Moq很像,但Moles有一些Moq实现不了功能,如替换静态方法,去掉静态构造函数,突破访问限制等。Molas非常有利于对ASP.NET WebForm构建的网站和依赖第三方类库的程序进行单元测试。

下载和安装

下载Moles后直接安装就可以了,里面集成有VS2010的插件,安装成功后,VS2010右键菜单中会集成Moles功能菜单。

More

前一篇文章介绍了WinDbg入门,本篇主要介绍WinDbg常用命令和用法。

调试程序的CPU满载问题,关键是要知道程序当前正在进行什么操作。假如我们在cpu满载时创建了一个dump文件,使用下面几个命令可以查看当前程序正在进行什么处理: .time 运行.time命令会显示时间相关的信息,如系统运行时间,进程运行时间和CPU花费在内核态和用户态的时间。

0:000> .time
Debug session time: Tue Oct 23 08:38:35.000 2007 (GMT+1)
System Uptime: 4 days 17:48:01.906
Process Uptime: 0 days 0:24:37.000
  Kernel time: 0 days 0:04:23.000
  User time: 0 days 0:03:28.000

你可以看到系统已正常运行超过4天,进程运行了24分钟,CPU在内核态和用户态累积使用了8分钟。根据进程时间和CPU时间能大概估算出CPU使用率平均值是32.5%。

More

原文:http://blogs.msdn.com/b/kaevans/archive/2011/04/11/intro-to-windbg-for-net-developers.aspx  翻译:cxfksword

当你的代码发布为产品后,无论是在其他人的电脑中运行,还是部署到服务器中,你通常不再能访问到它的程序文件,也不能观察到代码的当前运行情况和运行环境。当你的代码在新的环境运行时,有很多因素会影响到程序的运行情况,如服务器系统打了更新补丁,网络策略改变,防火墙规则限制,磁盘权限配置等等。当代码运行不正常时,你可能只能靠代码中各处输出的日志来判断运行情况。但只靠输出日志,你有时还是不能判断故障出现的原因。

在不浪费客户时间的同时做故障排除对你是个很大的挑战,因为不会有客户喜欢被一个搞技术的家伙不断问是点了那个按钮操作了哪些步骤导致程序出错的。boss也不会给你几天甚至几周的时间让你慢慢排除故障,你必须现在就知道到底发生了什么。

理想情况下,你应该能看到堆栈跟踪,能查看到当前的变量值,能调试代码。事实证明你可以做到这点。。。而且不需要附加到客户环境中!

More

HAProxy是linux平台上的负载均衡软件,有完善的服务器健康检测和会话(session)保持功能,性能高,支持tcp和http网络连接分发。

问题起因

入公司一年,我发现在ASP.NET网站上部署更新时,经常会遇到下面这样的烦恼:

  1. 假如更新到bin文件夹下的dll文件,会引起iis的应用程序池重启,从而导致更新这段时间内,用户访问网站会非常缓慢,甚至出现页面超时。

  2. 部署更新时要小心翼翼,祈祷上帝没少拷了什么文件,假如更新后网站出错,就只能心跳加速地快速还原系统

  3. 编辑经常提一些需求只是简单更改下页面文字,而为了不使这种简单的更改引起应用程序池重启,一般部署网站时都是采用copy方式发布,而网站也工作在debug模式下,而不是更优化速度更快的release模式

More

1、安装JAVA SDK

到官网(http://www.oracle.com/technetwork/java/javase/downloads/index.html )下载最新的javase sdk,推荐安装1.6版。安装完成后,在windows环境变量中添加[JAVA_HOME],并把路径指向java sdk的安装根目录。

2、安装Scala

从scala官网(http://www.scala-lang.org/downloads )下载windows版的压缩包,推荐2.8.1 final版,直接解压到相应目录中,假设为c:\scala-2.8.1.final\,再添加下面两个环境变量:

  • 新增环境变量SCALA_HOME,并设为c:\scala-2.8.1.final

  • 在已有环境变量Path中,追加值c:\scala-2.8.1.final\bin

More

有时,我们安装的windows服务可能是个框架,在同一服务器上可能服务于不同的系统,为了使服务名称不冲突,需要把服务名称更改为可配置。 因为ServiceInstaller能直接设置安装服务的名称和描述,所以很容易就能写出下面的代码:

serviceInstaller.ServiceName = ConfigurationManager.AppSetting["ServiceName"];
serviceInstaller.Description = ConfigurationManager.AppSetting["ServiceDescription"];

编译执行安装,可惜抛出了异常,安装失败了。 失败的原因是,执行安装服务的程序是InstallUtil.exe,安装阶段不会自动加载服务的app.config配置文件,只会加载全局的machine.config,需改为手动加载app.config并读取。 确定解决思路后,我写出了下面的代码:

More

Page 3 / 5
Top