Position: Home page » Computing » Decentralized server framework

Decentralized server framework

Publish: 2021-03-29 18:31:06
1. Decentralization is a form of social relations and content proction formed in the development of the Internet. It is a new type of network content proction process relative to "centralization"
compared with the early Internet (WEB 1.0) era, Web 2.0 content is no longer proced by professional websites or specific groups, but the result of participation and creation by all Internet users with equal rights. Anyone can express their views on the Internet or create original content to proce information together
with the diversification of network service forms, the decentralized network model becomes more and more clear and possible. After the rise of Web 2.0, the services provided by Wikipedia, Flickr, blogger and other network service providers are decentralized. Any participant can submit content, and Internet users can co create or contribute content
with the emergence of more simple and easy-to-use decentralized network services, the characteristics of Web2.0 become more and more obvious. For example, the birth of services more suitable for ordinary Internet users, such as twitter and Facebook, makes it easier and more diversified to proce or contribute content to the Internet, thus enhancing the enthusiasm of Internet users to participate in the contribution and recing the threshold of procing content. Eventually, every netizen becomes a tiny and independent information provider, making the Internet more flat and content proction more diversified.
2. According to Hou Jietai: the so-called centralization refers to subtracting the mean value of a variable from its expected value. For sample data, each observation value of a variable is subtracted from the sample average value of the variable, and the transformed variable is centralized
for your question, subtract the mean from each measurement.
3. Dao (data access object) data access object is an object-oriented database interface, which can also be called its decentralized self-made organization. It reveals the Microsoft Jet database engine (used by Microsoft Access), and allows visual basic developers to connect directly to access tables through ODBC as if they were directly connected to other databases. Dao is most suitable for single system application or small local distribution.
4.

In a system with many nodes, each node has a high degree of autonomy. Nodes can connect freely to each other to form a new connection unit. Any node may become the stage center, but it does not have the mandatory central control function. The influence between nodes will form nonlinear causality through the network. This open, flat and equal system phenomenon or structure is called decentralization
with the deepening of the interaction between subject and object, the continuous balance of cognitive function and the continuous improvement of cognitive structure, indivials can be released from the egocentric state, which is called decentralization

5. From the perspective of Internet development, decentralization is the form of social relationship and content generation formed in the process of Internet development, and is a new network content proction process relative to "centralization".
6. < Table > < tbody > < tr > < td > < div > is a new way to obtain information. Everyone is not only the information receiver, but also the information provider. The user's computer is not only the client, but also the server. This is a completely "decentralized" file exchange architecture.
7.

Now it's no longer good.
compared with fun walking, it's not so good.
not to mention sports earning.
there are still many good projects.

8. Yes, it's not too late. I suggest you go to the okex exchange to register. This is a domestic first-line platform, and its security is very guaranteed. If you are satisfied with my answer, please accept it
9. Dubbo layer

config layer

proxy layer

registry layer

cluster layer

monitor layer

protocol layer

exchange layer


transport layer


serialize Data serialization layer)

external configuration interface
with serviceconfig and referenceconfig as the center, you can directly create new configuration class, or generate configuration class through spring parsing configuration
javassist proxyfactory
JDK proxyfactory
transparent proxy of service interface, generate client stub and server skeleton of service
with serviceproxy as the center, The extension interface is proxyfactory
select

zookeeper

redis

multicast

Simple

support network-based cluster mode, have a wide range of peripheral open source procts, it is recommended to use bbo-2.3.3 or above (recommended)
depending on the stability of zookeeper
support client-side al write cluster mode, High performance
requires server time synchronization for checking heartbeat expired dirty data
decentralizes, does not need to install registry
depends on network topology and routing, cross machine room risk
dogfood, registry itself is a standard RPC service
without cluster support, Possible single point of failure
encapsulates the registration and discovery of service address
with service URL as the center, and the extension interface is registryfactory, registry, and registryservice
select

spring

jetty

log4j

automatically load all spring configurations in the meta-inf / spring directory
start an embedded jetty, When it is used to report status
when a large number of pages are accessed, the thread and memory of the server will be affected
the log4j configuration will be automatically configured. When a multi process is started, the log file will be automatically subdirectored according to the process
the user can not control the log4j configuration, which is inflexible
conditional routing

script routing

routing rules based on conditional expressions, The function is simple and easy to use
in some complex multi branch conditions, the rules are difficult to describe
the routing rules based on script engine are powerful
there is no running sandbox, and the script ability is too strong, which may become a backdoor
Random

