Silk Road forums
Support => Technical support => Topic started by: envioso on November 09, 2012, 09:12 pm
-
couldn't it be possible to scale SR with multihomed servers? add multiple hidden service addresses to give multiple points of entry into the site. this is just simply too much traffic for one address. just make the multiple addresses go to different linked servers behind the scenes... you get what im sayin? since .onion obviously doesn't support a red robin dns route. ghetto rig it. at least we'd be able to spread out traffic and access the site rather than straight up ddosing it.
-
What if this is LE/DEA fault?
It would def put a kink in the system to make SR not accessible? ???
Just sayin...
(not trying to troll)
-
I get the error message: invalid onion hostname.
Koelen3.
-
the LE thought had crossed my mind. lets just keep up the hope it come back. usually does
-
envy, are you talking about some random redirect or something? so everyone types in silkroadvb5piz3r.onion, and they are randomly redirected to multiple .onions for the same server? We already know of 3 .onions owned by Silk Road store (4 if the early failsafe is still in hand) so then the only traffic that silkroadvb5piz3r.onion sees is login traffic, then users are forwarded to one of the other urls for the actual site. I guess I don;t know a whole lot about it, but if the bottleneck is the silkroadvb5piz3r.onion, wouldn't that at least spread the traffic over different routes? Maybe it is a stupid idea, but in my head it makes more sense than it does after I typed it.
-
As someone in another thread pointed out it's not technically too much bandwidth for the SR server, it's that each connection takes up a lot of CPU because of all the Tor overhead (encryption especially). I doubt SR is maxing out it's bandwidth, but it probably is maxing out CPU.
Regardless, I think the solution is very similar to what you suggest because at the moment one .onion address equates to one physical server machine if I understand correctly how things work.
My suggestion I made in another thread is to split the site up into the different categories. Eg a different .onion address for weed, cocaine, LSD, etc etc.
Then the main SR site only does "account" stuff and if you click on a category you get redirected to a different site. Sites might all share a database, or they might just synchronize occasionally - eg vendor stats etc. Or even users can move funds manually between sites at first. Small inconvenience just to get things to work.
Just some random ideas.
-
I'm sure that a fair amount of the problem comes from storing data on the servers in an encrypted manner. Database TPS will go down by a fair amount if you have to flush out to a transparently encrypted filesystem. Also even if silkroad wasn't running on a hidden service, the site does get a fair amount of hits, and making an eCommerce platform to scale is not an easy undertaking.
A modern manycore server can handle thousands of encrypted connections per second with no issue. Having a dedicated load balencer that runs Tor hidden service + nginx to load balence requests to a bunch of web worker nodes running apache+PHP is probobly a decent enough solution that will not crash. I think the issue is probobly also related to the database, and searching, etc...
This solution has no need for multiple onion names, thats just silly. Also if you had multiple servers in multiple location you have to handle data consistency.
The only solution that does this well is probably something like cassandra(a hybrid between a column store and a data mapping engine), which can essentially do on the fly conflict resolution.
MongoDB supports multihomed configurations where data "rows" have to be local to a geographic location.
-
I'm sure that a fair amount of the problem comes from storing data on the servers in an encrypted manner. Database TPS will go down by a fair amount if you have to flush out to a transparently encrypted filesystem. Also even if silkroad wasn't running on a hidden service, the site does get a fair amount of hits, and making an eCommerce platform to scale is not an easy undertaking.
A modern manycore server can handle thousands of encrypted connections per second with no issue. Having a dedicated load balencer that runs Tor hidden service + nginx to load balence requests to a bunch of web worker nodes running apache+PHP is probobly a decent enough solution that will not crash. I think the issue is probobly also related to the database, and searching, etc...
This solution has no need for multiple onion names, thats just silly. Also if you had multiple servers in multiple location you have to handle data consistency.
The only solution that does this well is probably something like cassandra(a hybrid between a column store and a data mapping engine), which can essentially do on the fly conflict resolution.
MongoDB supports multihomed configurations where data "rows" have to be local to a geographic location.
you honor your name my friend