basic rpc server architecture