В чем разница между веб-приложением и клиент-серверным приложением? - PullRequest
8 голосов
/ 03 апреля 2009

Я взял это из другого вопроса У меня был.

При соответствующем использовании для sqlite:

Ситуации, когда SQLite работает хорошо

• Веб-сайты

SQLite обычно отлично работает как ядро базы данных для низкого и среднего трафик веб-сайтов (то есть, 99,9% всех сайтов). Объем веб-трафика, который может обрабатывать SQLite зависит, конечно, от того, насколько сильно Сайт использует свою базу данных. В общем-то говоря, любой сайт, который получает меньше чем 100K хитов / день должен работать нормально с SQLite. 100 000 хитов в день это консервативная оценка, а не жесткая верхняя граница. SQLite был продемонстрировал работу с 10 раз это количество трафика.

Ситуации, когда может появиться другая СУБД Работай лучше

• Клиент / серверные приложения

Если у вас много клиентских программ доступ к общей базе данных через сети, вы должны рассмотреть возможность использования вместо базы данных клиент / сервер SQLite. SQLite будет работать над сетевая файловая система, но из-за задержка, связанная с большинством сетей файловые системы, производительности не будет отличный. Кроме того, логика блокировки файлов много сетевых файловых систем реализация содержит ошибки (на обоих Unix и Windows). Если блокировка файла не работает как надо, может возможно для двух или более клиентов программы для изменения той же части та же база данных в то же время, что приводит к повреждению базы данных. Потому что эта проблема является результатом ошибок в базовой файловой системе реализация, нет ничего SQLite может сделать, чтобы предотвратить это.

Хорошее эмпирическое правило заключается в том, что вы следует избегать использования SQLite в ситуации, когда одна и та же база данных будет доступен одновременно из много компьютеров по сети файловая система.


Мой вопрос:

Я собираюсь показать свое невежество здесь, но в чем разница между этими двумя?

Ответы [ 5 ]

19 голосов
/ 03 апреля 2009

«Веб-приложение» - это приложение, в котором браузер обычно используется в качестве клиента. Веб-приложение является клиент-серверным приложением. Другими словами, вы можете думать о клиент-серверном приложении как о суперклассе, где веб-приложение является дочерним классом.

9 голосов
/ 03 апреля 2009

веб-приложений подразумевают, что браузер является клиентом

Клиент / серверные приложения подразумевают пользовательское клиентское приложение. Подумайте, Outlook подключен к обмену, хотя он может использовать Интернет для подключения, это собственный клиент для сервера обмена.

EDIT:

Более конкретно к опубликованному вами тексту sqlite, они подразумевают, что клиентские приложения не должны напрямую обращаться к вашей базе данных sqllite, а вместо этого должны использовать какой-то интерфейс на стороне сервера (то есть веб-сервис json)

Но это практическое правило, на мой взгляд, применимо ко ВСЕМ механизмам баз данных. Если бы я использовал SQL Server или Oracle, я бы ОПРЕДЕЛЕННО избегал подключения клиентских приложений напрямую к БД, это имеет много потенциальных проблем, первая из которых связана с безопасностью.

7 голосов
/ 03 апреля 2009

Есть несколько отличий:

Веб-приложения предполагают, что клиент является веб-браузером, и что связь между клиентом и сервером не имеет состояния (HTTP). Также предполагается, что клиент «тонкий» и в браузере выполняется очень мало обработки информации.

Клиент-серверные приложения предполагают, что клиент является «толстым» клиентом, и что связь между клиентом и сервером поддерживает состояние (это не обязательно так). Общение может быть практически любым протоколом. Старомодное клиент-серверное или двухуровневое приложение позволяет каждому клиенту напрямую подключаться к базе данных - я бы посоветовал против этого по разным причинам, номер один - безопасность. Возможно, именно это и имел в виду источник, который вы указали, когда говорили, что SQLite не подходит.

Приложение уровня 3+ может по-прежнему иметь связь клиент-сервер с состоянием, но средний уровень будет обрабатывать фактическую связь с базой данных. В этом случае задержка в сети не важна, и SQLite может работать (потому что это больше похоже на веб-приложение).

1 голос
/ 26 мая 2013

Разница b / n Клиент / серверное приложение и сервер веб-приложений

1) Приложения клиент-сервер следуют за двухуровневой архитектурой, а приложения веб-сервера следуют за трехуровневой или более ранней архитектурой.

2) В клиент-серверном приложении мы не будем использовать веб-серверы, но в веб-серверных приложениях будут использоваться те же.

3) Клиент-серверные приложения В основном используются в областях интрасети, но приложения веб-серверов используются в областях Интернета.

4) Проблем с безопасностью гораздо меньше на клиентском сервере, поскольку существует минимальное количество пользователей, но на веб-сервере проблемы безопасности являются максимальными, поскольку конечных пользователей больше.

5) Проблемы производительности не будут приниматься во внимание на клиентском сервере, но будут рассмотрены приложения веб-сервера.

0 голосов
/ 30 января 2014
  1. Веб-приложения запускаются в браузере, клиент-серверные приложения запускаются как .exe.
  2. Веб-приложения запускаются на сервере, клиент-серверные приложения запускаются на стороне клиента.
  3. Веб-приложение - тонкий клиент, клиент-серверное приложение - толстый клиент.
  4. Веб-приложение не нужно устанавливать в клиентской системе, клиент-серверные приложения должны быть установлены в клиентской системе 5. Веб-приложения требуют минимального обслуживания, клиент-серверные приложения требуют высокого обслуживания

http://webvsclientserverbysujan.blogspot.in/2014/01/WebVsDesktoApppbysujan.blogspot.com.html

...