Philip O'Toole
9aecafedbe
Cluster client resolves advertised local address
...
Also, improve HTTP stats.
3 years ago
Philip O'Toole
a8d436e944
Improve stats
3 years ago
Philip O'Toole
d90ea2e6b1
Service Node API requests locally if possible
3 years ago
Philip O'Toole
39615983d4
Merge branch 'master' of github.com:rqlite/rqlite into conn-pool-2
3 years ago
Philip O'Toole
711f6664f9
Service can return HTTP API URL
3 years ago
Philip O'Toole
5613edd887
Fix connection pool stats
...
Also HTTP should read its own Raft address locally.
3 years ago
Philip O'Toole
3a70db5150
Long-lived connections in cluster service
...
Needed now that we're using connection pooling. Unit tests pass.
3 years ago
Philip O'Toole
c8483d2ec5
Use connection pool with Cluster Execute and Query
3 years ago
Philip O'Toole
ac53893673
GetNodeAPI uses connection pool
3 years ago
Philip O'Toole
312e44e57d
Add Connection Pool for GetNodeAPIAddr
3 years ago
Philip O'Toole
25a51534da
Fix comments
3 years ago
Philip O'Toole
5479a13aa1
Better variable names
3 years ago
Philip O'Toole
6e17295913
Group network-related params together
3 years ago
Philip O'Toole
0b8beb6a5d
Implmenet Request Forwarding timeout support
3 years ago
Philip O'Toole
90a16403ff
Comments
3 years ago
Philip O'Toole
82067cdec1
Client to Service Execute unit test
3 years ago
Philip O'Toole
1ceb59d8f3
Client to Service Execute unit test
3 years ago
Philip O'Toole
d503db616e
Better modeling with oneof
3 years ago
Philip O'Toole
9dbaa51296
Proper service-client testing
3 years ago
Philip O'Toole
1f56b5372f
cluster package unit tests passing
3 years ago
Philip O'Toole
bffce00c26
Add missing client.go
3 years ago
Philip O'Toole
796ef147f7
Hook in explicit Cluster Dialer
3 years ago
Philip O'Toole
281c454fc2
Refactor into distinct cluster client type
3 years ago
Philip O'Toole
ab0968644f
More error handling
3 years ago
Philip O'Toole
f101b2afdd
Check conn write errors
3 years ago
Philip O'Toole
697132a6ee
Remove metadata from Join operations
...
It's no longer needed.
3 years ago
Philip O'Toole
4fd5555c41
ABL
3 years ago
Philip O'Toole
497ee77625
More Mux instrumentation
3 years ago
Philip O'Toole
0d533dfa4c
Some cleanup
3 years ago
Philip O'Toole
be7198f550
Go Doc
3 years ago
Philip O'Toole
2cef5679b7
rqlited starts and stops fine
3 years ago
Philip O'Toole
cbc2a686db
Instrument Cluster service
3 years ago
Philip O'Toole
0ab519f6dc
Test cluster service with TLS Mux
3 years ago
Philip O'Toole
0c53748636
Unit test mux with TLS transport
3 years ago
Philip O'Toole
4218df64dd
Start TLS testing of service
3 years ago
Philip O'Toole
f4639b2caf
Defer conn close
3 years ago
Philip O'Toole
f2947f84c4
Basic Cluster service in place
3 years ago
Philip O'Toole
e934630a58
Basic cluster RPC service
3 years ago
osx1260@163.com
d9cffbad1e
update: go run fmt
4 years ago
osxlinux
03e616d1f7
fix: Optimize the Conversation from O\'Toole
4 years ago
osx1260@163.com
9d5a9c69f4
fix: run go fmt
4 years ago
osxlinux
3ba5e31fb2
feat: Support to specify the source IP when you are in a complex network environment
4 years ago
Philip O'Toole
181c176e06
Revert "Merge pull request #697 from rqlite/hosts-not-ips"
...
This reverts commit 522e38849d
, reversing
changes made to 89f325edd8
.
4 years ago
Philip O'Toole
f96c443a9c
Do not use resolved address in join request
...
It's not clear why this code was put in place in the first place, but it
may not be necessary.
4 years ago
Philip O'Toole
32a7625e69
Unit test zero join attempts
4 years ago
Philip O'Toole
3f0182c8e8
Make num join attempts and interval configurable
4 years ago
Philip O'Toole
81f5f6faf1
Add support for non-voting nodes
...
A non-voting node doesn't participate in Raft consensus, but does
subscribe to the committed log entries originating with the leader.
This means a non-voting node keeps up-to-date with the state machine,
without impacting write-latency. These non-voting nodes can provide
read scalability for the cluster.
5 years ago
Philip O'Toole
9d595e2ead
ABL
5 years ago
Philip O'Toole
f57ace7da2
Broadcast Store meta via standard consensus
...
With this change the cluster metadata (arbitrary key-value data associated with each node) is now broadcast across the cluster using the standard consensus mechanism. Specifically the use case for this metadata is to allow all nodes know the HTTP API address of all other nodes, for the purpose of redirecting requests to the leader.
This change removed the need for multiplexing two logical connections
over the single Raft TCP connection, which greatly simplifies the
networking code generally.
Original PR https://github.com/rqlite/rqlite/pull/434
5 years ago
Philip O'Toole
e376812907
Add method to Store that returns leader ID
...
With the advent of Raft IDs, this distinction matters.
5 years ago