mirror of
https://github.com/Xahau/xahaud.git
synced 2025-11-18 09:35:49 +00:00
62 lines
1.8 KiB
Plaintext
62 lines
1.8 KiB
Plaintext
|
|
Dependencies:
|
|
Boost 1_47
|
|
boost log http://boost-log.sourceforge.net/libs/log/doc/html/log/installation.html // this didn't work immediatly so I stopped messing with it but we should probably use it
|
|
protocol buffers: expects ..\protobuf-2.4.1 and ..\protoc-2.4.1-win32
|
|
openssl
|
|
sqlite (files are in git. )
|
|
mysql (we don't need this quite yet...)
|
|
|
|
Using:
|
|
pugixml version 1.0 download new versions at http://pugixml.org/
|
|
This is in the repo. you don't need to get it
|
|
|
|
|
|
code from:
|
|
// Copyright (c) 2003-2011 Christopher M. Kohlhoff (chris at kohlhoff dot com)
|
|
//
|
|
// Distributed under the Boost Software License, Version 1.0. (See accompanying
|
|
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
----
|
|
// Copyright (c) 2009-2010 Satoshi Nakamoto
|
|
// Copyright (c) 2011 The Bitcoin developers
|
|
// Distributed under the MIT/X11 software license, see the accompanying
|
|
// file license.txt or http://www.opensource.org/licenses/mit-license.php.
|
|
----
|
|
|
|
|
|
How much do we want to depend on the DB? Right now we are pulling a lot of stuff out f the DB and storing it in various data structures. but is that necessary?
|
|
Can't we keep everything in the DB?
|
|
LedgerMaster for example. mFutureTransactions should be in the DB
|
|
ValidationCollection
|
|
There is some trade off since reconstructing a whole ledger from the DB is a bit intense. So it might be good to cache these in memory.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Threads
|
|
----
|
|
Main thread
|
|
Does all the work. Tasks are given to it through the messageQ
|
|
Door thread
|
|
Just accepts connections and then hands them off
|
|
There is a thread for each peer?
|
|
|
|
|
|
Peers are causing:
|
|
updates to the current transaction list
|
|
updates to the validated list
|
|
you to relay messages to other peers
|
|
update your known node list
|
|
check if a transaction is valid
|
|
|
|
|
|
Actualy I think this can all be in one thread. Commands to the app must be done by RPC.
|
|
|
|
|
|
|