Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
power-node
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Odysseus
power-node
Commits
cef4b011
Commit
cef4b011
authored
Jan 31, 2024
by
duanjinfei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add resp header byte
parent
86aaab34
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
69 additions
and
61 deletions
+69
-61
node_manager.go
models/node_manager.go
+0
-4
msg_resp.go
nm/msg_resp.go
+5
-3
start.go
nm/start.go
+5
-4
task_msg.go
nm/task_msg.go
+25
-25
start.sh
start.sh
+7
-1
task_msg_test.go
test/task_msg_test.go
+27
-24
No files found.
models/node_manager.go
View file @
cef4b011
...
@@ -23,10 +23,6 @@ type TaskReq struct {
...
@@ -23,10 +23,6 @@ type TaskReq struct {
TaskResult
[]
byte
`json:"task_result"`
TaskResult
[]
byte
`json:"task_result"`
}
}
type
ContainerSignStruct
struct
{
Sign
[]
byte
`json:"sign"`
}
type
ModelInfo
struct
{
type
ModelInfo
struct
{
TaskId
uint64
`json:"task_id"`
TaskId
uint64
`json:"task_id"`
User
string
`json:"user"`
User
string
`json:"user"`
...
...
nm/msg_resp.go
View file @
cef4b011
...
@@ -190,15 +190,17 @@ func SubmitResultResp(params ...interface{}) *nodemanagerV1.WorkerMessage {
...
@@ -190,15 +190,17 @@ func SubmitResultResp(params ...interface{}) *nodemanagerV1.WorkerMessage {
taskId
:=
params
[
0
]
.
(
string
)
taskId
:=
params
[
0
]
.
(
string
)
containerSign
:=
params
[
1
]
.
([]
byte
)
containerSign
:=
params
[
1
]
.
([]
byte
)
minerSign
:=
params
[
2
]
.
([]
byte
)
minerSign
:=
params
[
2
]
.
([]
byte
)
taskResult
:=
params
[
3
]
.
([]
byte
)
taskResultHeader
:=
params
[
3
]
.
([]
byte
)
isSuccess
:=
params
[
4
]
.
(
bool
)
taskResultBody
:=
params
[
4
]
.
([]
byte
)
isSuccess
:=
params
[
5
]
.
(
bool
)
submitResultMsgRes
:=
&
nodemanagerV1
.
WorkerMessage
{
submitResultMsgRes
:=
&
nodemanagerV1
.
WorkerMessage
{
Message
:
&
nodemanagerV1
.
WorkerMessage_SubmitTaskResult
{
Message
:
&
nodemanagerV1
.
WorkerMessage_SubmitTaskResult
{
SubmitTaskResult
:
&
nodemanagerV1
.
SubmitTaskResult
{
SubmitTaskResult
:
&
nodemanagerV1
.
SubmitTaskResult
{
TaskUuid
:
taskId
,
TaskUuid
:
taskId
,
ContainerSignature
:
containerSign
,
ContainerSignature
:
containerSign
,
MinerSignature
:
minerSign
,
MinerSignature
:
minerSign
,
TaskResult
:
taskResult
,
TaskResultHeader
:
taskResultHeader
,
TaskResultBody
:
taskResultBody
,
IsSuccessed
:
isSuccess
,
IsSuccessed
:
isSuccess
,
},
},
},
},
...
...
nm/start.go
View file @
cef4b011
...
@@ -246,15 +246,16 @@ func handlerMsg(nodeManager *models.NodeManagerClient,
...
@@ -246,15 +246,16 @@ func handlerMsg(nodeManager *models.NodeManagerClient,
taskMsgWorker
.
Wg
.
Add
(
1
)
taskMsgWorker
.
Wg
.
Add
(
1
)
taskMsgWorker
.
TaskMsg
<-
taskMsg
taskMsgWorker
.
TaskMsg
<-
taskMsg
taskMsgWorker
.
Wg
.
Wait
()
taskMsgWorker
.
Wg
.
Wait
()
taskResBytes
:=
taskMsgWorker
.
TaskResp
[
taskMsg
.
TaskUuid
]
taskResHeader
:=
taskMsgWorker
.
TaskRespHeader
[
taskMsg
.
TaskUuid
]
taskResBody
:=
taskMsgWorker
.
TaskRespBody
[
taskMsg
.
TaskUuid
]
isSuccess
:=
taskMsgWorker
.
TaskIsSuccess
[
taskMsg
.
TaskUuid
]
isSuccess
:=
taskMsgWorker
.
TaskIsSuccess
[
taskMsg
.
TaskUuid
]
containerSign
:=
taskMsgWorker
.
DockerOp
.
GetContainerSign
(
taskMsg
,
taskResB
ytes
)
containerSign
:=
taskMsgWorker
.
DockerOp
.
GetContainerSign
(
taskMsg
,
taskResB
ody
)
if
containerSign
==
nil
||
len
(
containerSign
)
==
0
{
if
containerSign
==
nil
||
len
(
containerSign
)
==
0
{
log
.
Error
(
"Container signing failed................"
)
log
.
Error
(
"Container signing failed................"
)
isSuccess
=
false
isSuccess
=
false
}
}
reqHash
,
respHash
,
minerSign
:=
taskMsgWorker
.
GetMinerSign
(
taskMsg
,
taskResB
ytes
)
reqHash
,
respHash
,
minerSign
:=
taskMsgWorker
.
GetMinerSign
(
taskMsg
,
taskResB
ody
)
params
:=
buildParams
(
taskMsg
.
TaskUuid
,
containerSign
,
minerSign
,
taskRes
Bytes
,
isSuccess
)
params
:=
buildParams
(
taskMsg
.
TaskUuid
,
containerSign
,
minerSign
,
taskRes
Header
,
taskResBody
,
isSuccess
)
taskMsgWorker
.
LruCache
.
Add
(
taskMsg
.
TaskUuid
+
models
.
ContainerSign
,
containerSign
)
taskMsgWorker
.
LruCache
.
Add
(
taskMsg
.
TaskUuid
+
models
.
ContainerSign
,
containerSign
)
taskMsgWorker
.
LruCache
.
Add
(
taskMsg
.
TaskUuid
+
models
.
MinerSign
,
minerSign
)
taskMsgWorker
.
LruCache
.
Add
(
taskMsg
.
TaskUuid
+
models
.
MinerSign
,
minerSign
)
taskMsgWorker
.
LruCache
.
Add
(
taskMsg
.
TaskUuid
+
models
.
ReqHash
,
reqHash
)
taskMsgWorker
.
LruCache
.
Add
(
taskMsg
.
TaskUuid
+
models
.
ReqHash
,
reqHash
)
...
...
nm/task_msg.go
View file @
cef4b011
...
@@ -27,7 +27,8 @@ type TaskHandler struct {
...
@@ -27,7 +27,8 @@ type TaskHandler struct {
DockerOp
*
operate
.
DockerOp
DockerOp
*
operate
.
DockerOp
CmdOp
*
operate
.
Command
CmdOp
*
operate
.
Command
TaskMsg
chan
*
nodeManagerV1
.
PushTaskMessage
TaskMsg
chan
*
nodeManagerV1
.
PushTaskMessage
TaskResp
map
[
string
][]
byte
TaskRespHeader
map
[
string
][]
byte
TaskRespBody
map
[
string
][]
byte
TaskIsSuccess
map
[
string
]
bool
TaskIsSuccess
map
[
string
]
bool
HttpClient
*
http
.
Client
HttpClient
*
http
.
Client
}
}
...
@@ -38,7 +39,8 @@ func NewTaskWorker(op *operate.DockerOp) *TaskHandler {
...
@@ -38,7 +39,8 @@ func NewTaskWorker(op *operate.DockerOp) *TaskHandler {
LruCache
:
lru
.
New
(
100
),
LruCache
:
lru
.
New
(
100
),
DockerOp
:
op
,
DockerOp
:
op
,
TaskMsg
:
make
(
chan
*
nodeManagerV1
.
PushTaskMessage
,
0
),
TaskMsg
:
make
(
chan
*
nodeManagerV1
.
PushTaskMessage
,
0
),
TaskResp
:
make
(
map
[
string
][]
byte
,
0
),
TaskRespHeader
:
make
(
map
[
string
][]
byte
,
0
),
TaskRespBody
:
make
(
map
[
string
][]
byte
,
0
),
TaskIsSuccess
:
make
(
map
[
string
]
bool
,
0
),
TaskIsSuccess
:
make
(
map
[
string
]
bool
,
0
),
HttpClient
:
&
http
.
Client
{},
HttpClient
:
&
http
.
Client
{},
}
}
...
@@ -81,7 +83,8 @@ func (t *TaskHandler) SystemTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
...
@@ -81,7 +83,8 @@ func (t *TaskHandler) SystemTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
func
(
t
*
TaskHandler
)
ComputeTaskHandler
(
taskMsg
*
nodeManagerV1
.
PushTaskMessage
)
{
func
(
t
*
TaskHandler
)
ComputeTaskHandler
(
taskMsg
*
nodeManagerV1
.
PushTaskMessage
)
{
defer
t
.
Wg
.
Done
()
defer
t
.
Wg
.
Done
()
t
.
TaskResp
[
taskMsg
.
TaskUuid
]
=
nil
t
.
TaskRespBody
[
taskMsg
.
TaskUuid
]
=
nil
t
.
TaskRespHeader
[
taskMsg
.
TaskUuid
]
=
nil
t
.
TaskIsSuccess
[
taskMsg
.
TaskUuid
]
=
false
t
.
TaskIsSuccess
[
taskMsg
.
TaskUuid
]
=
false
reader
:=
bytes
.
NewReader
(
taskMsg
.
TaskParam
)
reader
:=
bytes
.
NewReader
(
taskMsg
.
TaskParam
)
taskCmd
:=
&
models
.
TaskCmd
{}
taskCmd
:=
&
models
.
TaskCmd
{}
...
@@ -157,23 +160,20 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
...
@@ -157,23 +160,20 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
return
return
}
}
if
post
.
StatusCode
==
http
.
StatusOK
{
if
post
.
StatusCode
==
http
.
StatusOK
{
readBody
,
err
:=
io
.
ReadAll
(
post
.
Body
)
headers
,
err
:=
json
.
Marshal
(
post
.
Header
)
if
err
!=
nil
{
if
err
!=
nil
{
log
.
Error
(
"
received
error: "
,
err
)
log
.
Error
(
"
JSON marshal header
error: "
,
err
)
return
return
}
}
res
:=
&
models
.
ComputeResult
{}
readBody
,
err
:=
io
.
ReadAll
(
post
.
Body
)
err
=
json
.
Unmarshal
(
readBody
,
res
)
if
err
!=
nil
{
if
err
!=
nil
{
log
.
Error
(
"received error: "
,
err
)
log
.
Error
(
"received error: "
,
err
)
return
return
}
}
if
res
.
Code
==
"200"
{
t
.
TaskRespHeader
[
taskMsg
.
TaskUuid
]
=
headers
log
.
Info
(
string
(
readBody
))
t
.
TaskRespBody
[
taskMsg
.
TaskUuid
]
=
readBody
t
.
TaskResp
[
taskMsg
.
TaskUuid
]
=
readBody
t
.
TaskIsSuccess
[
taskMsg
.
TaskUuid
]
=
true
t
.
TaskIsSuccess
[
taskMsg
.
TaskUuid
]
=
true
}
}
}
log
.
Info
(
"received computeTask--------------------------------"
)
log
.
Info
(
"received computeTask--------------------------------"
)
}
}
...
...
start.sh
View file @
cef4b011
#!/bin/bash
rm
-rf
node node.log
rm
-rf
node node.log
echo
"rm data successful"
go get
go get
echo
"go get successful"
go build
-o
node
go build
-o
node
echo
"build successful"
nohup
./node
>
node.log 2>&1 &
nohup
./node
>
node.log 2>&1 &
echo
"running successful"
\ No newline at end of file
test/task_msg_test.go
View file @
cef4b011
...
@@ -30,9 +30,9 @@ func TestJson(t *testing.T) {
...
@@ -30,9 +30,9 @@ func TestJson(t *testing.T) {
taskCmd
:=
&
TaskCmd
{
taskCmd
:=
&
TaskCmd
{
ImageName
:
"onlydd/llm-server:0119"
,
ImageName
:
"onlydd/llm-server:0119"
,
DockerCmd
:
&
DockerCmd
{
DockerCmd
:
&
DockerCmd
{
ContainerPort
:
"8
0
"
,
ContainerPort
:
"8
888
"
,
},
},
ApiUrl
:
"https://192.168.1.120:
5001/aigic
"
,
ApiUrl
:
"https://192.168.1.120:
8888/llm/test/get/sign
"
,
}
}
marshal
,
err
:=
json
.
Marshal
(
taskCmd
)
marshal
,
err
:=
json
.
Marshal
(
taskCmd
)
...
@@ -51,7 +51,8 @@ func TestTaskHandler_computeTaskHandler(t1 *testing.T) {
...
@@ -51,7 +51,8 @@ func TestTaskHandler_computeTaskHandler(t1 *testing.T) {
DockerOp
*
operate
.
DockerOp
DockerOp
*
operate
.
DockerOp
CmdOp
*
operate
.
Command
CmdOp
*
operate
.
Command
TaskMsg
chan
*
nodeManagerV1
.
PushTaskMessage
TaskMsg
chan
*
nodeManagerV1
.
PushTaskMessage
TaskResp
map
[
string
][]
byte
TaskRespHeader
map
[
string
][]
byte
TaskRespBody
map
[
string
][]
byte
TaskIsSuccess
map
[
string
]
bool
TaskIsSuccess
map
[
string
]
bool
HttpClient
*
http
.
Client
HttpClient
*
http
.
Client
}
}
...
@@ -105,7 +106,8 @@ func TestTaskHandler_computeTaskHandler(t1 *testing.T) {
...
@@ -105,7 +106,8 @@ func TestTaskHandler_computeTaskHandler(t1 *testing.T) {
lruCache
:
lru
.
New
(
100
),
lruCache
:
lru
.
New
(
100
),
DockerOp
:
operate
.
NewDockerOp
(),
DockerOp
:
operate
.
NewDockerOp
(),
TaskMsg
:
make
(
chan
*
nodeManagerV1
.
PushTaskMessage
,
0
),
TaskMsg
:
make
(
chan
*
nodeManagerV1
.
PushTaskMessage
,
0
),
TaskResp
:
make
(
map
[
string
][]
byte
,
0
),
TaskRespHeader
:
make
(
map
[
string
][]
byte
,
0
),
TaskRespBody
:
make
(
map
[
string
][]
byte
,
0
),
TaskIsSuccess
:
make
(
map
[
string
]
bool
,
0
),
TaskIsSuccess
:
make
(
map
[
string
]
bool
,
0
),
HttpClient
:
&
http
.
Client
{},
HttpClient
:
&
http
.
Client
{},
},
},
...
@@ -119,7 +121,8 @@ func TestTaskHandler_computeTaskHandler(t1 *testing.T) {
...
@@ -119,7 +121,8 @@ func TestTaskHandler_computeTaskHandler(t1 *testing.T) {
LruCache
:
tt
.
fields
.
lruCache
,
LruCache
:
tt
.
fields
.
lruCache
,
DockerOp
:
tt
.
fields
.
DockerOp
,
DockerOp
:
tt
.
fields
.
DockerOp
,
TaskMsg
:
tt
.
fields
.
TaskMsg
,
TaskMsg
:
tt
.
fields
.
TaskMsg
,
TaskResp
:
tt
.
fields
.
TaskResp
,
TaskRespHeader
:
tt
.
fields
.
TaskRespHeader
,
TaskRespBody
:
tt
.
fields
.
TaskRespBody
,
TaskIsSuccess
:
tt
.
fields
.
TaskIsSuccess
,
TaskIsSuccess
:
tt
.
fields
.
TaskIsSuccess
,
HttpClient
:
tt
.
fields
.
HttpClient
,
HttpClient
:
tt
.
fields
.
HttpClient
,
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment