I am thinking of making a website, which is a quite big one and may need scalability later on.
I know a little bit of asp.net , php and j2ee but not much, so before I start I want to know which language would be the best choice to make such a website which is meant to public exposure mostly not for something that works behind company's firewall.

I need to study any one of these to start making this website, so I want your opinion with which should I go?

Recommended Answers

All 34 Replies

as you're having a requirement for scalability, php becomes a poor choice (it's generally less (easily) scalable and maintainable than other technologies).
Of course it all depends on how scalable it needs to be, both JEE and ASPx are designed for scaling into the near unlimited requests per second :)

Apart from that, much IMO depends on the available hosting environments, existing knowledge with the customer, and things like that far more than which is "better" as both can be used to create much the same things with similar effort.
Given free choice I'd employ JEE because I'm far more familiar with that than with .NET, but that's not related to technical issues but personal expertise.

That said, JEE hosting tends to be more expensive, with ASP development requiring more expensive tooling.
The tooling is your cost, the hosting that of your customers.

I am familiar with Java more than any of these, and seriously I like to program in C/C++ and Java only may be because I like their syntax.

And that is what I was thinking that JEE hosting is going to cost a lot, in terms of a startup website which have no revenue sources. In your opinion, if you know, how about if I setup my own servers and host it there and taking dns from some third party company. Except the cost of servers what else is going to cost me and what possible problems can I face with them? (I have no idea about this)

bandwidth, power, failover, 24/7 monitoring, all costs money. That's a big part of any hosting contract, do you have the expertise to do all that yourself?

Java hosting is generally expensive because it tends to start with the moderately high-end packages which are aimed at businesses that need high performance, storage, and uptime guarantees.
To create those yourself will cost you something similar.
If you're happy with lower specs, hosting a JBoss server and a mySQL (or some other open source dbms) somewhere can be done cheaper, but of course your bandwidth and uptime will suffer.

bandwidth, power, failover, 24/7 monitoring, all costs money. That's a big part of any hosting contract, do you have the expertise to do all that yourself?

Java hosting is generally expensive because it tends to start with the moderately high-end packages which are aimed at businesses that need high performance, storage, and uptime guarantees.
To create those yourself will cost you something similar.
If you're happy with lower specs, hosting a JBoss server and a mySQL (or some other open source dbms) somewhere can be done cheaper, but of course your bandwidth and uptime will suffer.

If I get it right, you mean to say if I want to make it cheap then I can take a JBoss hosting and amySQL server hosting separately?

no, if you want it cheap you have to sacrifice quality, accept longer and more frequent downtime, less performance, things like that.

I have another query.

When i started learning Servlets and JSP, i come to know that whenever we make any changes in our website project files, then we need to restart our server to implement those changes.

Now suppose when my website is accessed by thousands of people each second/minute, at that time if I try to restart server then my website will become inaccessible for some minutes, isn't it a drawback and unhappy users??

Are you sure that is true? Seems rather unlikely, but if it is, then yes, it's a great drawback.

Are you sure that is true? Seems rather unlikely, but if it is, then yes, it's a great drawback.

Yeah, it is. Although I am not very sure, but I asked some persons and I personally tried it. Every time you make some change in web.xml then you need to restart the server to reflect those changes unlike php where you just refresh your page after making changes, and changes gets reflected.

if you use JSP you don't need to change web.xml and typically don't need to restart the server.
Even if you do change web.xml you would just have to redeploy the web application to the server, causing a typical downtime of no more than a few minutes, easy to schedule for night time hours when visitors are unlikely to be inconvenienced.

The same is no doubt true for php as well.

I have another query.

When i started learning Servlets and JSP, i come to know that whenever we make any changes in our website project files, then we need to restart our server to implement those changes.

Now suppose when my website is accessed by thousands of people each second/minute, at that time if I try to restart server then my website will become inaccessible for some minutes, isn't it a drawback and unhappy users??

Secondly to jwenting comment, it is usual practice that you will have development server and production. Dev is for continuous development bug fixing and production gets major or regular updates where you can notify users about any downtime.

