Skip to content

Commit 4eb1c94

Browse files
author
sunhongtao
committed
perf: improve code
1 parent 7baa819 commit 4eb1c94

File tree

7 files changed

+87
-162
lines changed

7 files changed

+87
-162
lines changed

blockchain/blockchain.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ type NFT interface {
2121
}
2222

2323
type ChainNet interface {
24-
SendReq(blockChain int64, reqBody string) (string, error)
24+
SendReq(blockChain int64, reqBody string, trace bool) (string, error)
2525
SendReqByWs(blockChain int64, receiverCh chan string, sendCh chan string) (string, error)
2626
}
2727

blockchain/service/bnb/bnb.go

Lines changed: 17 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ func (e *Bnb) GetCode(chainCode int64, address string) (string, error) {
117117
]
118118
}`
119119
query = fmt.Sprintf(query, address)
120-
return e.SendReq(chainCode, query)
120+
return e.SendReq(chainCode, query, false)
121121
}
122122

123123
func (e *Bnb) GetAddressType(chainCode int64, address string) (string, error) {
@@ -135,7 +135,7 @@ func (e *Bnb) GetAddressType(chainCode int64, address string) (string, error) {
135135
]
136136
}`
137137
query = fmt.Sprintf(query, address)
138-
resp, err := e.SendReq(chainCode, query)
138+
resp, err := e.SendReq(chainCode, query, false)
139139
if err != nil {
140140
return "", err
141141
}
@@ -166,7 +166,7 @@ func (e *Bnb) UnSubscribe(chainCode int64, subId string) (string, error) {
166166
query := `{"id": 1, "method": "eth_unsubscribe", "params": ["%v"]}`
167167

168168
query = fmt.Sprintf(query, subId)
169-
resp, err := e.SendReq(chainCode, query)
169+
resp, err := e.SendReq(chainCode, query, false)
170170
if err != nil {
171171
return "", err
172172
}
@@ -195,7 +195,7 @@ func (e *Bnb) GetBlockReceiptByBlockNumber(chainCode int64, number string) (stri
195195
]
196196
}`
197197
query = fmt.Sprintf(query, number)
198-
return e.SendReq(chainCode, query)
198+
return e.SendReq(chainCode, query, false)
199199
}
200200

201201
func (e *Bnb) GetBlockReceiptByBlockHash(chainCode int64, hash string) (string, error) {
@@ -209,7 +209,7 @@ func (e *Bnb) GetBlockReceiptByBlockHash(chainCode int64, hash string) (string,
209209
}`
210210

211211
query = fmt.Sprintf(query, hash)
212-
return e.SendReq(chainCode, query)
212+
return e.SendReq(chainCode, query, false)
213213
}
214214

215215
func (e *Bnb) GetTransactionReceiptByHash(chainCode int64, hash string) (string, error) {
@@ -226,7 +226,7 @@ func (e *Bnb) GetTransactionReceiptByHash(chainCode int64, hash string) (string,
226226
]
227227
}`
228228
query = fmt.Sprintf(query, hash)
229-
return e.SendReq(chainCode, query)
229+
return e.SendReq(chainCode, query, false)
230230
}
231231

232232
func (e *Bnb) GetBlockByHash(chainCode int64, hash string, flag bool) (string, error) {
@@ -242,7 +242,7 @@ func (e *Bnb) GetBlockByHash(chainCode int64, hash string, flag bool) (string, e
242242
}`
243243

244244
req = fmt.Sprintf(req, hash, flag)
245-
return e.SendReq(chainCode, req)
245+
return e.SendReq(chainCode, req, false)
246246
}
247247

