Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
N
node-bigstream
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
3
Merge Requests
3
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
bs
node-bigstream
Commits
6ef77b5f
Commit
6ef77b5f
authored
May 31, 2021
by
Kamron Aroonrua
💬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
direct idxstore
parent
0329586a
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
73 additions
and
55 deletions
+73
-55
Changelog
Changelog
+3
-1
main.js
storage-service/main.js
+41
-39
service-object.js
storage-service/ws/v1.2/service-object.js
+28
-14
version.json
version.json
+1
-1
No files found.
Changelog
View file @
6ef77b5f
#Changelog
#Changelog
## [1.2.4 Dev] - 2021-05-
07
## [1.2.4 Dev] - 2021-05-
31
### Added
### Added
- STORAGE :: Object Cache
- STORAGE :: Object Cache
### Update
- SS :: Direct Idxstore
## [1.2.3] - 2021-05-05
## [1.2.3] - 2021-05-05
### Update
### Update
- AMQPLib Support Heartbeat Monitoring
- AMQPLib Support Heartbeat Monitoring
...
...
storage-service/main.js
View file @
6ef77b5f
...
@@ -2,13 +2,13 @@ var ctx = require('../context');
...
@@ -2,13 +2,13 @@ var ctx = require('../context');
var
ConnCtx
=
ctx
.
getLib
(
'lib/conn/connection-context'
);
var
ConnCtx
=
ctx
.
getLib
(
'lib/conn/connection-context'
);
var
rpcserver
=
ctx
.
getLib
(
'lib/amqp/rpcserver'
);
var
rpcserver
=
ctx
.
getLib
(
'lib/amqp/rpcserver'
);
var
RPCCaller
=
ctx
.
getLib
(
'lib/amqp/rpccaller'
);
var
RPCCaller
=
ctx
.
getLib
(
'lib/amqp/rpccaller'
);
var
SSServer
=
ctx
.
getLib
(
'lib/axon/rpcserver'
);
var
Db
=
ctx
.
getLib
(
'storage-service/lib/db'
);
var
Db
=
ctx
.
getLib
(
'storage-service/lib/db'
);
var
WorkerPool
=
ctx
.
getLib
(
'storage-service/lib/worker_pool'
);
var
WorkerPool
=
ctx
.
getLib
(
'storage-service/lib/worker_pool'
);
var
BSSCache
=
ctx
.
getLib
(
'storage-service/lib/storage-bsscache'
);
var
BSSCache
=
ctx
.
getLib
(
'storage-service/lib/storage-bsscache'
);
var
StorageIndexstore
=
ctx
.
getLib
(
'storage-service/lib/storage-indexstore'
)
//var SSServer = ctx.getLib('lib/axon/rpcserver');
var
SSCaller
=
ctx
.
getLib
(
'lib/axon/rpccaller'
);
//
var SSCaller = ctx.getLib('lib/axon/rpccaller');
var
Tokenizer
=
ctx
.
getLib
(
'lib/auth/tokenizer'
);
var
Tokenizer
=
ctx
.
getLib
(
'lib/auth/tokenizer'
);
var
ACLValidator
=
ctx
.
getLib
(
'lib/auth/acl-validator'
);
var
ACLValidator
=
ctx
.
getLib
(
'lib/auth/acl-validator'
);
...
@@ -22,8 +22,8 @@ var bodyParser = require('body-parser');
...
@@ -22,8 +22,8 @@ var bodyParser = require('body-parser');
var
EventPub
=
ctx
.
getLib
(
'lib/amqp/event-pub'
);
var
EventPub
=
ctx
.
getLib
(
'lib/amqp/event-pub'
);
//var cfg = ctx.config;
//var cfg = ctx.config;
var
SS_LISTEN
=
ctx
.
getUnixSocketUrl
(
'ss.sock'
);
//
var SS_LISTEN = ctx.getUnixSocketUrl('ss.sock');
var
SS_URL
=
ctx
.
getUnixSocketUrl
(
'ss.sock'
);
//
var SS_URL = ctx.getUnixSocketUrl('ss.sock');
// var SS_LISTEN = ctx.getServiceUrl(19030);
// var SS_LISTEN = ctx.getServiceUrl(19030);
// var SS_URL = ctx.getClientUrl(19030);
// var SS_URL = ctx.getClientUrl(19030);
...
@@ -102,39 +102,39 @@ SS.prototype.amqp_start = function()
...
@@ -102,39 +102,39 @@ SS.prototype.amqp_start = function()
}
}
SS
.
prototype
.
ipc_start
=
function
()
//
SS.prototype.ipc_start = function()
{
//
{
var
self
=
this
;
//
var self = this;
if
(
this
.
ipc_server
){
return
;}
//
if(this.ipc_server){return;}
this
.
ipc_server
=
new
SSServer
({
//
this.ipc_server = new SSServer({
url
:
SS_LISTEN
,
//
url : SS_LISTEN,
name
:
'storage_request'
//
name : 'storage_request'
});
//
});
this
.
ipc_server
.
set_remote_function
(
function
(
req
,
callback
){
//
this.ipc_server.set_remote_function(function(req,callback){
//console.log("IPC Command");
//
//console.log("IPC Command");
self
.
db
.
request
(
req
,
function
(
err
,
res
){
//
self.db.request(req,function(err,res){
if
(
err
){
//
if(err){
console
.
log
(
err
);
//
console.log(err);
}
//
}
callback
(
err
,
res
);
//
callback(err,res);
});
//
});
});
//
});
this
.
ipc_server
.
start
(
function
(
err
){
//
this.ipc_server.start(function(err){
if
(
!
err
){
//
if(!err){
console
.
log
(
'SS:IPC START
\
t
\
t
\
t[OK]'
);
//
console.log('SS:IPC START\t\t\t[OK]');
}
else
{
//
}else{
console
.
log
(
'SS:IPC START
\
t
\
t
\
t[ERR]'
);
//
console.log('SS:IPC START\t\t\t[ERR]');
console
.
log
(
'SS:IPC ERROR Restarting ...'
);
//
console.log('SS:IPC ERROR Restarting ...');
setTimeout
(
function
(){
//
setTimeout(function(){
process
.
exit
(
1
);
//
process.exit(1);
},
5000
);
//
},5000);
}
//
}
});
//
});
}
//
}
SS
.
prototype
.
http_start
=
function
()
SS
.
prototype
.
http_start
=
function
()
{
{
...
@@ -157,6 +157,7 @@ SS.prototype.http_start = function()
...
@@ -157,6 +157,7 @@ SS.prototype.http_start = function()
});
});
this
.
bsscache
=
BSSCache
.
create
()
this
.
bsscache
=
BSSCache
.
create
()
this
.
idxstore
=
new
StorageIndexstore
({
'mem'
:
self
.
mem
});
this
.
acl_validator
=
ACLValidator
.
create
(
auth_cfg
);
this
.
acl_validator
=
ACLValidator
.
create
(
auth_cfg
);
this
.
worker_pool
.
initWorker
();
this
.
worker_pool
.
initWorker
();
...
@@ -164,7 +165,8 @@ SS.prototype.http_start = function()
...
@@ -164,7 +165,8 @@ SS.prototype.http_start = function()
'acl_validator'
:
self
.
acl_validator
,
'acl_validator'
:
self
.
acl_validator
,
'worker_pool'
:
self
.
worker_pool
,
'worker_pool'
:
self
.
worker_pool
,
'storagecaller'
:
self
.
storagecaller
,
'storagecaller'
:
self
.
storagecaller
,
'bsscache'
:
self
.
bsscache
'bsscache'
:
self
.
bsscache
,
'idxstore'
:
self
.
idxstore
}));
}));
var
tokenizer
=
Tokenizer
.
create
(
auth_cfg
);
var
tokenizer
=
Tokenizer
.
create
(
auth_cfg
);
...
...
storage-service/ws/v1.2/service-object.js
View file @
6ef77b5f
...
@@ -58,7 +58,7 @@ router.get('/:id/file',function (req, res) {
...
@@ -58,7 +58,7 @@ router.get('/:id/file',function (req, res) {
});
});
function
oid_parse
(
oid
,
caller
,
cb
)
function
oid_parse
(
oid
,
idxstore
,
cb
)
{
{
var
ret
=
{
'valid'
:
true
}
var
ret
=
{
'valid'
:
true
}
if
(
!
oid
)
if
(
!
oid
)
...
@@ -82,19 +82,12 @@ function oid_parse(oid,caller,cb)
...
@@ -82,19 +82,12 @@ function oid_parse(oid,caller,cb)
if
(
ret
.
key
.
length
<=
0
){
if
(
ret
.
key
.
length
<=
0
){
return
cb
(
null
,{
'valid'
:
false
});
return
cb
(
null
,{
'valid'
:
false
});
}
}
var
callreq
=
{
'object_type'
:
'storage_request'
,
'command'
:
'idxget'
,
'param'
:
{
'storage_name'
:
ret
.
storage_name
,
'key'
:
ret
.
key
}
}
caller
.
call
(
callreq
,
function
(
err
,
resp
){
//direct idxstore
if
(
!
err
&&
resp
.
status
==
'OK'
&&
resp
.
resp
.
found
){
idxstore
.
getIndex
(
ret
.
storage_name
,
ret
.
key
,(
err
,
val
)
=>
{
if
(
!
err
&&
val
){
ret
.
by
=
"obj"
;
ret
.
by
=
"obj"
;
ret
.
obj_id
=
resp
.
resp
.
object_id
;
ret
.
obj_id
=
val
;
ret
.
seq
=
(
new
ObjId
(
ret
.
obj_id
)).
extract
().
seq
;
ret
.
seq
=
(
new
ObjId
(
ret
.
obj_id
)).
extract
().
seq
;
cb
(
null
,
ret
);
cb
(
null
,
ret
);
}
else
{
}
else
{
...
@@ -102,6 +95,26 @@ function oid_parse(oid,caller,cb)
...
@@ -102,6 +95,26 @@ function oid_parse(oid,caller,cb)
}
}
});
});
// var callreq = {
// 'object_type' : 'storage_request',
// 'command' : 'idxget',
// 'param' : {
// 'storage_name' : ret.storage_name,
// 'key' : ret.key
// }
// }
// caller.call(callreq,function(err,resp){
// if(!err && resp.status=='OK' && resp.resp.found){
// ret.by = "obj";
// ret.obj_id = resp.resp.object_id;
// ret.seq = (new ObjId(ret.obj_id)).extract().seq;
// cb(null,ret);
// }else{
// cb(null,{'valid':false});
// }
// });
}
else
if
(
str_addr
.
startsWith
(
'['
)
&&
str_addr
.
endsWith
(
']'
)){
}
else
if
(
str_addr
.
startsWith
(
'['
)
&&
str_addr
.
endsWith
(
']'
)){
ret
.
by
=
"seq"
;
ret
.
by
=
"seq"
;
var
str_num
=
str_addr
.
substr
(
1
,
str_addr
.
length
-
2
);
var
str_num
=
str_addr
.
substr
(
1
,
str_addr
.
length
-
2
);
...
@@ -139,10 +152,11 @@ function get_object(reqHelper,respHelper,prm)
...
@@ -139,10 +152,11 @@ function get_object(reqHelper,respHelper,prm)
var
oid
=
prm
.
oid
;
var
oid
=
prm
.
oid
;
var
opt
=
prm
.
opt
||
{};
var
opt
=
prm
.
opt
||
{};
var
storagecaller
=
reqHelper
.
request
.
context
.
storagecaller
;
//
var storagecaller = reqHelper.request.context.storagecaller;
var
bsscache
=
reqHelper
.
request
.
context
.
bsscache
;
var
bsscache
=
reqHelper
.
request
.
context
.
bsscache
;
var
idxstore
=
reqHelper
.
request
.
context
.
idxstore
;
oid_parse
(
oid
,
storagecaller
,(
err
,
oid_result
)
=>
{
oid_parse
(
oid
,
idxstore
,(
err
,
oid_result
)
=>
{
if
(
!
oid_result
.
valid
){
if
(
!
oid_result
.
valid
){
respHelper
.
response404
();
respHelper
.
response404
();
...
...
version.json
View file @
6ef77b5f
{
{
"version"
:
"1.2.4"
,
"version"
:
"1.2.4"
,
"build"
:
"202105
07
0000"
"build"
:
"202105
31
0000"
}
}
\ No newline at end of file
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