roundrobin

leadactive

consistenthash

random, Setting random probability according to weight (recommended)
the probability of collision on a section is high, when retrying, the instantaneous pressure may be uneven
round robin, setting round robin ratio according to the weight after the Convention
there is a slow machine cumulative request problem, and in extreme cases, there may be avalanche
the minimum number of active calls, the same number of active random calls, Active number refers to the count difference before and after the call, so that slow machines receive less requests
weight is not supported. In capacity planning, pressure can not be directed to a machine to measure capacity through weight
consistency hash. Requests with the same parameters are always sent to the same provider. When a provider is hung up, the original requests to the provider are based on virtual nodes, It will not cause drastic changes if it is shared equally with other providers
uneven pressure distribution
failfast

failsafe

failback

forcing

broadcast


when failure occurs, it will switch automatically and try other servers again, It is usually used for read operation (recommended)
retrying will bring longer delay
quick failure. Only one call will be initiated, and an error will be reported immediately if the call fails. It is usually used for non idempotent write operation
If a machine is restarting, the call may fail
fail safe. When an exception occurs, it will be ignored directly, It is usually used to write audit log and other operations
call information loss
automatic recovery of failure, background recording of failure requests, and regular resend. It is usually used for message notification operations
unreliable, restart loss
call multiple servers in parallel, and return as long as one succeeds, It is usually used for the read operation with high real-time requirements
it needs to waste more service resources
broadcast and call all providers one by one, and any one will report an error. It is usually used to update the local state of the provider
the speed is slow, and any one will report an error
encapsulate the routing and load balancing of multiple providers, and bridge the registry center
with the invocker as the center, The extension interface is cluster, directory, router, loadbalance
cluster selection

router selection

routing rules

container

RPC call times and call time monitoring
statistics as the center, the extension interface is monitorfactory, monitor, Monitorservice
Dubbo protocol

RMI protocol

Hessian protocol

number of connections: single connection
connection mode: long connection
transmission protocol: TCP
transmission mode: NiO asynchronous transmission
serialization: Hessian binary serialization
scope of application: small incoming and outgoing parameter packets (less than 100k recommended), There are more consumers than providers, and a single consumer can't fill the providers. Try not to use BBO protocol to transfer large files or large strings
applicable scenario: general remote service method call
NiO is used to reuse single long connection, and thread pool is used to process requests concurrently, so as to rece handshake and increase concurrency efficiency, with good performance (recommended)
it is suitable for service call with small amount of data and large concurrency, As well as the case that the number of service consumer machines is much larger than that of service provider machines,
Dubbo default protocol is not suitable for transferring services with large amount of data, such as transferring files and videos, unless the amount of requests is very low
Dubbo default protocol uses a single long connection per service per provider per consumer, if the amount of data is large, Multiple connections can be used
in order to prevent being hung up by a large number of connections, the service provider can limit the number of large receiving connections to achieve self-protection of the service provider
in large file transmission, a single connection will become a bottleneck
summary

it can interoperate with native RMI, and the connection will fail occasionally based on TCP protocol, You need to rebuild the stub
parameters and return values, you need to implement the serializable interface
parameters and return values can't be customized to implement the list, map, number, date, calendar and other interfaces, you can only use the JDK's own implementation, because Hessian will do special processing, Attribute values in custom implementation classes will be lost
number of connections: multiple connections
connection method: short connection
transmission protocol: http
transmission method: synchronous transmission
serialization: Hessian binary serialization
scope of application: the number of incoming and outgoing parameter packets is large, the number of providers is more than that of consumers, and the pressure of providers is large, Transmissible file
applicable scenarios: page transfer, file transfer, or interoperation with native Hessian service
the provider exposes the service with Dubbo's Hessian protocol, and the consumer calls it directly with standard Hessian interface
or the provider exposes the service with standard Hessian, Consumers use Dubbo's Hessian protocol to call
Hessian based remote calling protocol
which can interoperate with native Hessian. Based on HTTP protocol
hessian.jar support is required, and HTTP short connection cost is large
Hessian protocol is used to integrate Hessian services. The underlying layer of Hessian uses HTTP communication and servlet to expose services, Dubbo default embedded jetty as a server
can interoperate with native Hessian services

summary

constraints

encapsulate RPC calls
with invocation, result as the center, extension interface as protocol, invoker, exporter
select

encapsulate request response mode, synchronous to asynchronous
with request, response as the center, The extended interface is exchange, exchangechannel, exchangeclient, exchangeserver
netty

