`
zizipo
  • 浏览: 22591 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论
文章列表
网上也有很多四驱技术的文章,但是对于完全没有机械基础的人来说,这些文章很生涩,很难看懂,我也完全不懂机械,但是还是花了一些时间来阅读这些文章,结合我自己的理解,谈谈四驱系统。 1.为什么需要四驱,四驱的好 ...

2013年的计划

1.自己的兴趣项目赚到7万以上。 2.高数和概率论复习一下,参加机器学习,数据分析相关2门课。 3.提高个写程序的技能,每天能写60行+的产品代码。减少debug。 4.英语能写长篇的wiki,能听懂技术讲座(无字幕),能日常表达。 5. ...
1.IP协议不是面向的,它只是提供尽力而为的数据链接。 2.TCP协议是面向连接的,全双工的协议,提供可靠的数据传输。 了解全双工的特性可以非常容易理解TCP的三次握手过程,其实就是测试链路的过程,A发信息到B,这条通路是否通需要B回信确认,同样B到A是否通畅需要A再回信确认。数据传输过程也会有信息的确认和验证,数据传输完毕需要关闭连接,否则链接会保持。 一次HTTP协议其实就是一次TCP通讯的过程,请求回复,完成后链接断开。对于HTTP1.1支持keep alive,就是链接一直保持,该特性可以实现服务器到浏览器的主动通信
工作中需要配置一个2块硬盘组成的raid 1,配置为S1200BTSR主办,E3-1230 v2,8G ECC内存,这个是目前比较主流也是比较便宜的服务器配置,接下来就是看看如何组raid。在上面安装ubuntu server 12.04 1.在blos里面配置用raid来驱动硬盘 先把" ...
1.环境变量,子进程继承父的。 2.可以理解子进程和父进程保留的都是环境变量的指针,这个可以解释当父进程修改他的环境变量时,子进程的环境变量立马也改变了。但是当父进程新建环境变量时,已经产生的子进程不会得到新建的环境变量,后来新建的就会。 3.但是不能让子进程随意修改父进程的环境变量,这样做很危险,这个可以看做2的一个特例。 4.A=x B=y program这样的形式可以用来传递环境变量给新的进程,当然他的子进程也会继承到。
  最近半年一直在开发一个跟金融相关的互联网应用,金融的计算要求严谨,数字相差一分钱也会给用户产生不够专业不值得信任的感觉。结合ruby编程语言,谈一下计算的精度问题。引用精确计算的前提,是区分数值是中间量还是输入输出量,输出量做为一个给用户看到的量,是有效力的,在四舍五入后得到量,只要是会被用户看到了解到的,在后面的计算中就应该做为一个精确量。 举例:A有1.01元,分给B,C,他们均只能拿到0.5元,B要再给D钱,就应该以0.5为依据,而不是0.505。 引用所以计算的过程可以概括为: 输入量----》中间计算过程,误差在累积----》保留确定位数的小小数,输出----》输出作为精确输入量再 ...
1.相同的局部页面,DIV和CSS要完全一致,因为后台代码是引用关系。   (1).对于可能复用的DIV,宽度尽量自适应。 2.简化DIV结机构   (1).能够一层DIV,绝对不要用2层。   (2)菜单的当前状态,尽量在<li>这种一层搞定,不要<li> ...
现在做的一个网站对短信收发模块的需求如下: 1.3网支持长短信。 2.发送延迟1分钟内。 3.支持回复。 4.回复延迟1分钟内。   一开始尝试在购买HTTP接口的短信平台。这样的实现是最简单的,用ruby基本一两句话搞定就可以搞定这个模块。所以这个方案是非常诱人的。   但问题来了,购买的短信平台,能3网支持长短信的不多,在某些时段(周5发生比较频繁).短信发送出现延迟。   但在开始那个因为可以很简单的方案的诱惑下,我还是继续尝试,测试了google搜索“短信平台”几乎前2页所有的公司。发现即使测试的时候延迟很短,但用过一段时间,总会出现一些延迟。原因后来想了想:就我那一点量,短信平台公司肯 ...
1.当某个功能开发完成之后并通过基本测试之后,才commit 2.如果觉得有必要保留现在的代码,开发有没有完成,确认该代码不会被调用,增加todo注释,可以commit. 3.对于开发时间长的特性,使用特性分支,这个就可以不用管1了,多提交有助于代码安全。 4.多人开发下,使用了分支的情况,commit后,通知大家更新,有助于最低出现冲突。 5.使用发布分支。 6,每个发布分支上的bug修复,第一时间merge回主干分支。 7.svn:ingore的使用 8.每次commit检查要commit的列表,如果发现有文件感觉自己并没有改动,使用diff命名,如果发现只是空格,空行等对程序本身无意义的改 ...
一直以来,对svn的概念都比较模糊的,出了问题也不知道从哪里做手分析。现在把svn重新学习了一遍,对以前的一些模糊或者错误的概念明晰了一下。 1.svn的服务器版本库里的版本号是一个全局的概念的,对整个目录树和所有的 ...
juggernaut是一个支持多种协议,一直在更新的rails push server,这个两个因素也就是需要push server时最需要关注的。 先看看在我的ubuntu上的要怎么配置。 sudo apt-get install python sudo apt-get install libssl-dev sudo apt-get install git-core 以上3个都是下载,编译node.js源码所需要的。node是一个javascript的服务端框架。 git clone https://github.com/joyent/node.git cd node export JOBS= ...
架构优化和索引   1.数据类型   浮点:FLOAT和DOUBLE使用的是平台的浮点数,分别占用4字节和8字节。DECIMAL是表示精确的小数。   字符串:VARCHAR(255)表示最大长度255字节,对于uft-8编码,将不知道能保留多少字符,中文是3字节,字母1字节,这一点要注意。另外设高上限,因为内存的分配mysql是固定长度的,这样可能会导致内存的浪费。另外会占用额外的1或2字节来记录长度。该类型的问题是修改字段会改变行的大小,可能引起分页。带来额外的工作。但这个问题不是很大,因为预写式日志的存在。CHAR优势比较小了,对于固定长度的,倒是可以用一下,问题是会丢失字符串后面的空格。 ...
Mysql的存储引擎 1.数据库对应data目录下的文件夹,table对应文件名.frm show table status like 'table_name' /G可以显示table的相关信息,也包括存储引擎。 2.MyISAM 只支持表级锁,延迟更新索引(跟预写式日志原理一模一样,不过索引不是数据可以重建,所以是否及时flush到硬盘更加不重要) 3.InnoDB 事务性存储引擎,聚簇索引,因此辅助索引也会包含主键列。外键约束。 书上有一句话很重要:“当初设计InnoDB时,大多数服务器仍然是低速硬盘、单CPU和有限内存。如今,支持海量内存、高速硬盘的多核CPU服务器越来越便宜了。In ...
一.Mysql的架构和基本特性   1.基本的分为mysql服务器和存储引擎,mysql服务器处理连接管理,查询缓存,查询分析,查询优化,存储引擎处理具体的查询,目前而且,事务也是在存储引擎中实现的,这也就意味做如果事务跨越不同 ...
rails3里面的nest_resource很强大。 1.route resoureces :fathers do   resources :children end 2.表单 form_for [@father,@child] do end 3.view helper father_child_path(@fahter,@child) father_children_path(@father) .... 4.controller_helper 对应的,后面改成_url 5.在controller中对应的action里面,有param[father_id]参数。
Global site tag (gtag.js) - Google Analytics