Note that there are some explanatory texts on larger screens.

plurals
  1. POLanguages Offering Scalability for Server-client Application
    text
    copied!<p>I want to learn how to get started with developing highly scalable server/client applications--more specifically for non-web-based/not-in-a-browser desktop clients. I figure that developing a very minimalistic chat application (roughly comparable to AIM/Skype) is a reasonable way to get started down such a path of learning about servers/clients and scalability.</p> <p>I am unsure which programming language would be appropriate for this task considering my emphasis on scalability. Personally, the only languages I am interested in working with are Java, C#, and C/C++. As far as the server OS goes, I will be dealing with Linux, so C# in my case would imply Mono.</p> <p>I suppose my specific interest boils down to what language to use on the server, since it is the infrastructure supporting the application which has to be highly scalable. I have heard mixed reviews of Java and C# server scalability. My intuition would suggest that they are both perfectly reasonable choices, but then I hear about others running into problems once they reach a certain threshold of application/user traffic. It is hard to know what to make of hearsay, but I do suppose that the lack of bare-metal support of these languages could hinder scalability at certain thresholds. When I hear about C/C++, I hear mention of the great Boost libraries (ex. such as <code>Boost.Asio</code>) offering the ultimate scalability. But then I am scared off when I hear that sockets in particular are much more complex to deal with in C/C++ than with other languages like Java/C#.</p> <p>What is an effective way to get started in making highly scalable server-client applications such as a chat client? Of the ones which I have mentioned, which programming language is adequately suited for developing such applications? What other languages should I consider for such an application?</p> <p>EDIT: the term "scale" most directly relates to scaling to serve a large number of users (perhaps tens or hundreds of thousands, maybe millions).</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload