34 lines
712 B
Python
34 lines
712 B
Python
from . import sharding, conf
|
|
from .logger import log_app
|
|
from .ipc.client import AppClient
|
|
from .args import args
|
|
|
|
|
|
def appname_from_shard(shardid):
|
|
appname = f"{conf.data['appid']}_{sharding.shard_count:02}_{shardid:02}"
|
|
return appname
|
|
|
|
|
|
def shard_from_appname(appname: str):
|
|
return int(appname.rsplit('_', maxsplit=1)[-1])
|
|
|
|
|
|
if sharding.sharded:
|
|
appname = appname_from_shard(sharding.shard_number)
|
|
else:
|
|
appname = conf.data['appid']
|
|
|
|
log_app.set(appname)
|
|
|
|
|
|
shard_talk = AppClient(
|
|
appname,
|
|
{'host': args.host, 'port': args.port},
|
|
{'host': conf.appipc['server_host'], 'port': int(conf.appipc['server_port'])}
|
|
)
|
|
|
|
|
|
@shard_talk.register_route()
|
|
async def ping():
|
|
return "Pong!"
|