- 博客(89)
- 资源 (3)
- 收藏
- 关注
原创 shell 处理文件重复字符实现累加----awk
shell 处理文件重复字符实现累加----awk 需求一个文本test:zhangsan.li 22 33 232lisi.hua 23 23 23zhangsan.li 09 2 33hujian,qi 89 3 34lisi.hua 98 34 34要转换成:zhangsan.li 31 35...
2012-11-02 11:05:05
1979
编程中注意事项
最近的机器内存又爆满了,除了新增机器内存外,还应该好好review一下我们的代码,有很多代码编写过于随意化,这些不好的习惯或对程序语言的不了解是应该好好打压打压了。下面是参考网络资源总结的一些在Java编程中尽可能要做到的一些地方。1.尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三...
2012-10-18 15:23:35
130
写shell脚本实践
写shell脚本实践 #!/bin/basharray=`mysql -hxx.3.xx.66 -uprofile -p}vM0*4c2e#I7r#/S -N --execute="use profile;select u.id as id,u.name as name,u.email as email,n.number as number from (sele...
2012-09-17 19:48:31
105
JVM 参数设置
JVM 参数设置参考文献:http://www.oracle.com/technetwork/java/gc-tuning-5-138395.html 某个大流量网站中JVM参数设置如下: -Xms10000M -Xmx10000M -Xmn5000M-Xss128k-XX:PermSize=256m-XX:MaxPermSize=51...
2012-09-12 11:33:07
94
java内存管理体系结构
java内存管理体系结构之方法区和线程区域 讲解java内存管理的时候首先我要围绕这个图进行讲解: 在程序的运行期间java虚拟机定义不同的数据运行区域,一些数据区域是由JVM启动的时候就创建了,一些数据区域是由线程创建的。 一、方法区 整个线程要使用的两个区域就是方法区(也称Perm区域)和heap区。 方法区负责存储class信息,class...
2012-09-09 16:18:25
99
JVM调优
JVM 打算写一个JVM调优的一系列文章,涉及的知识点有: java内存管理体系结构java GC算法的简单介绍JVM参数设置的各个建议:优点、缺点什么情况下导致java.lang.OutOfMemoryError.JVM内存泄露的原因,如何...
2012-09-09 15:05:53
83
原创 Linux------awk使用
Linux------awk使用 一、分析日志文件 课前基础: awk基本使用awk ' BEGIN{ print "start" } {commands} END{ print "end" }'先执行BEIGN语句,然后重复的执行commands行,直到文件全部读取完毕,读取文件末尾时,执行END语句块。这个语句可以没有BEGIN、END但是必须有{command...
2012-08-30 20:37:51
133
JVM触发案例
总结JVM会出现各种错误 案例一 导致promotion failed的那个时刻似乎并没有进行MinorGC,而OldGen又没有到达我设置的80%,jvm参数如下:-Xmx13000m -Xms13000m -Xmn7800m -Xss256k -XX:PermSize=64m -XX:MaxPermSize=128m -XX:ParallelGCThreads=20 -...
2012-08-25 16:44:50
105
工作使用命令
一、查看日志要使用的命令 grep -c '出现的字符串' 日志文件.log 查看该字符串在该日志文件出现的次数grep "\[19:" 日志文件.log 注意的是要使用转义符号如果想看日志的某一个时间段且出现的某个字符串: grep "^\[\(09\|10\):" /d...
2012-08-14 12:18:25
78
关注的产品设计网站
关注的产品设计网站1、http://www.leho.com/ 爱乐活2、http://guang.com 白鸦的产品设计3、https://www.stumbleupon.com 国外的产品设计是一个分类网站,刚刚进入页面的向导挺值得学习 对于第一个和第二个网站的对比,相同点和类似点以及不同点。一、关于对于逛的用户体验...
2012-07-12 10:33:38
111
原创 Python只是汇总
【hello world】1 创建hello.py2 编写程序:if __name__ == '__main__': print "hello word" 3 运行程序:python ./hello.py 【注释】1 无论是行注释还是段注释,均以#加一个空格来注释。2 如果需要在代码中使用中文注释,必须在p...
2012-07-11 10:22:42
174
原创 检查tomcat是否宕机
某站点以java开发,运行在tomcat上,但因某些原因,java时不时假死或者自动停止。为了防止这个问题,临时采取定期检查该站点url的方式判断tomcat的运行情况。其基本思路为:当取得到带jsp后缀文件的url状态码不是200时,强制重启tomcat。用crond每隔一段时间执行一次检查。 脚本内容为:#!/bin/bashn=`curl -I -s http:/...
2012-07-11 09:43:39
424
原创 java线程池的设计思想
ExecutorService executorForFM = new ThreadPoolExecutor( 500, 800, 2L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>(7000));由这个线程池执行上面的两个任务集合,参数说明500个核心线程他会一直在线程池中的,800核心线程...
2012-07-03 20:25:35
198
原创 架构师基础四
架构师基础四 一、内存映射 将内存中某块地址空间和我们要指定的磁盘文件相关联,从而把我们对这块内存的访问转换为对磁盘文件的访问。 二、直接IO 内存映射和直接IO访问文件没有本质上差异,因为数据从进程用户态内存空间到磁盘都要经过两次复制,即在磁盘与内核缓冲区之间以及内核缓冲区与用户态内存空间...
2012-07-03 18:24:57
117
原创 架构师基础三
架构师基础三一、系统调用 Linux为进程设计的两种运行级别,进程可以再两种模式之间切换。进程通常运行在用户态,这时候可以使用CPU和内存完成一些任务(数学计算),而当进程需要对硬件外设进行操作的时候(读取磁盘、发送网络数据)就必须切换到内核态,这时候它将拥有更多的权力来操控整个计算机,当内核态任务完成后,进程又切换回用户态。 二、持久连接 Keep-Alive即在...
2012-07-02 18:45:15
102
原创 必备基础二
架构师必备基础二 主要内容是:一些名词的解释 一、名词解释 1、吞吐率:WEB服务器单位时间内处理的请求数。 2、最大并发用户数和最大并发连接数的本质区别? 当实际并发用户数稍稍大于服务器所能维护的文件描述符上线时,如果请求的性质决定了处理每个请求花费的时间非常少,比如请求1KB的静态网页,那么每个请求都可以快速处理然后释放文件描述符,这样从用户的角度而言...
2012-07-02 17:59:46
86
原创 架构师基础一
架构师基础一 主要内容是数据是如何发送、影响发送速度的因素、为什么要限制带宽 一、数据的网络传输 数据是如何发送的? 应用程序首先将要发送的数据写入该进程的内存地址空间中。应用程序通过系统函数(send)向内核发出系统调用,它将这些数据从用户态内存区复制到由内核维护的一段称为内核缓冲区的内存地址空间。这块地址是有限的空间,所以发送的数...
2012-07-02 11:28:25
91
搭建https服务
搭建https服务 如何搭建https服务? 网站的架构模式一般是nginx+tomcat,本文章搭建的https环境是在nginx上搭建。 1、/opt/nginx-1.0.6/sbin/nginx -V 查看nginx有没有装http_ssl_m...
2012-06-14 14:43:55
128
原创 Linux命令集1
df查看系统磁盘的使用率 -k 以千字节 KB 为单位显示各分区的信息 -a 显示所有分区 包括大小为0 的分区 2、系统的运行状况 /proc/cpuinfo 本机 CPU的相关信息 /proc/meminfo 本机内存及交换分区的使用信息 /proc/mod...
2012-05-08 17:30:19
68
原创 shell基础
shell基础语法数组的使用 定义:ARRAY_NAME=(value0 value1 value2 value3 ...) 取得数组中某个元素:valuen=${ARRAY_NAME[n]} 一次性获得数组全部元素:${ARRAY_NAME[@]} 取得数组元素的长...
2012-04-24 14:09:36
110
原创 内部系统开发总结
内部系统开发总结 一、开发环境 rose、Linux、resin、eclipse、maven、svn rose框架使用的个人理解的:约定大于配置,如:controller类必须放在*.controllers包下面,由于rose框架有一套完善的对包扫描服务注解优势对于dao层非常好,程序员只需要写dao接口然后在接口中方法写上sql的注解...
2012-04-06 14:06:56
239
java 代码规范
java 代码规范一、方法的规范 下面呈现一段代码: /** * 收集类的所有常量。 * * @param clazz - 收集目标 * @param findAncestor - 是否查找父类 * @param findInterfaces - 是否查找接口 * *...
2012-02-16 16:25:04
70
Nginx
nginx读书总结 一、nginx启动、停止、平滑停止 配置文件nginx.conf改变,也可以不需要让nginx运行的进程自动关闭,也就是可以自动感应配置文件的变化可以安全的对nginx进行升级和删除相关的模块二、nginx的配置文件 user www-data; 使用的用户组 worker_processes ...
2012-02-15 14:41:30
83
Redis细节积累
Redis细节积累 本文主要说明一些redis优点和缺点以免网站架构时乱用一、优点 key/value存储支持丰富的数据结构操作(list、set、map等操作)支持批量的操作,减少网络的开销支持replication机制,弥补了aof、snapshot性能上不足,达到了数据可持久化支持...
2012-01-14 11:08:58
80
hashtable内部实现的细节
Redis中hashtable内部实现的细节 针对上图,对于四个知识点进行讲解,本文参考了其他博客的文章,有的知识点需要看详细的博客,我会列出博客的链接。上面四个知识点应该涵盖redis涉及到的所有细节,如何还有,请大家多多提出,一起探讨。。。博客链接:http://www.hoterran.info/redis_dict 一、hashtable的内...
2012-01-13 17:43:03
226
原创 微博基本架构思路
该文章是转载链接是:http://www.cellphp.com/article-read-nosql-20-handlersocket-nosql-zeromq-micro-blog-gps-tokyocabinet.html,在强调不是本人创新,只是感觉写的好用来借鉴一下经验 12月19日很荣幸的参加了CU举办的PHP交流会,可能准备的时间比较仓促我写的《完全用nosql轻松...
2012-01-11 20:51:20
507
java集合开发(一)
java集合类的源代码进行剖析 关于集合之间的继承关系这里不会详细的介绍,现在主要分析的集合类是: ArrayList、LinkedList、HashMap、ConncurrentHashMap等集合类 一、ArrayList源代码 ...
2011-12-28 16:37:53
96
原创 javascript 建立对象
转载别人的博客内容:这个是url地址:http://www.ccvita.com/94.html一,概述在Java语言中,我们可以定义自己的类,并根据这些类创建对象来使用,在Javascript中,我们也可以定义自己的类,例如定义User类、Hashtable类等等。目前在Javascript中,已经存在一些标准的类,例如Date、Array、RegExp、String、M...
2011-12-28 11:43:33
73
Mongodb
主要说明Mongodb的一些基本原理和操作一、主要内容 主要说明原理、以及查询、修改、插入的操作,以及自己在实战中遇到的问题 二、Mongodb的原理 2.1 介绍mongodb与传统的不同点它不支持连表操作不支持事务,但是支持原子操作(findAndModify,以及增加、减少)Mongodb结构非常灵活,它可以不遵守...
2011-12-27 15:50:04
79
Linux 常用的命令和vim的简单使用
一、主要描述一下工作中常用的Linux命令cd 、ls、dir 这个不用说,pwd查看目录路径 ls -al 查看当前所有的文件包含隐藏文件以及子目录;ls -F 例如可执行文件加"*", 目录则加 "/" 2.复制文件和删除文件 cp -r 源文件路径 目的文件路径 ,rm -r 源文件路径 目标文件路径 m...
2011-12-27 14:58:06
93
Python常用的数据结构
Python常用的数据结构1 Tuple元组应用很广泛任意对象的有序集合,这条没啥说的,数组的同性; 通过偏移读取; 一旦生成,不可改变; 固定长度,支持嵌套 2 list()任意对象的有序集合; 可通过偏移存取,注意,列表中的元素都是可变的,这是不同于元...
2011-12-27 13:08:39
67
Python学习
Python与java语言的一些区别 本博客部分内容是摘自其他博客的内容,具体链接我也忘记,忘多包涵 1、数 python只有4种类型的数:整数,长整数,浮点数和java中没有的复数; java则有char,short,byte,int,long,float,do...
2011-12-27 13:02:28
92
tomcat的请求流程
该文章是摘自张华的博客:http://www.infoq.com/cn/articles/zh-tomcat-http-request-1 Tomcat运行流程图 tomcat运行流程 假设来自客户的请求为:http://localhost:8080/test/index.jsp请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Conn...
2011-12-27 09:59:39
105
MySql数据库 索引原理
本文引用文章如链接:http://www.codinglabs.org/html/theory-of-mysql-index.html#more-100参考书籍:Mysql技术内幕本文主要是阐述mysql索引机制,主要是说明存储引擎Innodb第一部分主要从数据结构及算法理论层面讨论MySQL数据库索引...
2011-11-08 18:48:38
219
代码质量保证
本文分为四节如:如何提高代码的可读性、一般异常的处理机制、JVM内存管理机制、并发控制 一、如何提高代码的可读性最佳实践:看thinging in java和effective in java 感觉这两本书非常经典,尤其是第一本书需要反复的看几遍才能够理解里面的真谛,而第二本书主要是一些编程实践,可以在工作当中一天学习一两个法则,这个也非常关键内功练习好了,可...
2011-10-27 18:31:13
136
前端性能调优
对于前端的性能优化涉及到QPS三要素、优化模版、优化大数据处理、优化JVM参数设置 一、QPS三要素1、多少个线程比较合适?因为涉及到线程的数量,会导致FULL GC发生2、响应时间线程数量=线程执行总时间/瓶颈资源时间*瓶颈资源并行数 在计算对于同一类资源的消耗时间进行合并QPS=1000/瓶颈资源时间*瓶颈资源并行数 什么是瓶颈资源?前台系统的特点:动态...
2011-09-23 21:02:03
124
原创 我关注的互联网网站
把我关注的互联网网站写下来:以后自己空闲的时间看看这些网站感觉自己能够开拓视野这个是2010年互联网站名单:知乎网、互联网那点事 关注互联网动态 还有一个google reader订阅博客 如:西毒、毕玄、丹臣子、放翁等等 ...
2011-08-29 22:18:43
97
Antx学习总结
学习antx两天时间,主要想总结一下:1、安装需要注意的地方2、该工具解决的问题3、常用的命令 一 、安装需要注意的地方 a). 前提:安装JDK,并设置系统环境变量JAVA_HOME,指向JDK安装目录。 b). 获取antx:svn co http://svn.alibaba-inc.com/repos/opentech/antx...
2011-06-03 16:38:08
262
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人