2014-09-09 2 views
3

Может ли кто-нибудь сказать мне основные отличия между приложением CGI и веб-сервисом. Я искал поисковые запросы, но не нашел лучших ответов.разница между cgi и webservice

Я просто знаю, что CGI был найден раньше, чем webservice.

ответ

3

CGI (Common Gateway Interface) - это способ, которым веб-серверы могут запускать внешние приложения (и передавать последнюю информацию в приложение) для обеспечения динамического содержимого.

Веб-сервис также является своего рода динамическим контентом и может быть реализован с использованием приложений CGI (или аналогичных методов). Однако для веб-сервисов контент является машиносчитываемым (XML) и должен следовать строгой спецификации. Таким образом, веб-службы стремятся автоматически использоваться другими программами.

Общая идея CGI по-прежнему используется сегодня, однако она имеет некоторые недостатки (например, для каждого запроса на сервере должно запускаться новое приложение). В настоящее время чаще встречаются модули/плагины, загружаемые в веб-сервер, которые обрабатывают выполнение сценариев (например, mod-php, mod-perl - там парсер загружается один раз и просто должен выполнять запрошенные скрипты).

+0

Спасибо за ответ. , так что я понимаю здесь, в случае CGI у нас есть какое-то приложение или позволяет сказать API, который мы вызываем или выполняем из HTTP-запроса через CGI. Но в случае webservice мы публикуем весь API/Приложение или часть его для клиентов. Итак, мой вопрос - CGI и Webservices полностью взаимозаменяемы. –

+1

№ CGI - это интерфейс, который позволяет веб-серверу выполнять приложения (на основе URL-адреса) вместо того, чтобы просто обслуживать статические файлы. Webservices - это динамические приложения (реализованные приложения CGI - или с использованием другого API веб-сервера в настоящее время), которые, тем не менее, не вводят/выгружают HTML, а XML с определенным синтаксисом для предоставления собственного API. Он работает следующим образом: клиент вызывает веб-сервер и может вызывать приложение CGI и обслуживать его с данными запроса и возвращает результат клиенту. Помимо этого, веб-сервисы лежат в основе (данные веб-службы являются полезной нагрузкой приложения CGI). – MrTux

+0

Еще раз спасибо, сэр. Существуют ли проблемы безопасности с веб-службами? Я чувствую, что CGI более безопасен, поскольку у нас есть приложение, отделенное от интерфейса. но в случае webservice часть приложения подвергается переднему концу. –

0

API CGI vs. Web Server Интерфейс Common Gateway (CGI) был представлен как стандартный протокол для расширения функциональности веб-серверов с дополнительными приложениями. Большинство приложений CGI - это простые исполняемые файлы, которые запускаются каждый раз, когда они запрашиваются. ColdFusion использует более надежную архитектуру. Сервер приложений ColdFusion работает как многопоточный системный сервис и обрабатывает всю сложную обработку. Сервер приложений взаимодействует с веб-сервером либо через очень маленький исполняемый файл CGI, называемый заглушкой (cfml.exe), либо через собственный API веб-сервера.

Как только веб-серверы разработали, каждый поставщик представил и реализовал интерфейс прикладного программирования (API) для своего сервера. Собственные API-интерфейсы веб-серверов предлагают дополнительные функции и значительно повышают производительность. Вместо запуска исполняемого файла CGI серверы, поддерживающие API, напрямую взаимодействуют с сервером приложений ColdFusion через DLL.

В дополнение к внедрению API-интерфейсов серверов многие поставщики серверов создали сопоставление типов документов, так что отдельные расширения документов могут быть связаны с процессом. Это позволяет создавать страницы приложений ColdFusion, которые хранятся непосредственно в корневом каталоге веб-сервера.

ColdFusion поддерживает следующие основные нативные интерфейсы веб-сервера:

  • Netscape API (NSAPI)
  • Internet Server
  • API (ISAPI)
  • Сайт API (WSAPI)
  • Apache API

Данные API и сопоставление типов документов поддерживаются этими серверами:

  • Netscape Enterprise и FastTrack Серверы
  • Microsoft IIS (все версии)
  • WebSite (1.1 и Pro)
  • Apache
  • пункт Список
Смежные вопросы