Ethereum nodediscover
a total of 22 weeks, divided into five stages,
the first stage is 4 weeks, go language foundation and network concurrency, learning the introctory go language,
the second stage is 4 weeks, go language practical web development, crawler development, cryptography, consensus algorithm, realizing lightweight public chain, learning the website and crawler that can develop golang, Achieve lightweight blockchain
stage 3, 4-week ethereum source code analysis and smart contract DAPP development, master Ethereum core and smart contract development, as well as blockchain,
stage 4, 4-week super ledger, bitcoin EOS, source code analysis and smart contract practice, master super ledger development, cat bitcoin, bifurcated EOS after learning, As well as DAPP development of smart contract
phase 5, 6-week project practice, five enterprise level projects, and one year of blockchain project experience after learning
from the characteristics of the language itself, go is a very efficient language, which highly supports concurrency. Go language itself pays more attention to distributed system, and concurrency processing is relatively good, such as advertising and search, That kind of high concurrency server
go language advantages:
excellent performance, can be directly compiled into machine code, does not rely on other libraries, go is extremely fast. Its performance is similar to Java or C + +
concurrency is supported at the language level, which is the biggest feature of go. It is born to support concurrency, and go is the concurrency supported in gene, which can make full use of multi-core and make it easy to use concurrency
the built-in runtime supports garbage collection, which is one of the features of dynamic language. Although GC is not perfect at present, it is enough to cope with most of the situations we can encounter, especially GC after go1.1
it's easy to learn. The authors of go language all have the gene of C, so go naturally has the gene of C. There are 25 go keywords, but the expressive ability is very strong. It almost supports most of the features you've seen in other languages: inheritance, overloading, object, etc
rich standard libraries, go has built a large number of libraries, especially the network library, which is also my favorite part< As like as two peas, br / > built-in powerful tools, Go language is built with many tools chain, the best should be gofmt tools, automatic formatting code, make team review become so simple, code format is exactly the same, it is very difficult to think differently.
cross platform compilation and fast compilation. Compared with the sluggish compilation speed of Java and C + +, the fast compilation time of go is a major efficiency advantage
disadvantages of go language:
package management: package management of go language is absolutely not perfect. By default, it has no way to make a specific version of the dependency library, nor can it create replicable builds. In contrast, python, node and Ruby all have better package management systems. However, with the right tools, the package management of go language can also perform well
lack of development framework: go language does not have a major framework, such as Ruby's rails framework, Python's Django framework or PHP's laravel. This is a heated discussion in the go language community, because many people think that we should not start with using frameworks. This is true in many cases, but if you just want to build a simple crud API, it's much easier to use Django / djrf, rails laravel, or Phoenix
exception handling: go language can help developers deal with compilation errors by simply returning errors (or call stack) through functions and expected calling codes. Although this method is effective, it is easy to lose the scope of the error, so it is difficult to provide meaningful error information to users. Error package can solve this problem by allowing us to add context and stack trace to return error
another problem is that we may forget to handle errors. Static analysis tools such as errcheck and megacheck can avoid these errors. Although these solutions are very effective, they may not be the right way.
POW: full name of proof of work
pos: proof of stake
both of them are the consensus mechanism of blockchain and the bookkeeping method of digital currency
the difference is:
1. POW mechanism: workload proof mechanism, that is, the proof of workload, is the requirement that must be met when generating a new transaction information (that is, a new block) to be added to the blockchain. In the blockchain network based on workload proof mechanism, the ability of nodes to obtain the correct numerical solution to generate blocks by calculating the numerical solution of random hash hash is the specific performance of node computing power
POS mechanism: the proof of rights and interests requires the certifier to provide a certain amount of ownership of cryptocurrency. The operation mode of the proof of rights and interests mechanism is that when creating a new block, the miners need to create a "currency right" transaction, and the transaction will send some coins to the miners themselves according to the preset proportion. According to the proportion and time of token owned by each node, the equity proof mechanism reces the mining difficulty of nodes proportionally according to the algorithm, so as to speed up the speed of searching for random numbersextended materials:
the concept of bitcoin was first proposed by Nakamoto in 2009. According to Nakamoto's ideas, the open source software and the P2P network on it were designed and released. Bitcoin is a kind of P2P digital currency. Point to point transmission means a decentralized payment system
unlike most currencies, bitcoin does not rely on specific currency institutions. It is generated by a large number of calculations based on specific algorithms. Bitcoin economy uses the distributed database composed of many nodes in the whole P2P network to confirm and record all transactions, and uses the design of cryptography to ensure the security of all aspects of currency circulation. The decentralized nature and algorithm of P2P can ensure that it is impossible to artificially manipulate the value of bitcoin through mass proction
translation result:
Ethereum node needs to be synchronized, please wait a moment
please
English [PLI & # 720; z]
us [pliz]
int. please (politeness)
vt; To please or satisfy.
VI; Please hurry up, please hurry up, please play cards
three common bond modes
the configuration process takes mode = 6 as an example. For the other seven modes, please refer to the extended reading
mode = 0: load balancing mode, with automatic backup, but need "switch" support and setting. Mode = 1: automatic backup mode. If one line breaks, other lines will be automatically backup. Mode = 6: load balancing mode, with automatic backup, without "switch" support and setting
physical interface
2015610165454336.jpg (274 × 145)
CentOS version
the code is as follows:
datanode01: ~ & gt; Cat / etc / RedHat release
CentOS release 6.4 (final)
disable NetworkManager
the code is as follows:
? Disable NetworkManager immediately and disable booting
/ etc / init. D / NetworkManager stop
chkconfig NetworkManager off
/ etc / init. D / network restart
Close iptables and SELinux (optional)
code The code is as follows:
# shut down iptables immediately and disable booting
/ etc / init. D / iptables stop
chkconfig iptables off
# shut down SELinux immediately and permanently disable
setenforce 0
sed - I's / SELinux = forcing / SELinux = disabled / '/ etc / SELinux / config
modify the host name
the code as follows:
VI / etc / sysconfig / net Work
networking = yes
host name = namenode01
refresh takes effect
host name namenode01
source / etc / sysconfig / network
configure IP
private address
code as follows:
CD / etc / sysconfig / network scripts
[ root@datanode09 network-scripts]# cat ifcfg-eth3
DEVICE=eth3
ONBOOT=yes
BO Otproto = none
IPADDR = 10.129.46.19
netmask = 255.255.255.0
ipv6init = no
userctl = no
double network card binding
the code is as follows:
CD / etc / sysconfig / network scripts
? Edit eth0
Cat & gt; ifcfg-eth0 <& lt; EOF
device = eth0
onboot = yes
bootproto = none
userctl = no
Master = bond0
EOF
, edit eth2
Cat & gt; ifcfg-eth2 <& lt; EOF
device = eth2
onboot = yes
bootproto = none
userctl = no
Master = bond0
EOF
Edit bond0
Cat & gt; ifcfg-bond0 <& lt; EOF
device = bond0
type = Ethernet
onboot = yes
bootproto = none
IPADDR = 10.3.3.214
netmask = 255.255.255.0
gateway = 10.3.3.1
IPv6 init = no
userctl = no
EOF
? Set the bond parameter, and pay attention to the mode selection
Cat & gt/ etc/modprobe.conf <& lt; EOF
alias bond0 bonding
Options bond0 mimon = 100 mode = 6
EOF
? Add boot auto start parameters
Cat & gt& gt; / etc/rc.local <& lt; EOF
ifenslave bond0 eth0 eth2
EOF
? Restart NIC
service network restart
? Make binding NIC effective immediately
ifenslave bond0 eth0 eth2
? Test binding network
Ping 10.3.3.1
comparison of three commonly used NIC binding modes
mode = 0
interrupt any link or recover link, Network 0 packet loss
advantages: traffic doubled
disadvantages: the same switch needs to be connected for aggregation configuration, which can not guarantee the high availability of physical switches (Cisco seems to have a solution?)
mode = 1
interrupt any link to lose 1-3 packets (seconds), and recover the link to lose 0 packets
advantages: the switch does not need to be configured
disadvantages: as above
mode = 6
interrupt any link to lose 0 packets, and recover the link to lose 10-15 packets (seconds)
advantages: the switch does not need to be configured, and the traffic is doubled
if you want to do gold and silver T + D, it's best to go to CCB, postal bank, Shanghai Pudong Development Bank, Minsheng Bank or Ping An Bank to do online banking. You can log in online banking at home to open gold and silver T + D, but you can enter our organization number when opening, Transaction fees can be reced (at least 4% of 10000, and the average position is free), at the same time, provide market trading guidance, want to do a good job in gold and silver T + D: judging the direction of the price trend, mentality and low fees are the most critical! The price of gold and silver is most affected by European and American economic indicators and international turmoil events (such as European and American unemployment rate, interest rate, inflation rate, turmoil, war, etc.), so we should pay attention to the international news, and then comprehensively analyze the price trend in combination with technical aspects. I have been doing this since 2009, and now I can better grasp the market trend! Hope to adopt
if you want to do gold and silver T + D, it's best to go to CCB, postal bank, Shanghai Pudong Development Bank, Hengfeng bank, Minsheng Bank or Ping An Bank to do online banking. You can open gold and silver T + D by logging in online banking at home, Only when you input our organization number when you open, the transaction fee can be reced (at least 4 / 10000, and Pingjin warehouse is free). At the same time, you can provide market trading guidance. If you want to do a good job in gold and silver T + D: judging the direction of the price trend, mentality and low fee are the most important! The price of gold and silver is most affected by European and American economic indicators and international turmoil events (such as European and American unemployment rate, interest rate, inflation rate, turmoil, war, etc.), so we should pay attention to the international news, and then comprehensively analyze the price trend in combination with technical aspects. I have been doing this since 2009, and now I can better grasp the market trend!