Author

Topic: Mt.Gox is a piece of shit (Read 2734 times)

legendary
Activity: 4690
Merit: 1276
March 06, 2013, 10:29:10 PM
#14

Zhou Tong could probably whip something out using redis in half a day (if Mt.Gox's actual matching engine does not already use it which I would find surprising.)  Someone else should probably do the security architecture though.

legendary
Activity: 1176
Merit: 1015
March 06, 2013, 09:48:26 PM
#13
Compared to real trading platforms MtGox is rubbish. I really think they don't care because no one else in the community has made a better site yet. (Making a competitor is hard because you have to be legal and know your customer)
legendary
Activity: 1498
Merit: 1000
March 06, 2013, 09:29:49 PM
#12
Don't blame PHP, plenty of great sites use it.

PHP is great, but for things like this a java application would handle the load better, and be able run orders a faster.

MMMMMM you're getting into very dangerous territory with that statement. First of all, php is pretty fast and lightweight compared to Java. Second, there are certain functions that are faster in PHP and certain functions that are faster in Java. But one particular key factor makes PHP the better choice: MySQL development teams and PHP development teams used to work pretty closely together to improve efficiency, I doubt very much that Java has the same speed when it comes to "talking" to MySQL then again, I'm not sure what back-end DB MTGox is using but if they are using PHP it's very easy to assume they are using MySQL as the backend, again, I can be wrong.

First off, just talking about java for the trading engine. Also if it was up to me, I wouldn't use mysql for trading engine store. I would use java because the logic would be faster for matching, also I would use a redis for the store, cause you have so many reads and writes that it better to have them in memory.

You want to keep in memory an entire transactional system? Yeah, sure, that might work for your 100 lines advanced "Hello World" application, but for a production environment of the size of MTGox, with thousands or transactions per second, if not more, and the risk of losing data or a transaction if it's using only memory is too risk.. that's why there exist transactional databases Smiley

No only non-match trades would be in redis, and redis does write backups to the filesystem. Actually redis done right doesn't have the much more risk than mysql.

PHP can do the same and probably faster. I'd still use MySQL.
Java is inherently SLOWWWW look at Android phones hahahaha  j/k

PHP isn't faster than java in the logic of matching trades, plus PHP is event-based so you would have to have a cron job, where in java you can actually have the program do all the matching, with out delays.
legendary
Activity: 1498
Merit: 1000
March 06, 2013, 09:27:21 PM
#11
No only non-match trades would be in redis, and redis does write backups to the filesystem. Actually redis done right doesn't have the much more risk than mysql.

You're a funny guy. You do realise that you need full ACID & transactional capability for a financial trading system right?

That is why you would use mysql to hold the data after a trading match was made. Actually did some research just know and actually an exchange on bitcointalk does use redis... So it can be done, https://bitcointalksearch.org/topic/icbit-new-exchange-60548
sr. member
Activity: 293
Merit: 250
March 06, 2013, 09:21:27 PM
#10
No only non-match trades would be in redis, and redis does write backups to the filesystem. Actually redis done right doesn't have the much more risk than mysql.

You're a funny guy. You do realise that you need full ACID & transactional capability for a financial trading system right?
legendary
Activity: 1498
Merit: 1000
March 06, 2013, 09:17:09 PM
#9
Don't blame PHP, plenty of great sites use it.

PHP is great, but for things like this a java application would handle the load better, and be able run orders a faster.

MMMMMM you're getting into very dangerous territory with that statement. First of all, php is pretty fast and lightweight compared to Java. Second, there are certain functions that are faster in PHP and certain functions that are faster in Java. But one particular key factor makes PHP the better choice: MySQL development teams and PHP development teams used to work pretty closely together to improve efficiency, I doubt very much that Java has the same speed when it comes to "talking" to MySQL then again, I'm not sure what back-end DB MTGox is using but if they are using PHP it's very easy to assume they are using MySQL as the backend, again, I can be wrong.

First off, just talking about java for the trading engine. Also if it was up to me, I wouldn't use mysql for trading engine store. I would use java because the logic would be faster for matching, also I would use a redis for the store, cause you have so many reads and writes that it better to have them in memory.

You want to keep in memory an entire transactional system? Yeah, sure, that might work for your 100 lines advanced "Hello World" application, but for a production environment of the size of MTGox, with thousands or transactions per second, if not more, and the risk of losing data or a transaction if it's using only memory is too risk.. that's why there exist transactional databases Smiley

No only non-match trades would be in redis, and redis does write backups to the filesystem. Actually redis done right doesn't have the much more risk than mysql.
legendary
Activity: 1498
Merit: 1000
March 06, 2013, 09:09:38 PM
#8
Don't blame PHP, plenty of great sites use it.

PHP is great, but for things like this a java application would handle the load better, and be able run orders a faster.

MMMMMM you're getting into very dangerous territory with that statement. First of all, php is pretty fast and lightweight compared to Java. Second, there are certain functions that are faster in PHP and certain functions that are faster in Java. But one particular key factor makes PHP the better choice: MySQL development teams and PHP development teams used to work pretty closely together to improve efficiency, I doubt very much that Java has the same speed when it comes to "talking" to MySQL then again, I'm not sure what back-end DB MTGox is using but if they are using PHP it's very easy to assume they are using MySQL as the backend, again, I can be wrong.

First off, just talking about java for the trading engine. Also if it was up to me, I wouldn't use mysql for trading engine store. I would use java because the logic would be faster for matching, also I would use a redis for the store, cause you have so many reads and writes that it better to have them in memory.
full member
Activity: 238
Merit: 100
March 06, 2013, 09:07:41 PM
#7
Will coinlab use the mt gox api or setup their own trading site ?
legendary
Activity: 1358
Merit: 1002
March 06, 2013, 09:05:32 PM
#6
Your rant makes me want to put a "sold at $33 bought back at $41" meme in this thread.

The amount of butthurt is imense, ain't it? Wink
sr. member
Activity: 284
Merit: 251
March 06, 2013, 09:02:43 PM
#5
Your rant makes me want to put a "sold at $33 bought back at $41" meme in this thread.
legendary
Activity: 1498
Merit: 1000
March 06, 2013, 08:52:47 PM
#4
Don't blame PHP, plenty of great sites use it.

PHP is great, but for things like this a java application would handle the load better, and be able run orders a faster.
sr. member
Activity: 321
Merit: 250
March 06, 2013, 08:46:15 PM
#3
Agreed, I just pulled all my remaining BTC out of Mt.gox, If they can't handle a large volume of sell orders then they have failed their intended purpose.

Fuck um.
legendary
Activity: 2114
Merit: 1040
A Great Time to Start Something!
March 06, 2013, 07:37:08 PM
#2
Don't blame PHP, plenty of great sites use it.
member
Activity: 109
Merit: 10
March 06, 2013, 07:21:14 PM
#1
How about creating a order matching system not in fucking slow PHP?
Jump to: