I am confused about these two terms. What do these two terms mean? What is the difference between Layer and Tier?
Sometimes people use them interchangeably but in my mind a layer is a logical separation (GUI, data access, business logic etc)and a tier is a physical separation (separate servers...ie web server, database server etc).
See the entries in Wikipedia: Multitier Architecture vs Multilayered architecture