VPS is not a real server it is most of the time 1/4 of a server. So you have most of the plus side of a real server but it is till not a REAL stand alone server just for you.
Depends on what those 2 million visits are, unique visitors? Or Page views? And you'd have to look at the amount of consecutive connections. if you have let's say 10k people on at the same time, you'll probably need a cluster of servers, no one VPS or dedicated would do. But you would have to look at what you need. Both give you root access, usually both will have a way to reboot, etc. VPS is just cheaper and better for smaller projects, Dedicateds are needed if you are doing something a bit more extreme or you need the entirety of the server for all the resources.
A VPS or Virtual Private Server is a server that has been split into multiple servers each of which can run independently of one another. Each individual VPS can be rebooted and or run its own OS and set of applications as well. A Dedicated server is a server in which only you are the sole owner and operator of the computer. The entire server and its resources are dedicated solely to you. A VPS is good when you want to gain an entry level approach to operating your own site/server and when shared hosting resources are no longer enough. VPS is usually cheaper than a Dedicated server which is why they are quite popular with those that need that flexibility a dedicated server offers, but cannot afford the costs that are associated with it. As to your question about visits. How long is a piece of string? The information you have provided is too vague. We'd need to see some solid transfer / bandwidth statistics to better formulate and answer.
It depends on how often you are getting 2 million+ visitors. If you are getting 2 million+ a month you would definitely need a dedicated server.
Dedicated hosting Means You will get an Server for your own. Vps is a virtual Creation of accounts in a server. which acts like dedicated but really its a shared hosting.also cost for vps is too low
VPS uses virtualization to divide a strong physical server into multiple smaller ones, its good since if one customer needs alot of preformance at one time etc, they can offer him burstability at low cost. if you want to know how its done look at tools like VMware ESX, its one of the most known hypervisiors in the world, theres also microsoft's option,Hyper V and tons more, but these are the big ones
a vps is a scaled down version of a dedicated server. it uses the processor's virtualization feature. you get root access for your vps, you get to see your partitioned space on the hard drive as your own hard drive and your dedicated ram as full ram for you. it is for people who don't have use for much resources available on a dedi, but still need root access of a server and not be affected by the other drawbacks of a shared hosting environment.
VPSes are upgradable on the fly and usually the CPU is equally shared with everyone on the server. Depending on the company, RAM might also be burstable for you to use when you need it. Dedicated server is all yours. Nothing to worry about sharing. It also can handle much more traffic and performs a lot better job. Anymore, there have been servers that are cheaper than a VPS.