Hosting and the Woes

Get Started. It's Free
or sign up with your email address
Rocket clouds
Hosting and the Woes by Mind Map: Hosting and the Woes

1. Speakers

1.1. Tom Mornini (Engine Yard)

1.2. Ezra Zygmuntowicz (EngineYard)

1.3. Jamie van Dyke (Engine Yard)

2. Rails problems

2.1. active_record

2.1.1. User.find(:all).each do |leak|

2.1.1.1. development

2.1.1.1.1. 20 recors

2.1.1.2. production

2.1.1.2.1. millions of record

2.1.1.2.2. no indexes (sometimes)

2.1.1.2.3. index your foreign keys!

2.2. ferret

2.2.1. indexes corrupted

2.2.2. only solution: switch to sphinx

2.2.2.1. plugin that uses deltas to keep the index up tu date??

2.3. image science

2.3.1. http://nubyonrails.com/articles/a-hodel-3000-compliant-logger-for-the-rest-of-us

2.4. hodel 3000

2.4.1. alternative logger

2.4.2. default mode is debug mode

2.4.3. http://nubyonrails.com/articles/a-hodel-3000-compliant-logger-for-the-rest-of-us

3. how much traffic can you handle?

3.1. digg

3.1.1. 10.000+ visitors

3.1.2. no signups

3.2. TechCrunch

3.2.1. 1.000+ visitors

3.3. RubyInside/Flow

3.3.1. 500-1000 visitors

3.3.2. no signups

3.4. TV brings special traffic

3.4.1. 2000+ connections!

3.5. how much traffic?

3.5.1. no answer

3.6. solutions

3.6.1. cache cache cache

3.6.2. file io down

4. deployment

4.1. eycap

4.1.1. extra tasks for capistrano

4.1.1.1. ferret

4.1.1.2. mongrel

4.1.1.3. memcached

4.1.1.4. nginx

4.2. ebb vs mongrel vs thin

4.2.1. ebb

4.2.1.1. extremely fast

4.2.1.2. not production ready

4.2.2. which one to choose?

4.2.2.1. is more important to concern about the application, architecture, etc

4.2.2.2. small differences

5. questions

5.1. nginx

5.1.1. no problems with nginx (a lot with ferret)

5.1.2. Superflipados con nginx

5.2. passenger

5.2.1. interesting (garbage collector)

5.2.2. more interesting: rubinius and mod_rubinius

5.3. memory usage more mongrels or less?

5.3.1. not concern about memory

5.3.2. more than 3 mongrels per cpu is useless

5.3.3. if you need more mongrels then probably you have problems in yout application

5.4. static files need to be local or cluster areas?

5.4.1. File distribution systems (NFS, samba,etc...)

5.4.2. Works like locally (filesystem abstraction)

5.5. handle asyncronous proccess, bg processes

5.5.1. background-rb naive, doesn't scale

5.5.2. BJ (background job) is the way to go

5.6. distribuite workload in the server farm

5.6.1. everything virtualized