Mina

grizzly

better performance (recommended)
one request to distribute two kinds of events, need to shield useless events
old NiO framework, stable
to send message queue is not timely, under high pressure, will appear fullgc
SUN NiO framework, When applied to GlassFish server,
thread pool is not extensible, and filter cannot intercept the next filter.
Abstract Mina and netty are the unified interfaces.
message is the center, and the extended interfaces are channel, transporter, client, server and codec.
select

Hessian


Dubbo


JSON



java

with better performance, Multilingual support (recommended)
the compatibility of different versions of Hessian is not good, which may conflict with the Hessian used by the application. Dubbo has embedded the source code of Hessian 3.2.1
by not transmitting the class information of POJO, the performance is better when a large number of POJOs are transmitted
when adding fields to parameter objects, it needs to declare an external file
plain text, which can be parsed across languages, By default, fastjson is used to resolve
poor performance
java native support
poor performance
reusable tools
the extension interfaces are serialization, objectinput, objectoutput, ThreadPool
select

business

RPC

remoting

Service
config
proxy
registry
cluster
monitor
protocol
exchange
transport
serialize
hierarchy

layer description
10. Abstract: a person named Satoshi Nakamoto posted a post on the P2P foundation website, saying that he has developed an open-source P2P (peer-to-peer) e-cash system called bitcoin, which is completely decentralized. There is no central server or trustee, and everything is based on participants. Bitcoin Bitcoin is a kind of virtual currency in the form of P2P. Point to point transmission means a decentralized payment system. Bitcoin does not rely on specific currency institutions to issue, it is generated through a large number of calculations of specific algorithms. Bitcoin economy uses a distributed database composed of many nodes in the whole P2P network to confirm and record all transactions. The decentralized nature and algorithm of P2P can ensure that it is impossible to artificially manipulate the value of bitcoin through mass proction. The design based on cryptography can make bitcoin only be transferred or paid by the real owner. This also ensures the anonymity of money ownership and circulation transactions. Bitcoin is a kind of network virtual currency, similar to Tencent's q-coin. You can use bitcoin to buy some virtual items, such as clothes, hats, equipment, etc. in online games. As long as someone accepts it, you can also use bitcoin to buy real-life items. The biggest difference between bitcoin and other virtual currencies is that the total amount of bitcoin is very limited and it has a strong scarcity. The monetary system has no more than 10.5 million in the first four years, and the total number after that will be permanently limited to 21 million. Another point is that you can use computers to make bitcoin. Bitcoin is an electronic currency proced by open source P2P software. Bitcoin has also been paraphrased as "bitgold". The concept of virtual currency bitcoin was first proposed by Satoshi Nakamoto in 2009. Now bitcoin is also used to refer to bitcoin's open source software designed and released according to the ideas of Satoshi Nakamoto and the P2P network built on it. Unlike most currencies, bitcoin does not rely on a specific central issuing institution, but uses a distributed database throughout the P2P network nodes to record currency transactions, and uses cryptography design to ensure the security of all aspects of currency circulation. For example, bitcoin can only be used by its real owner, and only once, after the payment is completed, the original owner loses the ownership of the bitcoin. Feature bitcoin is designed to allow anonymous ownership and use rights. Bitcoin can be stored in personal computer in the form of computer file (wallet) or in a third-party hosting service. No matter how it is saved, bitcoin can be sent to anyone on the Internet through its address. The distributed characteristics of P2P and the design of no central management mechanism ensure that no organization can manipulate the value of bitcoin or create inflation.
Hot content
Inn digger Publish: 2021-05-29 20:04:36 Views: 341
Purchase of virtual currency in trust contract dispute Publish: 2021-05-29 20:04:33 Views: 942
Blockchain trust machine Publish: 2021-05-29 20:04:26 Views: 720
Brief introduction of ant mine Publish: 2021-05-29 20:04:25 Views: 848
Will digital currency open in November Publish: 2021-05-29 19:56:16 Views: 861
Global digital currency asset exchange Publish: 2021-05-29 19:54:29 Views: 603
Mining chip machine S11 Publish: 2021-05-29 19:54:26 Views: 945
Ethereum algorithm Sha3 Publish: 2021-05-29 19:52:40 Views: 643
Talking about blockchain is not reliable Publish: 2021-05-29 19:52:26 Views: 754
Mining machine node query Publish: 2021-05-29 19:36:37 Views: 750