построить систему миркосервиса с использованием Tornado Framework - PullRequest
0 голосов
/ 20 сентября 2019

Попытка построить небольшую систему миркосервиса с использованием фреймворка Tornado.Вот структура:

-users_service
-books_service
-public_api_service

, поэтому users_service и books_service будут подключаться к своей собственной базе данных, такой как users.db и books.db (например: books_service работает на localhost: 6000, а public_api_service работает на localhost: 7000), и public_api будет открыт для пользователей, поэтому, когда пользователи вызывают public api, public_api_service отправляет запрос к users_servcice или books_service и получает их ответ (в формате json), затем форматирует их и отвечает.Мой вопрос заключается в том, как правильно отправить запрос из public_api_service к users_service или books_service?

def get_listings_info(page_num, page_size):
        url_params = {
            # 'user_id': user_id,
            'page_num': page_num,
            'page_size': page_size
        }
        url = url_concat('http://127.0.0.1:6000/books', url_params)
        request = HTTPRequest(url=url, method='GET')
        # http_client = AsyncHTTPClient()
        http_client = HTTPClient()
        result = http_client.fetch(request)
        result = json.loads(result.body)
        # return result.body
        return result

Я устал этот метод, но получил эту ошибку: RuntimeError: Невозможно запустить цикл обработки событий во время выполнения другого цикла.Любая помощь будет оценена.

...