Skip to content

Commit b5a1683

Browse files
revert rpc+api
1 parent 08bb930 commit b5a1683

File tree

5 files changed

+70
-62
lines changed

5 files changed

+70
-62
lines changed

README.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,18 +19,19 @@ upstream:
1919
- rpc: "http://node1:26657"
2020
api: "http://node1:1317"
2121
grpc: "node1:9090"
22-
eth: "http://node1:8545"
23-
ethws: "ws://node1:8546"
22+
jsonrpc: "http://node1:8545"
23+
jsonrpc_ws: "ws://node1:8546"
2424
blocks: [1000, 2000]
2525
-...
2626

2727
# Gateway's custom port
28+
# If a port is set to 0, the service of that port won't start.
2829
port:
2930
rpc: 26657
3031
api: 1317
3132
grpc: 9090
32-
eth: 8545
33-
ethws: 8546
33+
jsonrpc: 8545
34+
jsonrpc_ws: 8546
3435
```
3536
3637

gateway/api_server.go

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,8 @@ func Start_API_Server(server *Server) {
3434
apiServers[server.Port] = srv
3535
mu.Unlock()
3636

37-
if server.Port == 443 {
38-
if err := srv.ListenAndServeTLS("server.crt", "server.key"); err != nil && err != http.ErrServerClosed {
39-
fmt.Printf("Error starting API server with TLS: %v\n", err)
40-
}
41-
} else {
42-
if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
43-
fmt.Printf("Error starting API server: %v\n", err)
44-
}
37+
if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
38+
fmt.Printf("Failed to start API server: %v\n", err)
4539
}
4640
}
4741

gateway/gateway.go

Lines changed: 59 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -46,25 +46,45 @@ func NewServer(cfg *config.Config, serverType string) Server {
4646
new_server := &Server{}
4747
switch serverType {
4848
case "rpc":
49-
new_server.Port = cfg.Ports.RPC
50-
new_server.Start = Start_RPC_Server
51-
new_server.Shutdown = Shutdown_RPC_Server
49+
if cfg.Ports.RPC != 0 {
50+
new_server.Port = cfg.Ports.RPC
51+
new_server.Start = Start_RPC_Server
52+
new_server.Shutdown = Shutdown_RPC_Server
53+
} else {
54+
fmt.Println("RPC Service is disabled.")
55+
}
5256
case "grpc":
53-
new_server.Port = cfg.Ports.GRPC
54-
new_server.Start = Start_GRPC_Server
55-
new_server.Shutdown = Shutdown_GRPC_Server
57+
if cfg.Ports.GRPC != 0 {
58+
new_server.Port = cfg.Ports.GRPC
59+
new_server.Start = Start_GRPC_Server
60+
new_server.Shutdown = Shutdown_GRPC_Server
61+
} else {
62+
fmt.Println("gRPC Service is disabled.")
63+
}
5664
case "api":
57-
new_server.Port = cfg.Ports.API
58-
new_server.Start = Start_API_Server
59-
new_server.Shutdown = Shutdown_API_Server
65+
if cfg.Ports.API != 0 {
66+
new_server.Port = cfg.Ports.API
67+
new_server.Start = Start_API_Server
68+
new_server.Shutdown = Shutdown_API_Server
69+
} else {
70+
fmt.Println("API Service is disabled.")
71+
}
6072
case "jsonrpc":
61-
new_server.Port = cfg.Ports.JSONRPC
62-
new_server.Start = Start_JSON_RPC_Server
63-
new_server.Shutdown = Shutdown_JSON_RPC_Server
73+
if cfg.Ports.JSONRPC != 0 {
74+
new_server.Port = cfg.Ports.JSONRPC
75+
new_server.Start = Start_JSON_RPC_Server
76+
new_server.Shutdown = Shutdown_JSON_RPC_Server
77+
} else {
78+
fmt.Println("JSON-RPC Service is disabled.")
79+
}
6480
case "jsonrpc_ws":
65-
new_server.Port = cfg.Ports.JSONRPC_WS
66-
new_server.Start = Start_JSON_RPC_WS_Server
67-
new_server.Shutdown = Shutdown_JSON_RPC_WS_Server
81+
if cfg.Ports.JSONRPC_WS != 0 {
82+
new_server.Port = cfg.Ports.JSONRPC_WS
83+
new_server.Start = Start_JSON_RPC_WS_Server
84+
new_server.Shutdown = Shutdown_JSON_RPC_WS_Server
85+
} else {
86+
fmt.Println("JSON-RPC WebSocket Service is disabled.")
87+
}
6888
default:
6989
fmt.Println("Invalid server type")
7090
os.Exit(1)
@@ -73,11 +93,21 @@ func NewServer(cfg *config.Config, serverType string) Server {
7393
}
7494

7595
func (g *Gateway) Start() {
76-
go g.RPC_Server.Start(&g.RPC_Server)
77-
go g.GRPC_Server.Start(&g.GRPC_Server)
78-
go g.API_Server.Start(&g.API_Server)
79-
go g.JSON_RPC_Server.Start(&g.JSON_RPC_Server)
80-
go g.JSON_RPC_WS_Server.Start(&g.JSON_RPC_WS_Server)
96+
if g.RPC_Server.Port != 0 {
97+
go g.RPC_Server.Start(&g.RPC_Server)
98+
}
99+
if g.GRPC_Server.Port != 0 {
100+
go g.GRPC_Server.Start(&g.GRPC_Server)
101+
}
102+
if g.API_Server.Port != 0 {
103+
go g.API_Server.Start(&g.API_Server)
104+
}
105+
if g.JSON_RPC_Server.Port != 0 {
106+
go g.JSON_RPC_Server.Start(&g.JSON_RPC_Server)
107+
}
108+
if g.JSON_RPC_WS_Server.Port != 0 {
109+
go g.JSON_RPC_WS_Server.Start(&g.JSON_RPC_WS_Server)
110+
}
81111

82112
stop := make(chan os.Signal, 1)
83113
signal.Notify(stop, os.Interrupt, syscall.SIGTERM)
@@ -96,13 +126,15 @@ func (g *Gateway) Shutdown() {
96126
defer cancel()
97127

98128
for _, server := range servers {
99-
wg.Add(1)
100-
go func(s *Server) {
101-
defer wg.Done()
102-
if err := shutdownWithTimeout(ctx, s); err != nil {
103-
fmt.Printf("Error shutting down %T: %v\n", s, err)
104-
}
105-
}(server)
129+
if server.Port != 0 {
130+
wg.Add(1)
131+
go func(s *Server) {
132+
defer wg.Done()
133+
if err := shutdownWithTimeout(ctx, s); err != nil {
134+
fmt.Printf("Error shutting down %T: %v\n", s, err)
135+
}
136+
}(server)
137+
}
106138
}
107139

108140
wg.Wait()

gateway/rpc_server.go

Lines changed: 4 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,8 @@ import (
77
"fmt"
88
"io"
99
"net/http"
10-
"os"
11-
"os/signal"
1210
"strconv"
1311
"sync/atomic"
14-
"syscall"
1512
"time"
1613
"github.com/cometbft/cometbft/rpc/jsonrpc/types"
1714
"github.com/decentrio/gateway/config"
@@ -47,23 +44,10 @@ func Start_RPC_Server(server *Server) {
4744
mu.Lock()
4845
rpcServers[server.Port] = srv
4946
mu.Unlock()
50-
51-
stop := make(chan os.Signal, 1)
52-
signal.Notify(stop, os.Interrupt, syscall.SIGTERM)
53-
go func() {
54-
<-stop
55-
Shutdown_RPC_Server(server)
56-
}()
57-
58-
if server.Port == 443 {
59-
if err := srv.ListenAndServeTLS("server.crt", "server.key"); err != nil && err != http.ErrServerClosed {
60-
fmt.Printf("Error starting RPC server with TLS: %v\n", err)
61-
}
62-
} else {
63-
if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
64-
fmt.Printf("Error starting RPC server: %v\n", err)
65-
}
66-
}
47+
48+
if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
49+
fmt.Printf("Failed to start RPC server: %v\n", err)
50+
}
6751
}
6852

6953
func Shutdown_RPC_Server(server *Server) {

utils/httpUtils.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
package httpUtils
22

33
import (
4-
// "io"
5-
"log"
64
"net/http"
75
"net/http/httputil"
86
"net/url"
@@ -20,7 +18,6 @@ func FowardRequest(w http.ResponseWriter, r *http.Request, destination string) {
2018
req.URL.Scheme = target.Scheme
2119
req.URL.Host = target.Host
2220
req.Host = target.Host
23-
log.Printf("Forwarding request: %s %s", req.Method, req.URL.String())
2421
}
2522

2623
proxy.ServeHTTP(w, r)

0 commit comments

Comments
 (0)