2015-06-23 3 views
0

Я делаю небольшую программу для Java для себя и некоторых друзей, которые мы будем использовать для совместной работы над проектами.Соединения клиентских приложений с MySQL

Программа основана на MySQL для данных, но я не хочу, чтобы каждая из клиентских машин (всего 20) подключалась к базе данных напрямую, потому что она слишком сильно выставляется на стороне сервера.

Какой метод используется в крупных корпорациях, где несколько клиентских машин используют некоторую программу, которая использует данные, хранящиеся в MySQL. Неужели они не все напрямую подключаются к базе данных?

BTW - Позволяет держать это ограничивается Java пожалуйста

ответ

2

Часто решение иметь единый веб-приложение, которое все клиенты Java подключения, и это то, что веб-приложение, которое общается с базой данных. Вы должны предоставить веб-приложению учетные данные и разрешения, необходимые для выполнения операций БД, которые вы хотите.

Часто у вас также есть клиенты, идентифицирующие себя с помощью определенных средств (аутентификация по паролю является обычной). И затем веб-приложение сохраняет журнал аудита (либо в БД, либо в файле), чтобы отслеживать, кто что сделал, в случае возникновения проблем.

+0

Хорошо, это хорошо, небольшое приложение на сервере, с которым клиент может подключиться через SSL-соединение, получить данные и закрыть соединение. Пароли базы данных не хранятся на клиенте, поэтому я счастлив! – user

0

Вы можете справиться с Spring BasicDataSource, посмотрите на more voted answer for this question и here is another example

Также посмотрите на MySQL connection pooling doc

Если вы хотите, каждая машина подключиться к той же Java рукоятью пул Я хотел бы создать два приложения, один что доступ к данным через источник данных с пулом соединений и предоставляет услуги веб-/ отдыха. Второе приложение может использовать эти услуги с 20 или более машин.

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