On the original question, I would say ASP.NET.
You can learn one language (let's say C#) and use it all around.
Web Services and WCF...
You can leverage the power of ONE language (let's say C#) and use THE SAME CODE in both Web and non-web stuff.

wrong argument. The exact same thing you claim is the reason .NET is the one to go with is also true for Java :)

Offering an opinion and a reason for a choice is never wrong.

Offering an opinion and a reason for a choice is never wrong.

in this case, the reason is utterly bogus and thus wrong.

Actually php is entirely new for me, so I need to first study it from basics. While I am quite proficient with core java technologies so I thought that I can get a quick start in it.
Only problem with java I am facing is to find any cheap hosting in the begining, Do u know one?

@warlord902 cheap is wrong word in this case. I pay $200 for my hosting and is cheap for me, because I live in UK and service provided by company(VPS, set it as you wish) is fair for me. What would be cheap for you in India?

@warlord902 cheap is wrong word in this case. I pay $200 for my hosting and is cheap for me, because I live in UK and service provided by company(VPS, set it as you wish) is fair for me. What would be cheap for you in India?

200$ montly or yearly?

200$ montly or yearly?

Sorry of course it is yearly.

In php, I can do more design of my website.

I also think PHP would be the best option, It is easy to learn, and allows fast development. It does not have downtime when deploying, I have a dev server and live server, so its just a matter of svn. However the draw back of PHP is that it can get really messy really easily. If speed is your main goal, then I would go for servlets and JSP.

As for using PHP for design on your website, I might have read your post wrong. But you should really sperate the logic from the design. PHP should be at least a 3 tier system, Database -> PHP -> Template, because as I said PHP gets messy, mix php with content and HTML, well its like alphabet soup.

commented: Little contradiction there, but finally someone posting more then "me too love PHP" +0
commented: Nice reply +0

Sorry of course it is yearly.

why of course? Depending on your needs you may need to pay tens of thousands a month :)

why of course? Depending on your needs you may need to pay tens of thousands a month :)

We discussed personal websites, not business solutions :)

We discussed personal websites, not business solutions :)

OP was talking about a big website that would possibly need to scale in the future. That's business talk (or an overinflated expectation of future developments in his traffic) ;)

Ok, you win

OP was talking about a big website that would possibly need to scale in the future. That's business talk (or an overinflated expectation of future developments in his traffic) ;)

Yeah true, I was talking about big business solution.

eh, one more thing. Can you guys suggest me any good java hosting company, which is reliable with good customer support and also not costly, as I need a server for development requirements only at present.
Permission to use my own JVM and Tomcat is a big plus.

Have look on "linode" hosting (that is what I have)

Have look on "linode" hosting (that is what I have)

Does it allow you to use any version of jdk and tomcat and full root level control?

And I have one more doubt, suppose if I start with a vps with decent configuration but later,say after 2 years my site is receiving a massive amount of traffic and also I am building my website more and more complex and large. Then if the hosting company cannot handle that much? or if they start demanding unnecessary amount of money to do that for me or for that much requirement I guess I need a dedicated hosting and my current hosting company do not support dedicated hosting then what are the choices a person left with at that time?

Member Avatar for iamthwee

Another thing I would do is check the job vacancies.

What jobs are in high demand? It wouldn't be a bad idea to specialise in one technology that is in high demand at the moment.

Does it allow you to use any version of jdk and tomcat and full root level control?
>> It is up to you what you install starting from selection of your operating system from different flavours of Unix (Ubuntu, Fedora, Debian Centos)

And I have one more doubt, suppose if I start with a vps with decent configuration but later,say after 2 years my site is receiving a massive amount of traffic and also I am building my website more and more complex and large. Then if the hosting company cannot handle that much? or if they start demanding unnecessary amount of money to do that for me or for that much requirement I guess I need a dedicated hosting and my current hosting company do not support dedicated hosting then what are the choices a person left with at that time?
As far I know this service provider does support large organizations across world so I wouldn't be worried now. Nevertheless you should check your plans and see what will be your business grow in time and if this solution is reasonable/adequate.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.