Not too long so long as the words are not too long. One successful site with 4 words:
short name is easy to remember, but full keyword name is okay, if your traffic is from search again, people will know what your site contents before click the link
no, of course. if the domain name is the keyword of the content,the more, the better
you need research your keywords first, then pick the one that has the most traffic. even long 3 worded domain name that gets type in traffic will be better then some short name thats easy to remember but has nothing to do with the site.