0

I am only familiar with php and javascript and I guess php is not good at serving large amount of concurrent request. I would be grateful if someone can introduce me to more appropriate framework for that, as I don't really know the keyword to google for now. Thanks a lot.

1
  • 1
    As a note - also voting to Close. This is not a serverfault question, if anything it should be on stackoverflow. Programming side, not Administration.
    – TomTom
    Dec 24, 2012 at 14:26

3 Answers 3

2

Multicast and a publish/subscribe (pub/sub) messaging framework, depending on the data source, your network and where your listeners are.

1

This question can not be answered - you come from a "I am a small webdude" side and ask a question People have spend millions to answer.

First, what is "similar to stock Quote". Seriously. I track 5 exchanges - all the CME Group offers. I track more than a quarter Million symbols, most inactive. THe active ones have HUNDREDS of updates per second (incidentally those are the ones I am really interested in).

Second, what is "lots of People"? 100? 100.000?

What is deliver. Intranet? Internet? Intranet you really want to look into something like Multicast. Internet Multicast does not exist.

Framework? Well, there is TIBCO which is famous. Implementation Price 7 Digits. Rithmic uses somethign in hosue developped, as do QUITE a lot of other Providers of this area.

Updates? What is your idea of delivery latency? I mean, at home I am 129 MS after the exchagne. WHere it Counts I am 1ms from it. THis is important - becasue you can not rely on "pull", you ahve to get updates pushed.

THis REALLY is a Hugh Topic. ANY Major langauge (C#, Java, C++) and some non so common ones have available bindings. THe Budget and real use will start deciding your decision Matrix.

9
  • Don't get me started on Rithmic... ;) (too close to home)
    – ewwhite
    Dec 24, 2012 at 14:34
  • Yeah. I use TT so far, moving over to Rithmic next year. Quotes coming so far from Nanex.
    – TomTom
    Dec 24, 2012 at 14:35
  • Meet me in chat :)
    – ewwhite
    Dec 24, 2012 at 14:54
  • Nope, no chat ;) My email is in my profile, though, if you have something you want to discuss offline. It is also used for skype/messenger.
    – TomTom
    Dec 24, 2012 at 15:02
  • Tsk... I managed that infrastructure (Rith...) for a bit.
    – ewwhite
    Dec 24, 2012 at 15:03
0

Of course it depends on what "large amount" and "data changed in a few seconds" means to you. To handle a very large number of concurrent users, it's definitely better not having users hit your dynamic app server very often.

Intense caching with things like Varnish + CDN and some fast backend storage (plenty of options here) would help a lot.

Regarding the dynamic backend itself, Erlang has been proven to hold massive concurrency, and you have excellent results with Java/Scala as well.

It's important not to over-engineer though, as you might be building a much more complex solution than your problem actually requires.

5
  • -0. That really depends on the usage Scenario, but all simila Setups I know off stay away from something slow as a CDN - latency rules here (my own latency to my data source is 1ms). Not sure if I read too much into stock quotes...
    – TomTom
    Dec 24, 2012 at 14:25
  • Slow as a CDN?? One of the main benefits of a CDN is to have edge locations very close to your users. If each content lasts for a few minutes and you'd have many users accessing it on the CDN provider, probably it'd very very fast.
    – blpsilva
    Dec 24, 2012 at 16:04
  • THe problem is that when you talk LATENCY of UPDATES, then the CDN is anotehr step. A CDN gives you a great way to distribute data faster AFTER upload. Bad news with this type of query is that the data is never available for long as it gets retired within (mili) seconds. As such, the CDN overhead will kill you. CDN are great for static data (images etc.), not for stuff like chat content (and that is what this is talking about).
    – TomTom
    Dec 24, 2012 at 16:06
  • CDNs will only speed up data reads, it wont be part of any updates. Well, the thing here is that the question is so broad that it gets us discussing many hypothetical scenarios that might never be the case of our friend :)
    – blpsilva
    Dec 24, 2012 at 16:29
  • I first assumed market updates - now I see it more like "chat" (a line every x seconds) in a small setup (100-200 users). Any small shared hosting can handle that.
    – TomTom
    Dec 24, 2012 at 16:31

Not the answer you're looking for? Browse other questions tagged .