Summary of High Performance

《构建高性能web站点》总结:     网络(Network): 1. 优化链路层(Optimize the data link control) 2. 减少传播的数据量(Reduce your bytes) 3. 减少数据间的传播距离,分布式的数据中心(Reduce transmission distance) 4. 增加带宽,并作优化,还要采取适当的限制措施(Enlarge, optimize, restrict your bandwidth). 5. 适当的重发机制(Resend properly)     服务器(Server): 1. 经常进行压力测试,如 Apache AB (Pressure testing) 2. 更多的CPU,更多进程,优化进程调度(More CPU and more process, but not threads, optimize process switch). 3. 时刻观察系统负载(Observe load average) 4. 减少锁的使用,如文件锁,表所,行锁,日志锁等等(Reduce locks [...]

Posted in Optimization, Project Management | Leave a comment

SVN Setting eol-style

When using SVN in team coding, we need the unified end of file descriptor for all the repository files. Usually it’s LF(line-feed) which is the end of line char under linux.   SVN has supportted this feature as svn:eof-style option, making all as easy as below.   (1) Config file:   For Win (usually): C:\Documents [...]

Posted in SVN | Tagged , | Leave a comment

Version Control with SVN

1. Create trunk from proj_src(source code) : 2. To checkout the project : 3. Add tags and first release : 4. Generate working copies for developers, special offer or someone else : 5. When finished : 6. Delete ? 7. Merge revisions of branches into trunk 8. Revert merge

Posted in SVN | Tagged | Leave a comment

Subversion Post Commit Hook

1. Create post-commit hook2. Hook with Shell 3. Hook with PHP

Posted in SVN | Tagged | 2 Comments

Git Essence

CVCS (Centralized Version Control Systems) like SVN, CVS etc. DVCS (Distributed Version Control System) like Git, Bazaar etc. Git Status: modified, staged, committed

Posted in Git | Tagged | 2 Comments

Install Git on Windows

1. Install msysgit http://code.google.com/p/msysgit/ 2. Configurations 3. Public-Key for Github Copy the content of \.ssh\id_rsa.pub to GitHub -> SSH Public Key -> “Add another public key” 4. Test your connection 5. Create your project – trickle’s Repository 6. Adding new files 7. Push your commits to master branch 8. Checkout your project 9. Pulling from [...]

Posted in Git | Tagged | Leave a comment

Redmine on Ubuntu Server

1. Installation and Configurations (1) Install apache and mysql (2) Install redmine Now redmine is running on http://localhost:3000/ (3) Apache configurations RailsEnv production RailsBaseURI /redmine PassengerDefaultUser www-data Include /etc/apache2/redmine.conf Now redmine is available on http://localhost/redmine (4) Chinese support Choose default language : zh (5) Within local area network Perhaps you get your ip as 192.168.0.129 [...]

Posted in Project Management | Tagged | Leave a comment

Awstats for Apache

1. Environment Ubuntu Server 10.10 Awstats 6.95 2. Install Awstats 3. Apache Configuration Alias /awstats-classes “/usr/share/awstats/lib/” Alias /awstats-icon “/usr/share/awstats/icon/” Alias /awstats-css “/usr/share/doc/awstats/examples/css” ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ ScriptAlias /awstats/ /usr/lib/cgi-bin/ Options ExecCGI -MultiViews +SymLinksIfOwnerMatch Include /etc/apache2/awstats.conf 4. Awstats Configuration SiteDomain = “192.168.0.129″

Posted in Project Management | Tagged , , | Leave a comment

Subversion on Ubuntu Server

1. Environment Ubuntu Server 10.10 Subversion 1.6.6 2. Install Subversion 3. Local Checkout 4. Local Commit and Update 5. Http Checkout (based on apache) <Location /svn/myproject> DAV svn SVNPath /home/svn/myproject AuthType Basic AuthName “myproject subversion repository” AuthUserFile /etc/apache2/dav_svn.passwd <LimitExcept GET PROPFIND OPTIONS REPORT> Require valid-user </LimitExcept> </Location> Checkout myproject with : http://yourhost/svn/myproject Commit using kim/mypassword [...]

Posted in SVN | Tagged , | Leave a comment