Bitcoin Forum
November 15, 2024, 01:01:34 AM *
News: Check out the artwork 1Dq created to commemorate this forum's 15th anniversary
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: One address on multiple machines  (Read 1404 times)
misiek (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
August 12, 2012, 11:34:57 PM
 #1

Hi!
I'm trying to scale Bitcoin wallets across few servers to get faster money send and receive. Finally the BTCd is single-threaded so I can't getwork and send many transactions at a time.

Is it possible to enter private key of address on multiple servers and use it without problems? If it's not I will propably have to do "money dispatcher" - 1 server sending money to different servers (different addresses).
notme
Legendary
*
Offline Offline

Activity: 1904
Merit: 1002


View Profile
August 12, 2012, 11:37:35 PM
 #2

Hi!
I'm trying to scale Bitcoin wallets across few servers to get faster money send and receive. Finally the BTCd is single-threaded so I can't getwork and send many transactions at a time.

Is it possible to enter private key of address on multiple servers and use it without problems? If it's not I will propably have to do "money dispatcher" - 1 server sending money to different servers (different addresses).

What are you trying to accomplish exactly?


Sending/Receiving is as simple as broadcasting or receiving a transaction message on the network.

getwork is for mining, not sending and receiving bitcoins.

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
Raoul Duke
aka psy
Legendary
*
Offline Offline

Activity: 1358
Merit: 1002



View Profile
August 12, 2012, 11:44:34 PM
 #3

You can send several payments on 1 transaction.
Use sendmany.

https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list
Stephen Gornick
Legendary
*
Offline Offline

Activity: 2506
Merit: 1010


View Profile
August 13, 2012, 07:38:24 AM
 #4

Is it possible to enter private key of address on multiple servers and use it without problems?

Bad things will happen if you are running a copy of the same wallet.dat in more than one place at a time.  Same thing goes for importing a private key into multiple wallets and using them simultaneously.

 - http://bitcoin.stackexchange.com/a/509/153

If alll you want to do is mine from multiple hosts against a single bitcoind on a LAN, that can be done.

Unichange.me

            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █


misiek (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
August 13, 2012, 09:34:53 AM
 #5

Same thing goes for importing a private key into multiple wallets and using them simultaneously.

That was my point.

I'm not going to send many transactions at a time, but many transactions alone. So I need "money dispatcher".

If alll you want to do is mine from multiple hosts against a single bitcoind on a LAN, that can be done.
I know it. I have pool setted up. I said about this to show the single-threaded btcd problem. It can't do many things at once, so I have to scale it.

So I have to do it like:

http://ss-host.pl/images/dispatch.png
Better use multiple btcd on 1 VM or make few VMs?
kokjo
Legendary
*
Offline Offline

Activity: 1050
Merit: 1000

You are WRONG!


View Profile
August 13, 2012, 09:51:30 AM
 #6

you seems to have a limited understading of bitcoin. you does not need multiple bitcoind, unless you have very very special needs. which i doubt you have.

also it is not clear what it is you are trying to accomplish, please specify... (visual aids is not specifying, its just dumb and annoying, unless its very relevant and meaning full)

"The whole problem with the world is that fools and fanatics are always so certain of themselves and wiser people so full of doubts." -Bertrand Russell
misiek (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
August 13, 2012, 11:31:51 AM
 #7

Let's say 100 transactions/s but every has to be sent alone and very fast. If I understand btcd logic correct it can't do many things simultaneously because it's single-threaded.

I understand BTC a little bit, but here I have special needs. I just need to go over the single-thread limits.
notme
Legendary
*
Offline Offline

Activity: 1904
Merit: 1002


View Profile
August 13, 2012, 12:47:10 PM
 #8

Same thing goes for importing a private key into multiple wallets and using them simultaneously.

That was my point.

I'm not going to send many transactions at a time, but many transactions alone. So I need "money dispatcher".

If alll you want to do is mine from multiple hosts against a single bitcoind on a LAN, that can be done.
I know it. I have pool setted up. I said about this to show the single-threaded btcd problem. It can't do many things at once, so I have to scale it.

So I have to do it like:

http://ss-host.pl/images/dispatch.png
Better use multiple btcd on 1 VM or make few VMs?

bitcoind is usually IO bound.  Unless your VMs are on multiple physical servers, your better off with one.

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
TangibleCryptography
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


Tangible Cryptography LLC


View Profile WWW
August 13, 2012, 01:11:03 PM
 #9

Let's say 100 transactions/s but every has to be sent alone and very fast. If I understand btcd logic correct it can't do many things simultaneously because it's single-threaded.

I understand BTC a little bit, but here I have special needs. I just need to go over the single-thread limits.

You are aware that entire international PayPal network is ~50tps (after over a decade of growth) and the current entire Bitcoin network is <1tps.  

You will single handledly need to generate a transaction volume in excess of 2x the PayPal network and 50x the entire rest of the Bitcoin network combined?  Really?  Are you absolutely sure.

Quote
I understand BTC a little bit, but here I have special needs.
I doubt that.   You do realize the bitcoin network has anti-spam rules which force fees of low priority (low age, low value) and very small transactions.  You have a budget in the thousands of bitcoins per hour in fees to accomplish what you are trying to do.   
misiek (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
August 13, 2012, 01:18:07 PM
 #10

Not in the beginning but I have to prepare a backup system for such situation. I know that fee is calculated with sth like "money age" , but like I said: I hope my project will be popular and will need such traffic.
TangibleCryptography
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


Tangible Cryptography LLC


View Profile WWW
August 13, 2012, 01:21:06 PM
 #11

Not in the beginning but I have to prepare a backup system for such situation.
You need to prepare a "backup" for single handledly creating 99.5% of the transaction volume on the Bitcoin network?  Really?

Well hate to break it to you but current tx volume is currently capped at ~1 tps (due to limit on block size). 
misiek (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
August 13, 2012, 03:13:25 PM
 #12

So the 500kB is limit of all transactions in a block, yes?

In my project people play many games (fps too) and I need to have system ready for such traffic. I see that I need to queue payouts into bigger transactions and send it in 30s/60s intervals or I have to limit payouts per-user.
notme
Legendary
*
Offline Offline

Activity: 1904
Merit: 1002


View Profile
August 13, 2012, 03:37:51 PM
 #13

So the 500kB is limit of all transactions in a block, yes?

In my project people play many games (fps too) and I need to have system ready for such traffic. I see that I need to queue payouts into bigger transactions and send it in 30s/60s intervals or I have to limit payouts per-user.

You can send all your payouts in one transaction with sendmany.  Doing this one a minute should be plenty quick enough, and now you're only dealing with 1440 transactions per day.

Anyway, like I said, multiple bitcoinds is just going to thrash your harddrive and make everything crawl.

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
Bitco
Sr. Member
****
Offline Offline

Activity: 746
Merit: 253



View Profile
August 13, 2012, 09:29:27 PM
 #14

Bad things will happen if you are running a copy of the same wallet.dat in more than one place at a time.  Same thing goes for importing a private key into multiple wallets and using them simultaneously.

I've done it and nothing really bad happens.  The other computer will show the outgoing transactions when it gets them from the network.

The only annoying thing is that the 0.6.3 client doesn't show the change addresses in the UI, so it can be a bit tedious to find those addresses and extract the private keys.


You are aware that entire international PayPal network is ~50tps (after over a decade of growth) and the current entire Bitcoin network is <1tps. 

It quite surprises me that PayPal's volume is that high.  Where did you get this data?

Visa/MC reportedly do ~2000 tps, but only about 5% of that is internet sales.  (~100 tps... or possibly a bit more, as internet sales tend to get lumped in with all 'card not present' transactions, so there aren't a lot of good statistics on this).
TangibleCryptography
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


Tangible Cryptography LLC


View Profile WWW
August 13, 2012, 09:34:08 PM
 #15

It quite surprises me that PayPal's volume is that high.  Where did you get this data?

https://www.paypal-media.com/about

Quote
PayPal customers made 565 million transactions in Q2 2012, or 6.2 million payments per day.

The avg 50 tps has been used as a rule of thumb for some time now.  The above datapoint translates into an average of 71.5 tps.  Not sure if that was atypical or not.  I am pretty sure online CC sales make up more than 100 tps now.   5% seems incredibly low for 2012.
Stephen Gornick
Legendary
*
Offline Offline

Activity: 2506
Merit: 1010


View Profile
August 13, 2012, 10:15:53 PM
 #16

Bad things will happen if you are running a copy of the same wallet.dat in more than one place at a time.  Same thing goes for importing a private key into multiple wallets and using them simultaneously.

I've done it and nothing really bad happens. 

Perhaps I should to clarify.  Bad things will happen if you end up making double spend transactions (inadvertently or not) because you had the same private keys in multiple wallets.

Unichange.me

            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █


bradmurmz
Full Member
***
Offline Offline

Activity: 205
Merit: 100


View Profile WWW
August 13, 2012, 10:31:14 PM
 #17

I have also tried this, but can tell you its a bad idea... As soon as you create a new address on each of the separate machines you will have two separate wallet.dat files and trying to merge the two will be confusing, and so will your balances in each of the wallets.
Bitco
Sr. Member
****
Offline Offline

Activity: 746
Merit: 253



View Profile
August 13, 2012, 10:50:17 PM
 #18

https://www.paypal-media.com/about

Quote
PayPal customers made 565 million transactions in Q2 2012, or 6.2 million payments per day.

The avg 50 tps has been used as a rule of thumb for some time now.  The above datapoint translates into an average of 71.5 tps.  Not sure if that was atypical or not.  I am pretty sure online CC sales make up more than 100 tps now.   5% seems incredibly low for 2012.

Interesting.  That is quite a large volume.  I suspect that this is almost entirely outside the US.

'Card not present' tranasctions were in the 5-10% range as of a few years ago.  It's possible that it's slightly higher now.  Still, the vast majority of credit/debit transactions are point-of-sale, and not online.


Perhaps I should to clarify.  Bad things will happen if you end up making double spend transactions (inadvertently or not) because you had the same private keys in multiple wallets.

What happens exactly?  The second transaction will get rejected, but what happens when the client software detects this?
Stephen Gornick
Legendary
*
Offline Offline

Activity: 2506
Merit: 1010


View Profile
August 13, 2012, 11:14:23 PM
 #19

What happens exactly?  The second transaction will get rejected, but what happens when the client software detects this?

For the wallet from which the attempted spend occurred -- it sits showing as 0/unconfirmed.  The Bitcoin.org client has no method to deal with it, nor can you manually remove it without doing wallet surgery with a third party tool.

Unichange.me

            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █


Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!