248248
func (e *Bnb) GetBlockByNumber(chainCode int64, number string, flag bool) (string, error) {
@@ -259,7 +259,7 @@ func (e *Bnb) GetBlockByNumber(chainCode int64, number string, flag bool) (strin
259259
`
260260
number, _ = util.Int2Hex(number)
261261
req = fmt.Sprintf(req, number, flag)
262-
return e.SendReq(chainCode, req)
262+
return e.SendReq(chainCode, req, false)
263263
}
264264

265265
func (e *Bnb) GetTxByHash(chainCode int64, hash string) (string, error) {
@@ -278,11 +278,11 @@ func (e *Bnb) GetTxByHash(chainCode int64, hash string) (string, error) {
278278
}
279279
`
280280
req = fmt.Sprintf(req, hash)
281-
return e.SendReq(chainCode, req)
281+
return e.SendReq(chainCode, req, false)
282282
}
283283

284284
func (e *Bnb) SendJsonRpc(chainCode int64, req string) (string, error) {
285-
return e.SendReq(chainCode, req)
285+
return e.SendReq(chainCode, req, false)
286286
}
287287

288288
func NewNftBnb(cluster []*config.NodeCluster, blockchain int64, xlog *xlog.XLog) blockchain.NftApi {
@@ -356,7 +356,7 @@ func (e *Bnb) TraceTransaction(chainCode int64, address string) (string, error)
356356
}`
357357
req = fmt.Sprintf(req, address)
358358

359-
return e.SendReq2(chainCode, req)
359+
return e.SendReq(chainCode, req, true)
360360
}
361361

362362
func (e *Bnb) Balance(chainCode int64, address string, tag string) (string, error) {
@@ -378,7 +378,7 @@ func (e *Bnb) Balance(chainCode int64, address string, tag string) (string, erro
378378
}`
379379

380380
req = fmt.Sprintf(req, address, tag)
381-
return e.SendReq(chainCode, req)
381+
return e.SendReq(chainCode, req, false)
382382
}
383383

384384
func (e *Bnb) TokenBalance(chainCode int64, address string, contractAddr string, abi string) (string, error) {
@@ -412,7 +412,7 @@ func (e *Bnb) Nonce(chainCode int64, address string, tag string) (string, error)
412412
}
413413
`
414414
req = fmt.Sprintf(req, address, tag)
415-
return e.SendReq(chainCode, req)
415+
return e.SendReq(chainCode, req, false)
416416
}
417417

418418
func (e *Bnb) LatestBlock(chainCode int64) (string, error) {
@@ -423,7 +423,7 @@ func (e *Bnb) LatestBlock(chainCode int64) (string, error) {
423423
"method": "eth_blockNumber"
424424
}
425425
`
426-
return e.SendReq(chainCode, req)
426+
return e.SendReq(chainCode, req, false)
427427
}
428428

429429
func (e *Bnb) GetAccountResourceForTron(chainCode int64, address string) (string, error) {
@@ -483,14 +483,14 @@ func (e *Bnb) SendRawTransaction(chainCode int64, signedTx string) (string, erro
483483
"method": "eth_sendRawTransaction"
484484
}`
485485
req = fmt.Sprintf(req, signedTx)
486-
return e.SendReq(chainCode, req)
486+
return e.SendReq(chainCode, req, false)
487487
}
488488

489489
func (e *Bnb) SendReqByWs(blockChain int64, receiverCh chan string, sendCh chan string) (string, error) {
490490
return "", nil
491491
}
492492

493-
func (e *Bnb) SendReq(blockChain int64, reqBody string) (resp string, err error) {
493+
func (e *Bnb) SendReq(blockChain int64, reqBody string, trace bool) (resp string, err error) {
494494
reqBody = strings.Replace(reqBody, "\t", "", -1)
495495
reqBody = strings.Replace(reqBody, "\n", "", -1)
496496
var uri string
@@ -501,7 +501,7 @@ func (e *Bnb) SendReq(blockChain int64, reqBody string) (resp string, err error)
501501
e.log.Printf("method:%v,blockChain:%v,req:%v,resp:%v", "SendReq", blockChain, reqBody, "ok")
502502
}
503503
}()
504-
cluster := e.BalanceCluster(false)
504+
cluster := e.BalanceCluster(trace)
505505
if cluster == nil {
506506
//不存在节点
507507
return "", errors.New("blockchain node has not found")
@@ -516,31 +516,6 @@ func (e *Bnb) SendReq(blockChain int64, reqBody string) (resp string, err error)
516516
return resp, err
517517
}
518518

519-
func (e *Bnb) SendReq2(blockChain int64, reqBody string) (resp string, err error) {
520-
reqBody = strings.Replace(reqBody, "\t", "", -1)
521-
reqBody = strings.Replace(reqBody, "\n", "", -1)
522-
var uri string
523-
defer func() {
524-
if err != nil {
525-
e.log.Errorf("method:%v,blockChain:%v,req:%v,err:%v,uri:%v", "SendReq", blockChain, reqBody, err, uri)
526-
} else {
527-
e.log.Printf("method:%v,blockChain:%v,req:%v,resp:%v", "SendReq", blockChain, reqBody, "ok")
528-
}
529-
}()
530-
cluster := e.BalanceCluster(true)
531-
if cluster == nil {
532-
//不存在节点
533-
return "", errors.New("blockchain node has not found")
534-
}
535-
uri = fmt.Sprintf("%v/%v", cluster.NodeUrl, cluster.NodeToken)
536-
537-
resp, err = e.blockChainClient.SendRequestToChain(cluster.NodeUrl, cluster.NodeToken, reqBody)
538-
if err != nil {
539-
cluster.ErrorCount += 1
540-
}
541-
return resp, err
542-
}
543-
544519
func (e *Bnb) BalanceCluster(trace bool) *config.NodeCluster {
545520
var resultCluster *config.NodeCluster
546521
l := len(e.nodeCluster)

blockchain/service/btc/btc.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ func (e *Btc) GetBlockByHash(chainCode int64, hash string, flag bool) (string, e
7575
}
7676

7777
req = fmt.Sprintf(req, hash, hasTx)
78-
return e.SendReq(chainCode, req)
78+
return e.SendReq(chainCode, req, false)
7979
}
8080

8181
func (e *Btc) GetBlockByNumber(chainCode int64, number string, flag bool) (string, error) {
@@ -88,7 +88,7 @@ func (e *Btc) GetBlockByNumber(chainCode int64, number string, flag bool) (strin
8888
}
8989
`
9090
req = fmt.Sprintf(req, number)
91-
resp, err := e.SendReq(chainCode, req)
91+
resp, err := e.SendReq(chainCode, req, false)
9292

9393
if err != nil {
9494
return resp, err
@@ -118,11 +118,11 @@ func (e *Btc) GetTxByHash(chainCode int64, hash string) (string, error) {
118118
}
119119
`
120120
req = fmt.Sprintf(req, hash)
121-
return e.SendReq(chainCode, req)
121+
return e.SendReq(chainCode, req, false)
122122
}
123123

124124
func (e *Btc) SendJsonRpc(chainCode int64, req string) (string, error) {
125-
return e.SendReq(chainCode, req)
125+
return e.SendReq(chainCode, req, false)
126126
}
127127

128128
func NewBtc(cluster []*config.NodeCluster, blockchain int64, xlog *xlog.XLog) blockchain.API {
@@ -183,7 +183,7 @@ func (e *Btc) LatestBlock(chainCode int64) (string, error) {
183183
"method": "getblockcount"
184184
}
185185
`
186-
return e.SendReq(chainCode, req)
186+
return e.SendReq(chainCode, req, false)
187187
}
188188

189189
func (e *Btc) SendRawTransaction(chainCode int64, signedTx string) (string, error) {
@@ -194,14 +194,14 @@ func (e *Btc) SendRawTransaction(chainCode int64, signedTx string) (string, erro
194194
]
195195
}`
196196
req = fmt.Sprintf(req, signedTx)
197-
return e.SendReq(chainCode, req)
197+
return e.SendReq(chainCode, req, false)
198198
}
199199

200200
func (e *Btc) SendReqByWs(blockChain int64, receiverCh chan string, sendCh chan string) (string, error) {
201201
return "", nil
202202
}
203203

204-
func (e *Btc) SendReq(blockChain int64, reqBody string) (resp string, err error) {
204+
func (e *Btc) SendReq(blockChain int64, reqBody string, trace bool) (resp string, err error) {
205205
reqBody = strings.Replace(reqBody, "\t", "", -1)
206206
reqBody = strings.Replace(reqBody, "\n", "", -1)
207207
var uri string
@@ -213,7 +213,7 @@ func (e *Btc) SendReq(blockChain int64, reqBody string) (resp string, err error)
213213
}
214214
}()
215215

216-
cluster := e.BalanceCluster(false)
216+
cluster := e.BalanceCluster(trace)
217217
if cluster == nil {
218218
//不存在节点
219219
return "", errors.New("blockchain node has not found")

0 commit comments

Comments
 (0)