9月 102018
 

代码: file=”thisfile.txt” echo “filename: ${file%.*}” echo “extension: ${file##*.}” 输出: filename: thisfile extension: txt 附: Bash字符串处理 基于Pattern Matching的子串替换 ${STR/$OLD/$NEW} 替换第一个。 ${STR//$OLD/$NEW} 替换所有。 注意:不能使用正则表达式,只能使用?*的Shell扩展。只能用shell通配符如 * ?  [list] [!list] [a-z]。 ${STR/#$OLD/$NEW} 替换开头。如果STR以OLD串开头,则替换。 ${STR/%$OLD/$NEW} 替换结尾。如果STR以OLD串结尾,则替换。   [user@laptop ~]# STR=”Hello World”  [user@laptop ~]# echo ${STR/o/O}  HellO World [user@laptop ~]# echo ${STR//o/O}&nb […]

 Posted by at 下午7:305 views
9月 162017
 

pip install Scipy安装失败,可以直接下载whl文件进行安装: http://www.lfd.uci.edu/%7Egohlke/pythonlibs/ C:\Users\UPC\Desktop>pip install "scipy-0.19.1-cp36-cp36m-win_amd64.whl" Processing c:\users\upc\desktop\scipy-0.19.1-cp36-cp36m-win_amd64.whl Collecting numpy>=1.8.2 (from scipy==0.19.1)   Using cached numpy-1.13.1-cp36-none-win_amd64.whl Installing collected packages: numpy, scipy Exception: Traceback (most recent&nb […]

 Posted by at 下午5:58289 views
9月 082017
 
TCP 的那些事儿(下)

转自 陈皓 博客 https://coolshell.cn/articles/11609.html 这篇文章是下篇,所以如果你对TCP不熟悉的话,还请你先看看上篇《TCP的那些事儿(上)》 上篇中,我们介绍了TCP的协议头、状态机、数据重传中的东西。但是TCP要解决一个很大的事,那就是要在一个网络根据不同的情况来动态调整自己的发包的速度,小则让自己的连接更稳定,大则让整个网络更稳定。在你阅读下篇之前,你需要做好准备,本篇文章有好些算法和策略,可能会引发你的各种思考,让你的大脑分配很多内存和计算资源,所以,不适合在厕所中阅读。 TCP的RTT算法 从前面的TCP重传机制我们知道Timeout的设置对于重传非常重要。 设长了,重发就慢,丢了老半天才重发,没有效率,性能差; 设短了,会导致可能并没有丢就重发。于是重发的就快,会增加网络拥塞,导致更多的超时,更多的超时导致更多的重发。 而且,这个超时时间在不同的网络的情况下,根本没有办法设置一个死的值。只能动态地设置。 为了动态地设置,TCP引入了RTT——Round Trip Time,也就是一个数据包从发出去到回来的时间。这样发送端就大约知 […]

 Posted by at 上午1:13244 views
9月 082017
 
TCP 的那些事儿(上)

转自 陈皓 博客 https://coolshell.cn/articles/11564.html TCP是一个巨复杂的协议,因为他要解决很多问题,而这些问题又带出了很多子问题和阴暗面。所以学习TCP本身是个比较痛苦的过程,但对于学习的过程却能让人有很多收获。关于TCP这个协议的细节,我还是推荐你去看W.Richard Stevens的《TCP/IP 详解 卷1:协议》(当然,你也可以去读一下RFC793以及后面N多的RFC)。另外,本文我会使用英文术语,这样方便你通过这些英文关键词来查找相关的技术文档。 之所以想写这篇文章,目的有三个, 一个是想锻炼一下自己是否可以用简单的篇幅把这么复杂的TCP协议描清楚的能力。 另一个是觉得现在的好多程序员基本上不会认认真真地读本书,喜欢快餐文化,所以,希望这篇快餐文章可以让你对TCP这个古典技术有所了解,并能体会到软件设计中的种种难处。并且你可以从中有一些软件设计上的收获。 最重要的希望这些基础知识可以让你搞清很多以前一些似是而非的东西,并且你能意识到基础的重要。 所以,本文不会面面俱到,只是对TCP协议、算法和原理的科普。 我本来只想写一个篇幅 […]

 Posted by at 上午1:1147 views
9月 082017
 
TCP网络关闭的状态变换时序图

转自 陈皓 博客 https://coolshell.cn/articles/1484.html TCP共有11个网路状态,其中涉及到关闭的状态有5个。 在我们编写网络相关程序的时候,这5个状态经常出现。因为这5个状态相互关联,相互纠缠,而且状态变化触发都是由应用触发,但是又涉及操作系统和网络,所以正确的理解TCP 在关闭时网络状态变化情况,为我们诊断网络中各种问题,快速定位故障有着非常重要的作用和意义。 下是是根据W.Richard Stevens的《TCP/IP详解》一书的TCP状态转换图。

 Posted by at 上午1:0958 views
9月 052017
 

Atom常用快捷键: 英文 中文 快捷键 功能 New Window 新建界面窗口 Ctrl + Shift + N 如中文意思 New File 新建文件 Ctrl + N 如中文意思 Open File 打开文件 Ctrl + O 如中文意思 Open Folder 打开文件夹 Ctrl + Shift + O 如中文意思 Add Project Folder 加载项目目录 Ctrl + Alt + O 如中文意思 Reopen Last Item 重新加载上次项目 Ctrl + Shift + T 如中文意思 Save 保存文件 Ctrl + S 如中文意思 Save As 另存为 Ctrl + Shift +S 如中文意思 Close Tab 关闭当前编辑文档 Ctrl + W 如中文意思 Close Window 关闭编辑器 Ctrl + Shift + W 如中文意思 Undo 撤销 Ctrl + Z 如中文意思 Redo 重做 Ctrl + Y 如中文意思 Cut 剪切 Shift + Delete 如中文意思 Copy 复制 Ctrl + Insert 如中文意思 Co […]

 Posted by at 下午3:5771 views
7月 202017
 

Oracle 自动存储管理概述 自动存储管理 (ASM) 是 Oracle Database 的一个特性,它为数据库管理员提供了一个在所有服务器和存储平台上均一致的简单存储管理接口。作为专门为 Oracle 数据库文件创建的垂直集成文件系统和卷管理器,ASM 提供了直接异步 I/O 的性能以及文件系统的易管理性。ASM 提供了可节省 DBA 时间的功能,以及管理动态数据库环境的灵活性,并且提高了效率。ASM 的主要优点有: 简化和自动化了存储管理 提高了存储利用率和敏捷性 提供可预测的性能、可用性和可伸缩性 Oracle Cloud File System 概述 Oracle Cloud File System (CloudFS) 前所未有地简化了通用文件的存储管理、供应自动化和存储整合。CloudFS 是一个存储云基础架构,提供资源池、网络可访问性、快速伸缩以及快速供应 — 这些都是云计算环境的关键要求。该产品包括: Oracle ASM Dynamic Volume Manager (ADVM) ADVM 提供了一个通用卷管理服务和一个标准设备驱动程序接口,便于系统管理员跨不同平台 […]

 Posted by at 上午9:37150 views
7月 032017
 

6月29日review涉及的sys-unconfig系统初始化 **关于/usr/sbin/sys-unconfig工具的说明****__RHEL 6__** #!/bin/sh . /etc/init.d/functions if [ $# -ne 0 ]; then     echo $"Usage: sys-unconfig" >&2     exit 1 fi touch /.unconfigured rm -f /etc/udev/rules.d/*-persistent-*.rules halt **# vi +556 /etc/rc.d/rc.sysinit** # Configure machine if necessary. if [ -f /.un […]

 Posted by at 上午11:3375 views
7月 032017
 
LVS Cluster部署(OSPF + LVS)

前言 LVS大家应该很熟悉,这款优秀的开源软件基本成为了IP负载均衡的代言词。但在实际的生产环境中会发现,LVS调度在大压力下很容易就产生瓶颈,其中瓶颈包括ipvs内核模块的限制,CPU软中断,网卡性能等,当然这些都是可以调优的,关于LVS的调优,会在这里详细讲 LVS调优攻略 。回到主题,那当无法避免的单台LVS调度机出现了性能瓶颈,有什么办法呢?在本文就来介绍如何横向扩展LVS调度机  架构简图 如上图三层设备的路由表,VIP地址1.1.1.1对应nexthop有三个地址,这三个地址是三台lvs调度机的地址。这样便可达到效果:用户访问——>VIP——>三台LVS调度机——>分发到多台RealServe 架构优势 1.LVS调度机自由伸缩,横向扩展(最大8台,受限于三层设备允许的等价路由数目)  2.LVS调度资源全利用,All Active。不存在备份机  部署方法 1.硬件资源准备 三层设备: 本文用的是h3c 5800三层交换机 LVS调度 […]

 Posted by at 上午10:5247 views
6月 302017
 

'G' if all modules loaded have a GPL or compatible license, 'P' if any proprietary module has been loaded.  Modules without a MODULE_LICENSE or with a MODULE_LICENSE that is not recognised by insmod as GPL compatible are assumed to be proprietary.'F' if any module was force loaded by "insmod -f", ' ' if all modules were loaded normally.'S' if the oops occurred on an SMP kernel running on hardware that hasn't been certified as safe to run […]

 Posted by at 上午11:2851 views