A portal is a service or a Web site that gives broad range of services and resources like e-mail, forums, search engines, weather information, news, on-line shopping, stock quotes. Portal is a term usually synonymous with the terms grand or gateway entrance into the Internet for many users. E.g. www.msn.com etc, www.aol.com, www.yahoo.com. A Web portal software gives aggregation of several processes, back-end systems, sites etc brought together through a single portal page.
Portal server: is an application, which gives portlet applications together in a presentable format to the end user. In addition to being a representation layer, it gives users to customize their views adding what portlet applications to colors, show, images etc. Also gives additional services like single sign-on security etc.
Portlet Container: gives a run-time environment to portlets, much in the similar way a servlet container gives the environment for servlets. The portlet container manages portlets by adding their lifecycle methods (render(..), processAction(..),init(..), destroy() etc ). The container sends requests to an appropriate portlet. When a portlet creates a response, the container forwards it to the portal server to be rendered to the user.
Portlet: gives content to its calling portal container for the purpose of being shown on a portal page. Portlets are like servlets but portlets do not create complete HTML documents. They only create fragments that are added on the final portal page. Portlet applications are necessary extended Web applications.