Erik_Xu浅谈开发模式及架构发展

Posted Posted in 云计算, 经验, 自动化, 菜鸟

一、传统开发模式
传统的开发模式基本一般是重服务端的开发方式,大部分工作都在服务端执行,然后返回到客户端(通常是HTML)。以Asp.net MVC为例,如下图:

 

#1 根据请求的路由定位到对应的Controller的对应的Action。

#2 执行相关逻辑,得到结果Model(也可能没有Model,如直接返回View)。

#3 定位并加载对应的View(也可能没有View,如返回TextResult,JsonResult等)。

#4 在服务端通过Razor引擎把Model和View绑定起来生成最终的返回结果(一般是HTML),返回到客户端 ….[阅读全文]

菜鸟入门:简单自动备份MYSQL数据库的Shell/Bash脚本

Posted Posted in Mysql, Shell脚本, 入门, 数据库, 自动化, 菜鸟

vim  /root/backmydb.sh在打开的编辑器输入:
#!/bin/bash
mysqldump -uuser -ppasswd -B databasename > /root/backup/mysql/date_$(date ‘+%Y%m%d’).sql
命令的意思是用mysqldump导出名为databasename的数据库到/root/backup/mysql/文件夹并命名为date_当前日期.sql,-u后面的是你的Mysql的用户名,-p后面的是Mysql密码,databasename是要备份数据库名字,把这三个替换成自己的。

当然,备份的数据库比较大 ….[阅读全文]

Shell/Bash脚本入门:String字符截断

Posted Posted in Shell脚本, 入门, 自动化, 菜鸟

如果是文件路径的进行字符截断可以用basename和dirname这两个工具
basename可以从一个文件路径中截一个文件名
$ basename /root/lnmp/lnmp_install.sh
lnmp_install.sh
dirname可以从一个文件路径中截到一个目录路径
$ dirname /root/lnmp/lnmp_install.sh
/root/lnmp
使用bash内部命令进行字符截断
bash有自带的功能来对变量进行字符截断,一般使用”#”, “##”, “%%”, “%”, “*” 组合来实现。

例子:
$ teststring=www. ….[阅读全文]

经验分享:并发批量管理500+台以上服务器shell/bash脚本分享(expect版)

Posted Posted in Shell脚本, 批量部署, 经验, 自动化, 菜鸟, 运维

也许很多人认为shell不能并发任务,其实可通过其它一些方式来实现。下面的脚本是我批量快速管理500+服务器脚本,阅读该脚本前建议先看《自动执行远程主机命令expect脚本》、《自动远程拷贝expect脚本》和《getopt:命令行选项、参数处理》

用法:
Usage: ./multi_main.sh [-h|–help]
[-v|-V|–version]
[-l|–iplist … ]
[-c|–config … ]
[-t| ….[阅读全文]

如何在shell/bash脚本中使用trap命令捕获信号

Posted Posted in Shell脚本, 入门, 自动化, 菜鸟

信号是LinuX系统中的一种进程间通信机制,它给应用程序提供一种异步的软件中断,使应用程序有机会接受其他程序活终端发送的命令(即信号)。应用程序收到信号后,有三种处理方式:忽略默认,或捕捉。进程收到一个信号后,会检查对该信号的处理机制。如果是SIG_IGN,就忽略该信号;如果是SIG_DFT,则会采用系统默认的处理动作,通常是终止进程或忽略该信号;如果给该信号指定了一个处理函数(捕捉),则会中断当前进程正在执行的任务,转而去执行该信号的处理函数,返回后再继续执行被中断的任务。 ….[阅读全文]

入门:Shell/Bash中的字符串基本处理操作(提取/替换/匹配/掐头/去尾)

Posted Posted in Shell脚本, 入门, 自动化, 菜鸟

字符串操作(长度,读取,替换)

表达式
含义

${string:position}
在$string中, 从位置$position开始提取子串

${string:position:length}
在$string中, 从位置$position开始提取长度为$length的子串

${string#substring}
从变量$string的开头, 删除最短匹配$substring的子串

${string##substring}
从变量$string的开头, 删除最长匹配$substring的子串

${string% ….[阅读全文]

快速配置:nagios自动化安装与配置脚本

Posted Posted in Shell脚本, 入门, 监控, 自动化, 菜鸟, 运维

以下为nagios的安装与配置脚本,脚本中server:192.168.1.114、client:192.168.1.113,主要监控host-
alive、disk、cpu_procs、load、ssh、swap、users、zombie_procs等,请根据实际环境修改配置文件。
脚本中开源软件版本:
httpd-2.2.22.tar.gz
libiconv-1.13.1.tar.gz
php-5.3.10.tar.gz
nagios-3.3.1.tar.gz
nagios-plugins-1.4.15.tar.gz
nrpe-2.13.tar.gz
使用方法:
cd ….[阅读全文]

快速配置:适用于CentOS/RHEL 5-6的Linux初始化脚本

Posted Posted in Linux, Shell脚本, 入门, 系统, 自动化, 菜鸟

以下脚本用于linux系统的初始化脚本,可以在服务器系统安装完毕之后立即执行。脚本结合各位大牛一些参数,已经在CentOS 5下通过。
使用方法:将其复制,保存为一个shell文件,比如init.sh。将其上传到linux服务器上,执行sh init.sh。建议大家在系统安装后立即执行。
脚本代码:
#!/bin/bash
# Configure yum source 配置yum源
cd /tmp
wget -c http://yum.baseurl.org/download/3.4/yum-3.4.3.tar.gz
tar zxf yum-3.4.3.tar.gz
cd yu ….[阅读全文]