2014-11-09 1 views
2

Я пытаюсь написать «стандартный» бизнес-сайт. Под «стандартом» я подразумеваю, что этот сайт использует обычные HTML5, CSS и Javascript для интерфейсного, back-end (для обработки файлов) и запускает MySQL для базы данных. Это базовый сайт CRUD: передняя панель просто делает все, что хранится в базе данных; бэкэнд записывает в базу данных все, что вводит пользователь, и выполняет некоторую обработку. Так же, как и большинство сайтов.API-вызовы против прямых вызовов страниц из интерфейса (AJAX)

Итак, я хочу сделать это как структуру MTV (модель-шаблон) в Django. Я хочу спросить, когда пользователь делает вызов на сервер из front-end (т. Е. Шаблон), должен ли он быть через вызов API или прямой вызов определенной страницы через AJAX?

Выполнение через API будет модульным и чистым способом, но, я думаю, относительно медленно (не уверен, хотя).

Что бы правильный способ приближения к этому, имея в виду информацию, которая будет отображаться будет предоставлена ​​API

Благодаря

ответ

2

У меня был подобный вопрос. Прежде всего, я думаю, что это зависит от того, планирует ли ваш бизнес создавать собственные мобильные приложения и т. Д. И будет ли он нужен для получения тех же данных, что и веб-сайт. В этом случае оптимальным будет REST API. В этом случае было бы проще поддерживать единую конечную точку для взаимодействия с вашими данными, чем несколько, поэтому я бы сделал веб-сайт взаимодействием через API. Это пример diagram from tuts.

enter image description here

Я думаю, что вы видите простоту и модульность API, так что в конце ваш вопрос об эффективности и является ли это пустая трата, чтобы ваш сайт сделать запрос HTTP на свой собственный API вместо напрямую взаимодействуя с моделями. Что касается этого момента, я не думаю, что о чем-то беспокоиться (или не должно быть, если ваши вызовы API не огромны и не помешают вашему приложению).

Подход к созданию вашего интерфейса вокруг вашего собственного API, похоже, работает на Twitter (см. "The Tech Behind the New Twitter.com") и TripAdvisor ("TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data") и другие. В конце дня одностраничная загрузка сегодня может занимать от десятков до сотен HTTP-запросов, поэтому еще несколько для реальных данных не должны вызывать проблемы.

+0

Очень хорошее объяснение. – PythonEnthusiast

Смежные вопросы